diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index 82763723a81..114f0a5860c 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -23,7 +23,6 @@
"version" : "1.1",
"author" : "OpenERP SA",
"category": 'Accounting & Finance',
- 'complexity': "easy",
"description": """
Accounting and Financial Management.
====================================
diff --git a/addons/account/account.py b/addons/account/account.py
index 629f01f9f01..e3c253fda5b 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -24,11 +24,12 @@ from datetime import datetime
from dateutil.relativedelta import relativedelta
from operator import itemgetter
-import netsvc
+import logging
import pooler
from osv import fields, osv
import decimal_precision as dp
from tools.translate import _
+_logger = logging.getLogger(__name__)
def check_cycle(self, cr, uid, ids, context=None):
""" climbs the ``self._table.parent_id`` chains for 100 levels or
@@ -212,7 +213,6 @@ class account_account(osv.osv):
_name = "account.account"
_description = "Account"
_parent_store = True
- logger = netsvc.Logger()
def search(self, cr, uid, args, offset=0, limit=None, order=None,
context=None, count=False):
@@ -295,8 +295,7 @@ class account_account(osv.osv):
if aml_query.strip():
wheres.append(aml_query.strip())
filters = " AND ".join(wheres)
- self.logger.notifyChannel('addons.'+self._name, netsvc.LOG_DEBUG,
- 'Filters: %s'%filters)
+ _logger.debug('Filters: %s',(filters))
# IN might not work ideally in case there are too many
# children_and_consolidated, in that case join on a
# values() e.g.:
@@ -312,8 +311,7 @@ class account_account(osv.osv):
" GROUP BY l.account_id")
params = (tuple(children_and_consolidated),) + query_params
cr.execute(request, params)
- self.logger.notifyChannel('addons.'+self._name, netsvc.LOG_DEBUG,
- 'Status: %s'%cr.statusmessage)
+ _logger.debug('Status: %s',(cr.statusmessage))
for res in cr.dictfetchall():
accounts[res['id']] = res
@@ -899,7 +897,7 @@ class account_fiscalyear(osv.osv):
'date_start': fields.date('Start Date', required=True),
'date_stop': fields.date('End Date', required=True),
'period_ids': fields.one2many('account.period', 'fiscalyear_id', 'Periods'),
- 'state': fields.selection([('draft','Open'), ('done','Closed')], 'State', readonly=True),
+ 'state': fields.selection([('draft','Open'), ('done','Closed')], 'Status', readonly=True),
}
_defaults = {
'state': 'draft',
@@ -996,7 +994,7 @@ class account_period(osv.osv):
'date_start': fields.date('Start of Period', required=True, states={'done':[('readonly',True)]}),
'date_stop': fields.date('End of Period', required=True, states={'done':[('readonly',True)]}),
'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year', required=True, states={'done':[('readonly',True)]}, select=True),
- 'state': fields.selection([('draft','Open'), ('done','Closed')], 'State', readonly=True,
+ 'state': fields.selection([('draft','Open'), ('done','Closed')], 'Status', readonly=True,
help='When monthly periods are created. The state is \'Draft\'. At the end of monthly period it is in \'Done\' state.'),
'company_id': fields.related('fiscalyear_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True)
}
@@ -1123,7 +1121,7 @@ class account_journal_period(osv.osv):
'period_id': fields.many2one('account.period', 'Period', required=True, ondelete="cascade"),
'icon': fields.function(_icon_get, string='Icon', type='char', size=32),
'active': fields.boolean('Active', required=True, help="If the active field is set to False, it will allow you to hide the journal period without removing it."),
- 'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'State', required=True, readonly=True,
+ 'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'Status', required=True, readonly=True,
help='When journal period is created. The state is \'Draft\'. If a report is printed it comes to \'Printed\' state. When all transactions are done, it comes in \'Done\' state.'),
'fiscalyear_id': fields.related('period_id', 'fiscalyear_id', string='Fiscal Year', type='many2one', relation='account.fiscalyear'),
'company_id': fields.related('journal_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True, readonly=True)
@@ -1270,7 +1268,7 @@ class account_move(osv.osv):
'ref': fields.char('Reference', size=64),
'period_id': fields.many2one('account.period', 'Period', required=True, states={'posted':[('readonly',True)]}),
'journal_id': fields.many2one('account.journal', 'Journal', required=True, states={'posted':[('readonly',True)]}),
- 'state': fields.selection([('draft','Unposted'), ('posted','Posted')], 'State', required=True, readonly=True,
+ 'state': fields.selection([('draft','Unposted'), ('posted','Posted')], 'Status', required=True, readonly=True,
help='All manually created new journal entries are usually in the state \'Unposted\', but you can set the option to skip that state on the related journal. In that case, they will be behave as journal entries automatically created by the system on document validation (invoices, bank statements...) and will be created in \'Posted\' state.'),
'line_id': fields.one2many('account.move.line', 'move_id', 'Entries', states={'posted':[('readonly',True)]}),
'to_check': fields.boolean('To Review', help='Check this box if you are unsure of that journal entry and if you want to note it as \'to be reviewed\' by an accounting expert.'),
@@ -2101,9 +2099,7 @@ class account_tax(osv.osv):
}
def compute(self, cr, uid, taxes, price_unit, quantity, product=None, partner=None):
- logger = netsvc.Logger()
- logger.notifyChannel("warning", netsvc.LOG_WARNING,
- "Deprecated, use compute_all(...)['taxes'] instead of compute(...) to manage prices with tax included")
+ _logger.warning("Deprecated, use compute_all(...)['taxes'] instead of compute(...) to manage prices with tax included")
return self._compute(cr, uid, taxes, price_unit, quantity, product, partner)
def _compute(self, cr, uid, taxes, price_unit, quantity, product=None, partner=None):
@@ -2356,7 +2352,7 @@ class account_subscription(osv.osv):
'period_total': fields.integer('Number of Periods', required=True),
'period_nbr': fields.integer('Period', required=True),
'period_type': fields.selection([('day','days'),('month','month'),('year','year')], 'Period Type', required=True),
- 'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'State', required=True, readonly=True),
+ 'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'Status', required=True, readonly=True),
'lines_id': fields.one2many('account.subscription.line', 'subscription_id', 'Subscription Lines')
}
_defaults = {
@@ -2975,10 +2971,10 @@ class wizard_multi_charts_accounts(osv.osv_memory):
_columns = {
'company_id':fields.many2one('res.company', 'Company', required=True),
+ 'only_one_chart_template': fields.boolean('Only One Chart Template Available'),
'chart_template_id': fields.many2one('account.chart.template', 'Chart Template', required=True),
'bank_accounts_id': fields.one2many('account.bank.accounts.wizard', 'bank_account_id', 'Cash and Banks', required=True),
'code_digits':fields.integer('# of Digits', required=True, help="No. of Digits to use for account code"),
- 'seq_journal':fields.boolean('Separated Journal Sequences', help="Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."),
"sale_tax": fields.many2one("account.tax.template", "Default Sale Tax"),
"purchase_tax": fields.many2one("account.tax.template", "Default Purchase Tax"),
'sale_tax_rate': fields.float('Sales Tax(%)'),
@@ -3015,13 +3011,11 @@ class wizard_multi_charts_accounts(osv.osv_memory):
res.update({'bank_accounts_id': [{'acc_name': _('Cash'), 'account_type': 'cash'},{'acc_name': _('Bank'), 'account_type': 'bank'}]})
if 'company_id' in fields:
res.update({'company_id': self.pool.get('res.users').browse(cr, uid, [uid], context=context)[0].company_id.id})
- if 'seq_journal' in fields:
- res.update({'seq_journal': True})
ids = self.pool.get('account.chart.template').search(cr, uid, [('visible', '=', True)], context=context)
if ids:
if 'chart_template_id' in fields:
- res.update({'chart_template_id': ids[0]})
+ res.update({'only_one_chart_template': len(ids) == 1, 'chart_template_id': ids[0]})
if 'sale_tax' in fields:
sale_tax_ids = tax_templ_obj.search(cr, uid, [("chart_template_id"
, "=", ids[0]), ('type_tax_use', 'in', ('sale','all'))], order="sequence")
@@ -3037,6 +3031,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
return res
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
+ if context is None:context = {}
res = super(wizard_multi_charts_accounts, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
cmp_select = []
acc_template_obj = self.pool.get('account.chart.template')
diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py
index 6b189ed2920..cd0d9ece29d 100644
--- a/addons/account/account_bank_statement.py
+++ b/addons/account/account_bank_statement.py
@@ -95,6 +95,7 @@ class account_bank_statement(osv.osv):
_order = "date desc, id desc"
_name = "account.bank.statement"
_description = "Bank Statement"
+ _inherit = ['mail.thread']
_columns = {
'name': fields.char('Name', size=64, required=True, states={'draft': [('readonly', False)]}, readonly=True, help='if you give the Name other then /, its created Accounting Entries Move will be with same name as statement name. This allows the statement entries to have the same references than the statement itself'), # readonly for account_cash_statement
'date': fields.date('Creation Date', required=True, states={'confirm': [('readonly', True)]}, select=True),
@@ -121,7 +122,7 @@ class account_bank_statement(osv.osv):
'state': fields.selection([('draft', 'New'),
('open','Open'), # used by cash statements
('confirm', 'Closed')],
- 'State', required=True, readonly="1",
+ 'Status', required=True, readonly="1",
help='When new statement is created the state will be \'Draft\'.\n'
'And after getting confirmation from the bank it will be in \'Confirmed\' state.'),
'currency': fields.function(_currency, string='Currency',
@@ -332,7 +333,7 @@ class account_bank_statement(osv.osv):
'name': st_number,
'balance_end_real': st.balance_end
}, context=context)
- self.log(cr, uid, st.id, _('Statement %s is confirmed, journal items are created.') % (st_number,))
+ self.message_append_note(cr, uid, [st.id], body=_('Statement %s is confirmed, journal items are created.') % (st_number,), context=context)
return self.write(cr, uid, ids, {'state':'confirm'}, context=context)
def button_cancel(self, cr, uid, ids, context=None):
diff --git a/addons/account/account_installer.xml b/addons/account/account_installer.xml
index 8c2865ea9b9..8e2526c3f97 100644
--- a/addons/account/account_installer.xml
+++ b/addons/account/account_installer.xml
@@ -6,42 +6,32 @@
form
-
-
-
- Configure Your Chart of Accounts
-
-
- The default Chart of Accounts is matching your country selection. If no certified Chart of Accounts exists for your specified country, a generic one can be installed and will be selected by default.
-
-
- Configure
-
-
- 23
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
-
+
+
+
+
+
+ -
+
+
+
+
+
- Install your Chart of Accounts
+ Configure your Chart of Accountsir.actions.act_windowaccount.installer
diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py
index 965fda9c804..c6011979f8d 100644
--- a/addons/account/account_invoice.py
+++ b/addons/account/account_invoice.py
@@ -201,17 +201,18 @@ class account_invoice(osv.osv):
'state': fields.selection([
('draft','Draft'),
- ('cancel','Cancelled'),
('proforma','Pro-forma'),
('proforma2','Pro-forma'),
('open','Open'),
- ('paid','Paid')
+ ('paid','Paid'),
+ ('cancel','Cancelled'),
],'State', select=True, readonly=True,
help=' * The \'Draft\' state is used when a user is encoding a new and unconfirmed Invoice. \
\n* The \'Pro-forma\' when invoice is in Pro-forma state,invoice does not have an invoice number. \
\n* The \'Open\' state is used when user create invoice,a invoice number is generated.Its in open state till user does not pay invoice. \
\n* The \'Paid\' state is set automatically when the invoice is paid. Its related journal entries may or may not be reconciled. \
\n* The \'Cancelled\' state is used when user cancel invoice.'),
+ 'sent': fields.boolean('Sent', readonly=True, help="It indicates that the invoice has been sent."),
'date_invoice': fields.date('Invoice Date', readonly=True, states={'draft':[('readonly',False)]}, select=True, help="Keep empty to use the current date"),
'date_due': fields.date('Due Date', states={'paid':[('readonly',True)], 'open':[('readonly',True)], 'close':[('readonly',True)]}, select=True,
help="If you use payment terms, the due date will be computed automatically at the generation "\
@@ -273,7 +274,7 @@ class account_invoice(osv.osv):
help="Remaining amount due."),
'payment_ids': fields.function(_compute_lines, relation='account.move.line', type="many2many", string='Payments'),
'move_name': fields.char('Journal Entry', size=64, readonly=True, states={'draft':[('readonly',False)]}),
- 'user_id': fields.many2one('res.users', 'Salesman', readonly=True, states={'draft':[('readonly',False)]}),
+ 'user_id': fields.many2one('res.users', 'Salesperson', readonly=True, states={'draft':[('readonly',False)]}),
'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position', readonly=True, states={'draft':[('readonly',False)]})
}
_defaults = {
@@ -286,6 +287,7 @@ class account_invoice(osv.osv):
'check_total': 0.0,
'internal_number': False,
'user_id': lambda s, cr, u, c: u,
+ 'sent': False,
}
_sql_constraints = [
('number_uniq', 'unique(number, company_id, journal_id, type)', 'Invoice Number must be unique per Company!'),
@@ -366,6 +368,47 @@ class account_invoice(osv.osv):
else:
raise orm.except_orm(_('Unknown Error'), str(e))
+ def invoice_print(self, cr, uid, ids, context=None):
+ '''
+ This function prints the invoice and mark it as sent, so that we can see more easily the next step of the workflow
+ '''
+ assert len(ids) == 1, 'This option should only be used for a single id at a time'
+ self.write(cr, uid, ids, {'sent': True}, context=context)
+ datas = {
+ 'ids': ids,
+ 'model': 'account.invoice',
+ 'form': self.read(cr, uid, ids[0], context=context)
+ }
+ return {
+ 'type': 'ir.actions.report.xml',
+ 'report_name': 'account.invoice',
+ 'datas': datas,
+ 'nodestroy' : True
+ }
+
+ def action_invoice_sent(self, cr, uid, ids, context=None):
+ '''
+ This function opens a window to compose an email, with the edi invoice template message loaded by default
+ '''
+ mod_obj = self.pool.get('ir.model.data')
+ template = mod_obj.get_object_reference(cr, uid, 'account', 'email_template_edi_invoice')
+ template_id = template and template[1] or False
+ res = mod_obj.get_object_reference(cr, uid, 'mail', 'email_compose_message_wizard_form')
+ res_id = res and res[1] or False
+ ctx = dict(context, active_model='account.invoice', active_id=ids[0])
+ ctx.update({'mail.compose.template_id': template_id})
+ return {
+ 'view_type': 'form',
+ 'view_mode': 'form',
+ 'res_model': 'mail.compose.message',
+ 'views': [(res_id, 'form')],
+ 'view_id': res_id,
+ 'type': 'ir.actions.act_window',
+ 'target': 'new',
+ 'context': ctx,
+ 'nodestroy': True,
+ }
+
def confirm_paid(self, cr, uid, ids, context=None):
if context is None:
context = {}
@@ -604,6 +647,7 @@ class account_invoice(osv.osv):
'move_name':False,
'internal_number': False,
'period_id': False,
+ 'sent': False,
})
if 'date_invoice' not in default:
default.update({
@@ -938,7 +982,6 @@ class account_invoice(osv.osv):
def invoice_validate(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state':'open'}, context=context)
- self.invoice_validate_send_note(cr, uid, ids, context=context)
return True
def line_get_convert(self, cr, uid, x, part, date, context=None):
@@ -1002,7 +1045,7 @@ class account_invoice(osv.osv):
if obj_inv.type in ('out_invoice', 'out_refund'):
ctx = self.get_log_context(cr, uid, context=ctx)
message = _("Invoice '%s' is validated.") % name
- self.log(cr, uid, inv_id, message, context=ctx)
+ self.message_append_note(cr, uid, [inv_id], body=message, context=context)
return True
def action_cancel(self, cr, uid, ids, *args):
@@ -1232,7 +1275,7 @@ class account_invoice(osv.osv):
# TODO: use currency's formatting function
msg = _("Invoice '%s' is paid partially: %s%s of %s%s (%s%s remaining)") % \
(name, pay_amount, code, invoice.amount_total, code, total, code)
- self.log(cr, uid, inv_id, msg)
+ self.message_append_note(cr, uid, [inv_id], body=msg, context=context)
self.pool.get('account.move.line').reconcile_partial(cr, uid, line_ids, 'manual', context)
# Update the stored value (fields.function), so we write to trigger recompute
@@ -1256,10 +1299,6 @@ class account_invoice(osv.osv):
for obj in self.browse(cr, uid, ids, context=context):
self.message_append_note(cr, uid, [obj.id],body=_("%s created.") % (self._get_document_type(obj.type)), context=context)
- def invoice_validate_send_note(self, cr, uid, ids, context=None):
- for obj in self.browse(cr, uid, ids, context=context):
- self.message_append_note(cr, uid, [obj.id], body=_("%s validated.") % (self._get_document_type(obj.type)), context=context)
-
def confirm_paid_send_note(self, cr, uid, ids, context=None):
for obj in self.browse(cr, uid, ids, context=context):
self.message_append_note(cr, uid, [obj.id], body=_("%s paid.") % (self._get_document_type(obj.type)), context=context)
@@ -1307,7 +1346,7 @@ class account_invoice_line(osv.osv):
_description = "Invoice Line"
_columns = {
'name': fields.char('Description', size=256, required=True),
- 'origin': fields.char('Origin', size=256, help="Reference of the document that produced this invoice."),
+ 'origin': fields.char('Source', size=256, help="Reference of the document that produced this invoice."),
'invoice_id': fields.many2one('account.invoice', 'Invoice Reference', ondelete='cascade', select=True),
'uos_id': fields.many2one('product.uom', 'Unit of Measure', ondelete='set null'),
'product_id': fields.many2one('product.product', 'Product', ondelete='set null'),
@@ -1669,4 +1708,14 @@ class res_partner(osv.osv):
res_partner()
+class mail_message(osv.osv):
+ _name = 'mail.message'
+ _inherit = 'mail.message'
+
+ def _postprocess_sent_message(self, cr, uid, message, context=None):
+ if message.model == 'account.invoice':
+ self.pool.get('account.invoice').write(cr, uid, [message.res_id], {'sent':True}, context=context)
+ return super(mail_message, self)._postprocess_sent_message(cr, uid, message=message, context=context)
+
+mail_message()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml
index 1306f75a717..7121094641c 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -1,9 +1,8 @@
-
+
+
account.invoice.calendaraccount.invoice
@@ -37,9 +36,9 @@
-
+
-
+
@@ -50,23 +49,25 @@
account.invoice.lineform
-
@@ -92,20 +93,22 @@
account.invoice.taxform
-
@@ -363,23 +417,21 @@
search
-
+
+
+
-
+
+
-
-
-
-
-
-
+
@@ -389,7 +441,7 @@
-
+
@@ -442,7 +494,12 @@
[('type','=','out_invoice')]{'default_type':'out_invoice', 'type':'out_invoice', 'journal_type': 'sale'}
- With Customer Invoices you can create and manage sales invoices issued to your customers. OpenERP can also generate draft invoices automatically from sales orders or deliveries. You should only confirm them before sending them to your customers.
+
+ Click here to create a new Invoice.
+ <p>
+ An invoice can be generated automatically from a sale order or a delivery order.
+ The invoice can be send by email.
+
@@ -470,7 +527,12 @@
[('type','=','in_invoice')]{'default_type': 'in_invoice', 'type': 'in_invoice', 'journal_type': 'purchase'}
- With Supplier Invoices you can enter and manage invoices issued by your suppliers. OpenERP can also generate draft invoices automatically from purchase orders or receipts. This way, you can control the invoice from your supplier according to what you purchased or received.
+
+ Click here to create Supplier invoice.
+ <p>
+ You can control the invoice from your supplier according to what you purchased or received.
+ OpenERP can also generate draft invoices automatically from purchase orders or receipts.
+
@@ -483,7 +545,12 @@
[('type','=','out_refund')]{'default_type':'out_refund', 'type':'out_refund', 'journal_type': 'sale_refund'}
- With Customer Refunds you can manage the credit notes for your customers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form.
+
+ Click here to create a new customer refund.
+ <p>
+ A refund is a document that credits an invoice completely or partially.
+ You can also generate refunds and reconcile them directly from the invoice form.
+
@@ -509,7 +576,12 @@
[('type','=','in_refund')]{'default_type': 'in_refund', 'type': 'in_refund', 'journal_type': 'purchase_refund'}
- With Supplier Refunds you can manage the credit notes you receive from your suppliers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form.
+
+ Click here to create a new supplier refund.
+ <p>
+ Track refunds you receive from your suppliers.
+ You can also generate refunds and reconcile them directly from the invoice form.
+
diff --git a/addons/account/account_menuitem.xml b/addons/account/account_menuitem.xml
index 3713606c490..c2275c0e461 100644
--- a/addons/account/account_menuitem.xml
+++ b/addons/account/account_menuitem.xml
@@ -2,7 +2,7 @@
-
@@ -41,7 +41,6 @@
sequence="25"/>
-
+ />
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 64eb718bd47..c104a25c376 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -11,32 +11,34 @@
account.fiscalyearform
-
@@ -2461,57 +2368,59 @@
- Generate Chart of Accounts from a Chart Template
+ Set Your Accounting Optionswizard.multi.charts.accountsform
-
-
- Accounting Application Configuration
+
+ Accounting Application Configuration
-
- Generate Your Chart of Accounts from a Chart Template
-
-
- This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template
- 150
-
-
- 15
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ %%
+
+
+
+
+ %%
+
+
+
+
+
+
+
+
+
+
+
+
+
-
- Generate Chart of Accounts from a Chart Template
+ Set Your Accounting Optionsir.actions.act_windowwizard.multi.charts.accounts
@@ -2566,7 +2475,7 @@ action = pool.get('res.config').next(cr, uid, [], context)
search
-
+
@@ -2576,26 +2485,27 @@ action = pool.get('res.config').next(cr, uid, [], context)
account.fiscal.position.templateform
-
[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]
- [[ display_address(o.partner_id,'invoice') ]]
+ [[ display_address(o.partner_id) ]]
@@ -191,7 +191,7 @@
Invoice Date
- Origin
+ Source
Customer Code
diff --git a/addons/account/report/account_report.py b/addons/account/report/account_report.py
index 9f81f295d74..59745355c5e 100644
--- a/addons/account/report/account_report.py
+++ b/addons/account/report/account_report.py
@@ -91,6 +91,7 @@ class report_aged_receivable(osv.osv):
def fields_view_get(self, cr, user, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
""" To call the init() method timely
"""
+ if context is None:context = {}
if not self.called:
self.init(cr, user)
self.called = True # To make sure that init doesn't get called multiple times
@@ -175,7 +176,7 @@ class report_invoice_created(osv.osv):
('open','Open'),
('paid','Done'),
('cancel','Cancelled')
- ],'State', readonly=True),
+ ],'Status', readonly=True),
'origin': fields.char('Source Document', size=64, readonly=True, help="Reference of the document that generated this invoice report."),
'create_date': fields.datetime('Create Date', readonly=True)
}
diff --git a/addons/account/report/account_report_view.xml b/addons/account/report/account_report_view.xml
index fe2b8a3940a..c9c667ae70e 100644
--- a/addons/account/report/account_report_view.xml
+++ b/addons/account/report/account_report_view.xml
@@ -34,9 +34,11 @@
report.account.receivableform
-
-
-
+
+
+
+
+
@@ -68,8 +70,8 @@
tree
-
-
+
+
@@ -89,8 +91,8 @@
tree
-
-
+
+
@@ -98,30 +100,30 @@
-
+
-
+
-
- Invoices Created Within Past 15 Days
- report.invoice.created
- form
- tree,form
-
-
+
+ Invoices Created Within Past 15 Days
+ report.invoice.created
+ form
+ tree,form
+
+
-
+ report.account.sales.treereport.account.salestree
-
-
+
+
@@ -149,11 +151,8 @@
search
-
-
-
-
-
+
+
@@ -166,7 +165,7 @@
-
+ report.account_type.sales.treereport.account_type.salestree
@@ -190,9 +189,9 @@
form
-
-
-
+
+
+
@@ -209,17 +208,14 @@
-
+ report.account_type.sales.searchreport.account_type.salessearch
-
-
-
-
-
+
+
diff --git a/addons/account/report/account_treasury_report_view.xml b/addons/account/report/account_treasury_report_view.xml
index eceb1e5c760..9e07c196f3c 100644
--- a/addons/account/report/account_treasury_report_view.xml
+++ b/addons/account/report/account_treasury_report_view.xml
@@ -36,12 +36,12 @@
search
-
+
-
+
@@ -56,7 +56,7 @@
From this view, have an analysis of your treasury. It sums the balance of every accounting entries made on liquidity accounts per period.
diff --git a/addons/account/res_config.py b/addons/account/res_config.py
index 583b769d315..8ca35426427 100644
--- a/addons/account/res_config.py
+++ b/addons/account/res_config.py
@@ -37,19 +37,18 @@ class account_config_settings(osv.osv_memory):
'company_id': fields.many2one('res.company', 'Company', required=True),
'has_default_company': fields.boolean('Has default company', readonly=True),
'expects_chart_of_accounts': fields.related('company_id', 'expects_chart_of_accounts', type='boolean',
- string='Chart of Accounts for this Company',
+ string='This Company Has its Own Chart of Accounts',
help="""Check this box if this company is a legal entity."""),
'currency_id': fields.related('company_id', 'currency_id', type='many2one', relation='res.currency', required=True,
string='Default Company Currency', help="Main currency of the company."),
'paypal_account': fields.related('company_id', 'paypal_account', type='char', size=128,
- string='Paypal Account', help="Paypal account (email) for receiving online payments (credit card, etc.)"),
+ string='Paypal Account', help="Paypal account (email) for receiving online payments (credit card, etc.) If you set a paypal account, the customer will be able to pay your invoices or quotations with a button \"Pay with Paypal\" in automated emails or through the OpenERP portal."),
'company_footer': fields.related('company_id', 'rml_footer2', type='char', size=250, readonly=True,
- string='Bank Accounts on Reports', help="Bank accounts as printed on footer of reports."),
+ string='Bank Accounts on Reports', help="Bank accounts as printed in the footer of each customer document. This is for information purpose only, you should configure these bank accounts through the above button \"Configure Bank Accounts\"."),
'has_chart_of_accounts': fields.boolean('Company has a chart of accounts'),
'chart_template_id': fields.many2one('account.chart.template', 'Chart Template', domain="[('visible','=', True)]"),
'code_digits': fields.integer('# of Digits', help="No. of Digits to use for account code"),
- 'seq_journal': fields.boolean('Separated Journal Sequences', help="Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."),
'sale_tax': fields.many2one("account.tax.template", "Default Sale Tax"),
'purchase_tax': fields.many2one("account.tax.template", "Default Purchase Tax"),
'sale_tax_rate': fields.float('Sales Tax (%)'),
@@ -78,12 +77,12 @@ class account_config_settings(osv.osv_memory):
help="""This allows you to check writing and printing.
This installs the module account_check_writing."""),
'module_account_accountant': fields.boolean('Accountant Features',
- help="""If you do not check this box, you will be able to do Invoicing & Payments, but not accounting (Journal Items, Chart of Accounts, ...)."""),
+ help="""If you do not check this box, you will be able to do invoicing & payments, but not accounting (Journal Items, Chart of Accounts, ...)"""),
'module_account_asset': fields.boolean('Assets Management',
help="""This allows you to manage the assets owned by a company or a person.
It keeps track of the depreciation occurred on those assets, and creates account move for those depreciation lines.
- This installs the module account_asset. If you do not check this box, you will be able to do invoicing & payments,
- but not accounting (Journal Items, Chart of Accounts, ...) """),
+ This installs the module account_asset. If you do not check this box, you will be able to do invoicing & payments,
+ but not accounting (Journal Items, Chart of Accounts, ...)"""),
'module_account_budget': fields.boolean('Budget Management',
help="""This allows accountants to manage analytic and crossovered budgets.
Once the master budgets and the budgets are defined,
@@ -97,24 +96,18 @@ class account_config_settings(osv.osv_memory):
'module_account_voucher': fields.boolean('Manage Customer Payments',
help="""This includes all the basic requirements of voucher entries for bank, cash, sales, purchase, expense, contra, etc.
This installs the module account_voucher."""),
- 'module_account_followup': fields.boolean('Manage Customer Payment Follow-Ups',
+ 'module_account_followup': fields.boolean('Manage Customer Payment Follow-ups',
help="""This allows to automate letters for unpaid invoices, with multi-level recalls.
This installs the module account_followup."""),
- 'module_account_invoice_layout': fields.boolean('Allow Notes and Subtotals',
- help="""This provides some features to improve the layout of invoices.
- It gives you the possibility to:
- * order all the lines of an invoice
- * add titles, comment lines, sub total lines
- * draw horizontal lines and put page breaks.
- This installs the module account_invoice_layout."""),
-
'group_proforma_invoices': fields.boolean('Allow Pro-forma Invoices',
implied_group='account.group_proforma_invoices',
help="Allows you to put invoices in pro-forma state."),
- 'default_sale_tax': fields.many2one('account.tax', 'Default Sale Tax'),
- 'default_purchase_tax': fields.many2one('account.tax', 'Default Purchase Tax'),
- 'decimal_precision': fields.integer('Decimal Precision',
- help="""Set the decimal precision for rounding results in accounting."""),
+ 'default_sale_tax': fields.many2one('account.tax', 'Default Sale Tax',
+ help="This sale tax will be assigned by default on new products."),
+ 'default_purchase_tax': fields.many2one('account.tax', 'Default Purchase Tax',
+ help="This purchase tax will be assigned by default on new products."),
+ 'decimal_precision': fields.integer('Decimal Precision on Journal Entries',
+ help="""As an example, a decimal precision of 2 will allow journal entries like: 9.99 EUR, whereas a decimal precision of 4 will allow journal entries like: 0.0231 EUR."""),
}
def _default_company(self, cr, uid, context=None):
@@ -128,7 +121,6 @@ class account_config_settings(osv.osv_memory):
_defaults = {
'company_id': _default_company,
'has_default_company': _default_has_default_company,
- 'seq_journal': True,
'date_start': lambda *a: time.strftime('%Y-01-01'),
'date_stop': lambda *a: time.strftime('%Y-12-31'),
'period': 'month',
@@ -237,7 +229,6 @@ class account_config_settings(osv.osv_memory):
'company_id': config.company_id.id,
'chart_template_id': config.chart_template_id.id,
'code_digits': config.code_digits or 6,
- 'seq_journal': config.seq_journal,
'sale_tax': config.sale_tax.id,
'purchase_tax': config.purchase_tax.id,
'sale_tax_rate': config.sale_tax_rate,
diff --git a/addons/account/res_config_view.xml b/addons/account/res_config_view.xml
index 1cf1e40f02b..d7eda0a2692 100644
--- a/addons/account/res_config_view.xml
+++ b/addons/account/res_config_view.xml
@@ -15,109 +15,125 @@
account.config.settingsform
-
diff --git a/addons/account/wizard/account_period_close.py b/addons/account/wizard/account_period_close.py
index fecf43f07ab..b2c61d9197a 100644
--- a/addons/account/wizard/account_period_close.py
+++ b/addons/account/wizard/account_period_close.py
@@ -53,11 +53,8 @@ class account_period_close(osv.osv_memory):
cr.execute('update account_journal_period set state=%s where period_id=%s', (mode, id))
cr.execute('update account_period set state=%s where id=%s', (mode, id))
- # Log message for Period
- for period_id, name in period_pool.name_get(cr, uid, [id]):
- period_pool.log(cr, uid, period_id, "Period '%s' is closed, no more modification allowed for this period." % (name))
return {'type': 'ir.actions.act_window_close'}
account_period_close()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/wizard/account_period_close_view.xml b/addons/account/wizard/account_period_close_view.xml
index 49f6c9cdbb1..c285db512cf 100644
--- a/addons/account/wizard/account_period_close_view.xml
+++ b/addons/account/wizard/account_period_close_view.xml
@@ -7,17 +7,15 @@
account.period.closeform
-
+
@@ -106,10 +108,20 @@
-
+
+
+ Template of Contract
+ ir.actions.act_window
+ account.analytic.account
+ form
+ tree,form
+ [('type','=','template')]
+ {'search_default_type':'template','default_type' : 'template'}
+
+
diff --git a/addons/account_analytic_analysis/i18n/ja.po b/addons/account_analytic_analysis/i18n/ja.po
index f0fe84ed1d0..8f649e0e15e 100644
--- a/addons/account_analytic_analysis/i18n/ja.po
+++ b/addons/account_analytic_analysis/i18n/ja.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-04-18 05:50+0000\n"
+"PO-Revision-Date: 2012-06-12 00:29+0000\n"
"Last-Translator: Akira Hiyama \n"
"Language-Team: Japanese \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-04-19 04:38+0000\n"
-"X-Generator: Launchpad (build 15108)\n"
+"X-Launchpad-Export-Date: 2012-06-13 04:56+0000\n"
+"X-Generator: Launchpad (build 15389)\n"
#. module: account_analytic_analysis
#: field:account.analytic.account,revenue_per_hour:0
@@ -159,7 +159,7 @@ msgstr "残り時間"
#: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue
#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue
msgid "Contracts to Renew"
-msgstr "更新する契約"
+msgstr "更新契約"
#. module: account_analytic_analysis
#: field:account.analytic.account,theorical_margin:0
@@ -182,7 +182,7 @@ msgstr "全てのそれらのコストが価格表によって提供される通
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Pending"
-msgstr "保留中"
+msgstr "保留"
#. module: account_analytic_analysis
#: field:account.analytic.account,ca_to_invoice:0
@@ -253,7 +253,7 @@ msgstr "月別時間数合計"
#. module: account_analytic_analysis
#: constraint:account.analytic.account:0
msgid "Error! You can not create recursive analytic accounts."
-msgstr "エラー。反復した分析アカウントを作ることはできません"
+msgstr "エラー。再帰的な分析アカウントを作ることはできません。"
#. module: account_analytic_analysis
#: field:account.analytic.account,remaining_ca:0
diff --git a/addons/account_analytic_analysis/i18n/pt.po b/addons/account_analytic_analysis/i18n/pt.po
index afdf9c25f17..20c8677e066 100644
--- a/addons/account_analytic_analysis/i18n/pt.po
+++ b/addons/account_analytic_analysis/i18n/pt.po
@@ -7,25 +7,25 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2010-12-09 09:33+0000\n"
-"Last-Translator: OpenERP Administrators \n"
+"PO-Revision-Date: 2012-05-31 15:05+0000\n"
+"Last-Translator: Marcelo Almeida \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:32+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
+"X-Launchpad-Export-Date: 2012-06-01 05:33+0000\n"
+"X-Generator: Launchpad (build 15342)\n"
#. module: account_analytic_analysis
#: field:account.analytic.account,revenue_per_hour:0
msgid "Revenue per Time (real)"
-msgstr ""
+msgstr "Receita por hora (real)"
#. module: account_analytic_analysis
#: help:account.analytic.account,remaining_ca:0
msgid "Computed using the formula: Max Invoice Price - Invoiced Amount."
msgstr ""
-"Processado com a fórmula: Preço Máximo da Factura - Montante Facturado."
+"Calculado utilizando a fórmula: Valor Máximo da Fatura - Valor da Fatura"
#. module: account_analytic_analysis
#: help:account.analytic.account,last_worked_date:0
@@ -38,11 +38,13 @@ msgid ""
"The contracts to be renewed because the deadline is passed or the working "
"hours are higher than the allocated hours"
msgstr ""
+"Os contratos a serem renovados, porque o prazo é passado ou as horas de "
+"trabalho são maiores do que as horas atribuídas"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Pending contracts to renew with your customer"
-msgstr ""
+msgstr "Contratos pendentes de renovação com o seu cliente"
#. module: account_analytic_analysis
#: help:account.analytic.account,hours_qtt_non_invoiced:0
@@ -50,31 +52,33 @@ msgid ""
"Number of time (hours/days) (from journal of type 'general') that can be "
"invoiced if you invoice based on analytic account."
msgstr ""
+"Número de tempo (horas ou dias) (de Diário do tipo 'geral') que podem ser "
+"faturados, se fatura com base na conta analítica"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Analytic Accounts with a past deadline in one month."
-msgstr ""
+msgstr "Contas Analíticas com um prazo limite ultrapassando um mês."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Group By..."
-msgstr ""
+msgstr "Grupo por..."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "End Date"
-msgstr ""
+msgstr "Data final"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Create Invoice"
-msgstr ""
+msgstr "Criar Fatura"
#. module: account_analytic_analysis
#: field:account.analytic.account,last_invoice_date:0
msgid "Last Invoice Date"
-msgstr "Data da última factura"
+msgstr "Data da última fatura"
#. module: account_analytic_analysis
#: help:account.analytic.account,theorical_margin:0
@@ -87,16 +91,18 @@ msgid ""
"Number of time you spent on the analytic account (from timesheet). It "
"computes quantities on all journal of type 'general'."
msgstr ""
+"Número de tempo que gastou na conta analítica (da folha de horas). Ele "
+"calcula quantidades em todos os Diários do tipo 'geral'."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Contracts in progress"
-msgstr ""
+msgstr "Contractos em progresso"
#. module: account_analytic_analysis
#: field:account.analytic.account,is_overdue_quantity:0
msgid "Overdue Quantity"
-msgstr ""
+msgstr "Quantidade em atraso"
#. module: account_analytic_analysis
#: model:ir.actions.act_window,help:account_analytic_analysis.action_account_analytic_overdue
@@ -108,6 +114,12 @@ msgid ""
"pending accounts and reopen or close the according to the negotiation with "
"the customer."
msgstr ""
+"Vai encontrar aqui os contratos a serem renovados, porque o prazo é passado "
+"ou as horas de trabalho são maiores do que as horas atribuídas. OpenERP "
+"define automaticamente essas contas analíticas para o estado pendente, a fim "
+"de emitir um aviso durante a gravação da folha de horas. Vendedores devem "
+"rever todas as contas pendentes e reabrir ou fechar o acordo com a "
+"negociação com o cliente."
#. module: account_analytic_analysis
#: field:account.analytic.account,ca_theorical:0
@@ -117,7 +129,7 @@ msgstr "Retorno Teórico"
#. module: account_analytic_analysis
#: field:account.analytic.account,hours_qtt_non_invoiced:0
msgid "Uninvoiced Time"
-msgstr ""
+msgstr "Tempo não faturado"
#. module: account_analytic_analysis
#: help:account.analytic.account,last_worked_invoiced_date:0
@@ -125,13 +137,13 @@ msgid ""
"If invoice from the costs, this is the date of the latest work or cost that "
"have been invoiced."
msgstr ""
-"Se facturado dos custos, esta é a data do último trabalho ou dos custos que "
-"foram facturados."
+"Se faturado dos custos, esta é a data do último trabalho ou dos custos que "
+"foram faturados."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "To Renew"
-msgstr ""
+msgstr "Para renovar"
#. module: account_analytic_analysis
#: field:account.analytic.account,last_worked_date:0
@@ -141,24 +153,26 @@ msgstr "Data do Último Custo/Trabalho"
#. module: account_analytic_analysis
#: field:account.analytic.account,hours_qtt_invoiced:0
msgid "Invoiced Time"
-msgstr ""
+msgstr "Tempo faturado"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid ""
"A contract in OpenERP is an analytic account having a partner set on it."
msgstr ""
+"Um contrato em OpenERP é um relato analítico a ter num conjunto parceiro "
+"sobre ele."
#. module: account_analytic_analysis
#: field:account.analytic.account,remaining_hours:0
msgid "Remaining Time"
-msgstr ""
+msgstr "Tempo Restante"
#. module: account_analytic_analysis
#: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue
#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue
msgid "Contracts to Renew"
-msgstr ""
+msgstr "Contratos para renovar"
#. module: account_analytic_analysis
#: field:account.analytic.account,theorical_margin:0
@@ -168,7 +182,7 @@ msgstr "Margem Teórica"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid " +1 Month"
-msgstr ""
+msgstr " +1 mês"
#. module: account_analytic_analysis
#: help:account.analytic.account,ca_theorical:0
@@ -177,29 +191,29 @@ msgid ""
"if all these costs have been invoiced at the normal sale price provided by "
"the pricelist."
msgstr ""
-"Baseado nos custos que teve no projecto, qual é que seria o rendimento se "
-"todos estes custos fossem facturados ao preço normal da venda fornecidos "
-"pela tabela de preço."
+"Baseado nos custos que teve no projeto, qual é que seria o rendimento se "
+"todos estes custos fossem faturados ao preço normal da venda fornecidos pela "
+"tabela de preço."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Pending"
-msgstr ""
+msgstr "Pendente"
#. module: account_analytic_analysis
#: field:account.analytic.account,ca_to_invoice:0
msgid "Uninvoiced Amount"
-msgstr "Montante não Facturado"
+msgstr "Montante não Faturado"
#. module: account_analytic_analysis
#: help:account.analytic.account,real_margin:0
msgid "Computed using the formula: Invoiced Amount - Total Costs."
-msgstr "Processado ao utilizar a fórmula: Montante Facturado - Custo Total."
+msgstr "Processado ao utilizar a fórmula: Montante Faturado - Custo Total."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Parent"
-msgstr ""
+msgstr "Ascendente"
#. module: account_analytic_analysis
#: field:account.analytic.account,user_ids:0
@@ -221,17 +235,17 @@ msgstr "Resumo de horas por utilizador"
#. module: account_analytic_analysis
#: field:account.analytic.account,ca_invoiced:0
msgid "Invoiced Amount"
-msgstr "Montante Facturado"
+msgstr "Montante Faturado"
#. module: account_analytic_analysis
#: field:account.analytic.account,last_worked_invoiced_date:0
msgid "Date of Last Invoiced Cost"
-msgstr "Data do Último Custo Facturado"
+msgstr "Data do Último Custo Faturado"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Contract"
-msgstr ""
+msgstr "Contrato"
#. module: account_analytic_analysis
#: field:account.analytic.account,real_margin_rate:0
@@ -246,7 +260,7 @@ msgstr "Margem Real"
#. module: account_analytic_analysis
#: help:account.analytic.account,ca_invoiced:0
msgid "Total customer invoiced amount for this account."
-msgstr "Montante da facturação total do cliente para esta conta"
+msgstr "Montante da faturação total do cliente para esta conta"
#. module: account_analytic_analysis
#: model:ir.model,name:account_analytic_analysis.model_account_analytic_analysis_summary_month
@@ -266,7 +280,7 @@ msgstr "Receita Restante"
#. module: account_analytic_analysis
#: help:account.analytic.account,remaining_hours:0
msgid "Computed using the formula: Maximum Time - Total Time"
-msgstr ""
+msgstr "Cálculo utilizando a fórmula: Tempo máximo - Tempo Total"
#. module: account_analytic_analysis
#: help:account.analytic.account,hours_qtt_invoiced:0
@@ -274,6 +288,8 @@ msgid ""
"Number of time (hours/days) that can be invoiced plus those that already "
"have been invoiced."
msgstr ""
+"Número de tempo (horas ou dias) que pode ser faturado mais aqueles que já "
+"tenham sido faturados."
#. module: account_analytic_analysis
#: help:account.analytic.account,ca_to_invoice:0
@@ -281,13 +297,13 @@ msgid ""
"If invoice from analytic account, the remaining amount you can invoice to "
"the customer based on the total costs."
msgstr ""
-"Se facturado a partir da conta analítica, o montante restante que pode "
-"facturar ao cliente baseado nos custos totais."
+"Se faturado a partir da conta analítica, o montante restante que pode "
+"faturar ao cliente baseado nos custos totais."
#. module: account_analytic_analysis
#: help:account.analytic.account,revenue_per_hour:0
msgid "Computed using the formula: Invoiced Amount / Total Time"
-msgstr ""
+msgstr "Calculado através da fórmula: Valor faturado / Tempo Total"
#. module: account_analytic_analysis
#: field:account.analytic.account,total_cost:0
@@ -312,38 +328,38 @@ msgstr "Conta Analítica"
#: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue_all
#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_account_analytic_overdue_all
msgid "Contracts"
-msgstr ""
+msgstr "Contractos"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Manager"
-msgstr ""
+msgstr "Gestor"
#. module: account_analytic_analysis
#: model:ir.actions.act_window,name:account_analytic_analysis.action_hr_tree_invoiced_all
#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_hr_tree_invoiced_all
msgid "All Uninvoiced Entries"
-msgstr "Todas os Movimentos não Facturados"
+msgstr "Todos os Movimentos não Faturados"
#. module: account_analytic_analysis
#: help:account.analytic.account,last_invoice_date:0
msgid "If invoice from the costs, this is the date of the latest invoiced."
-msgstr ""
+msgstr "Se for fatura dos custos, esta é a data da última faturada."
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Associated Partner"
-msgstr ""
+msgstr "Parceiro associado"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Open"
-msgstr ""
+msgstr "Abrir"
#. module: account_analytic_analysis
#: view:account.analytic.account:0
msgid "Contracts that are not assigned to an account manager."
-msgstr ""
+msgstr "Contratos que não são atribuídos a um gestor de conta."
#. module: account_analytic_analysis
#: field:account.analytic.account,hours_quantity:0
@@ -358,18 +374,12 @@ msgid ""
"Total of costs for this account. It includes real costs (from invoices) and "
"indirect costs, like time spent on timesheets."
msgstr ""
-"Total de custos para esta conta. Que inclui custos reais (das facturas) e "
+"Total de custos para esta conta. Que inclui custos reais (das faturas) e "
"custos indirectos, como o tempo gasto em folha de horas."
#~ msgid "Invoicing"
#~ msgstr "Facturação"
-#~ msgid ""
-#~ "Number of hours that can be invoiced plus those that already have been "
-#~ "invoiced."
-#~ msgstr ""
-#~ "Número de horas que podem ser facturadas mais as que já foram facturadas."
-
#~ msgid "Hours summary by user"
#~ msgstr "Resumo de horas por utilizador"
@@ -505,7 +515,15 @@ msgstr ""
#~ "Pode também ver o relatório sumário de contas analíticas\n"
#~ "por utilizador bem como por mês.\n"
+#~ msgid ""
+#~ "Number of hours that can be invoiced plus those that already have been "
+#~ "invoiced."
+#~ msgstr ""
+#~ "Número de horas que podem ser facturadas mais aquelas que já tenham sido "
+#~ "facturadas."
+
#~ msgid ""
#~ "Error! The currency has to be the same as the currency of the selected "
#~ "company"
-#~ msgstr "Erro! A divisa tem que ser a mesma que a da empresa seleccionada"
+#~ msgstr ""
+#~ "Erro! A divisa tem que ser a mesma que a divisa da empresa seleccionada"
diff --git a/addons/account_analytic_analysis/security/ir.model.access.csv b/addons/account_analytic_analysis/security/ir.model.access.csv
index 74425cea3dd..4af43dbcb2f 100644
--- a/addons/account_analytic_analysis/security/ir.model.access.csv
+++ b/addons/account_analytic_analysis/security/ir.model.access.csv
@@ -3,3 +3,5 @@ access_account_analytic_analysis_summary_user_sale,account_analytic_analysis.sum
access_account_analytic_analysis_summary_month_sale,account_analytic_analysis.summary.month sale,model_account_analytic_analysis_summary_month,base.group_sale_salesman,1,0,0,0
access_account_analytic_analysis_summary_user,account_analytic_analysis.summary.user,model_account_analytic_analysis_summary_user,account.group_account_manager,1,0,0,0
access_account_analytic_analysis_summary_month,account_analytic_analysis.summary.month,model_account_analytic_analysis_summary_month,account.group_account_manager,1,0,0,0
+access_account_analytic_analysis_summary_user_project_user,account_analytic_analysis.summary.user project,model_account_analytic_analysis_summary_user,project.group_project_user,1,0,0,0
+access_account_analytic_analysis_summary_month_project_user,account_analytic_analysis.summary.month project,model_account_analytic_analysis_summary_month,project.group_project_user,1,0,0,0
diff --git a/addons/account_analytic_default/__openerp__.py b/addons/account_analytic_default/__openerp__.py
index 63f17e7bf62..e02f477d1af 100644
--- a/addons/account_analytic_default/__openerp__.py
+++ b/addons/account_analytic_default/__openerp__.py
@@ -23,7 +23,6 @@
'name' : 'Account Analytic Defaults',
'version' : '1.0',
"category": 'Accounting & Finance',
- 'complexity': "normal",
'description': """Set default values for your analytic accounts
Allows to automatically select analytic accounts based on criterions:
=====================================================================
diff --git a/addons/account_analytic_default/account_analytic_default_view.xml b/addons/account_analytic_default/account_analytic_default_view.xml
index 8b601022de4..beb4dcbd34e 100644
--- a/addons/account_analytic_default/account_analytic_default_view.xml
+++ b/addons/account_analytic_default/account_analytic_default_view.xml
@@ -6,7 +6,7 @@
account.analytic.defaulttree
-
+
@@ -24,16 +24,18 @@
account.analytic.defaultform
-
@@ -49,5 +39,5 @@
-
-
\ No newline at end of file
+
+
diff --git a/addons/account_anglo_saxon/__openerp__.py b/addons/account_anglo_saxon/__openerp__.py
index 2c10fcc7a19..78b2ff825c6 100644
--- a/addons/account_anglo_saxon/__openerp__.py
+++ b/addons/account_anglo_saxon/__openerp__.py
@@ -23,7 +23,6 @@
"version": "1.2",
"author": "OpenERP SA, Veritos",
"website": "http://tinyerp.com - http://veritos.nl",
- 'complexity': "normal",
"description": """
This module supports the Anglo-Saxon accounting methodology by changing the accounting logic with stock transactions.
=====================================================================================================================
diff --git a/addons/account_anglo_saxon/i18n/ja.po b/addons/account_anglo_saxon/i18n/ja.po
index d94e95cbf0b..df855860ebd 100644
--- a/addons/account_anglo_saxon/i18n/ja.po
+++ b/addons/account_anglo_saxon/i18n/ja.po
@@ -8,19 +8,19 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-04-28 01:18+0000\n"
+"PO-Revision-Date: 2012-06-10 03:21+0000\n"
"Last-Translator: Akira Hiyama \n"
"Language-Team: Japanese \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-04-29 04:45+0000\n"
-"X-Generator: Launchpad (build 15149)\n"
+"X-Launchpad-Export-Date: 2012-06-11 04:46+0000\n"
+"X-Generator: Launchpad (build 15376)\n"
#. module: account_anglo_saxon
#: sql_constraint:purchase.order:0
msgid "Order Reference must be unique per Company!"
-msgstr "注文参照は、会社内で固有でなければなりません。"
+msgstr "オーダー参照は、会社ごとに固有でなければなりません。"
#. module: account_anglo_saxon
#: view:product.category:0
@@ -35,7 +35,7 @@ msgstr "製品分類"
#. module: account_anglo_saxon
#: sql_constraint:stock.picking:0
msgid "Reference must be unique per Company!"
-msgstr "参照は会社内ではユニークでなければいけません。"
+msgstr "参照は会社ごとにユニークでなければいけません。"
#. module: account_anglo_saxon
#: constraint:product.category:0
@@ -87,7 +87,7 @@ msgstr "出庫票"
#. module: account_anglo_saxon
#: sql_constraint:account.invoice:0
msgid "Invoice Number must be unique per Company!"
-msgstr "請求書番号は会社ごとにユニークでなければいけません。"
+msgstr "請求書番号は会社ごとに固有である必要があります。"
#. module: account_anglo_saxon
#: help:product.category,property_account_creditor_price_difference_categ:0
diff --git a/addons/account_anglo_saxon/product_view.xml b/addons/account_anglo_saxon/product_view.xml
index 8187e6fa92b..b88f8f2db42 100644
--- a/addons/account_anglo_saxon/product_view.xml
+++ b/addons/account_anglo_saxon/product_view.xml
@@ -7,7 +7,7 @@
form
-
+
@@ -34,12 +34,11 @@
form
-
-
-
-
-
-
+
+
+
+
+
diff --git a/addons/account_asset/__openerp__.py b/addons/account_asset/__openerp__.py
index f26a8ada1b9..4b7379d8a6a 100644
--- a/addons/account_asset/__openerp__.py
+++ b/addons/account_asset/__openerp__.py
@@ -51,7 +51,7 @@
],
"auto_install": False,
"installable": True,
- "application": True,
+ "application": False,
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_asset/account_asset.py b/addons/account_asset/account_asset.py
index 97aec1d8487..0799a59a423 100644
--- a/addons/account_asset/account_asset.py
+++ b/addons/account_asset/account_asset.py
@@ -223,7 +223,7 @@ class account_asset_asset(osv.osv):
'parent_id': fields.many2one('account.asset.asset', 'Parent Asset', readonly=True, states={'draft':[('readonly',False)]}),
'child_ids': fields.one2many('account.asset.asset', 'parent_id', 'Children Assets'),
'purchase_date': fields.date('Purchase Date', required=True, readonly=True, states={'draft':[('readonly',False)]}),
- 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'State', required=True,
+ 'state': fields.selection([('draft','Draft'),('open','Running'),('close','Close')], 'Status', required=True,
help="When an asset is created, the state is 'Draft'.\n" \
"If the asset is confirmed, the state goes in 'Running' and the depreciation lines can be posted in the accounting.\n" \
"You can manually close an asset when the depreciation is over. If the last line of depreciation is posted, the asset automatically goes in that state."),
diff --git a/addons/account_asset/account_asset_view.xml b/addons/account_asset/account_asset_view.xml
index 1affcf7a85c..ce84c7f0352 100644
--- a/addons/account_asset/account_asset_view.xml
+++ b/addons/account_asset/account_asset_view.xml
@@ -10,35 +10,36 @@
account.asset.categoryform
-
@@ -56,7 +58,7 @@
account_followup.followuptree
-
+
@@ -68,26 +70,27 @@
account_followup.followupsearch
-
-
-
+
+
+
+
-
-
+
+
- Follow-Ups
+ Follow-upsir.actions.act_windowaccount_followup.followupform
- Define follow up levels and their related messages and delay. For each step, specify the message and the day of delay. Use the legend to know the using code to adapt the email content to the good context (good name, good date) and you can manage the multi language of messages.
+ Define follow-up levels and their related messages and delay. For each step, specify the message and the day of delay. Use the legend to know the using code to adapt the email content to the good context (good name, good date) and you can manage the multi language of messages.
-
+ account.move.line.partner.tree
diff --git a/addons/account_followup/i18n/account_followup.pot b/addons/account_followup/i18n/account_followup.pot
index 908bca04f70..c0173b056a0 100644
--- a/addons/account_followup/i18n/account_followup.pot
+++ b/addons/account_followup/i18n/account_followup.pot
@@ -17,7 +17,7 @@ msgstr ""
#. module: account_followup
#: view:account_followup.followup:0
-msgid "Search Followup"
+msgid "Search Follow-up"
msgstr ""
#. module: account_followup
@@ -34,12 +34,12 @@ msgstr ""
#. module: account_followup
#: view:account_followup.followup:0
#: field:account_followup.followup,followup_line:0
-msgid "Follow-Up"
+msgid "Follow-up"
msgstr ""
#. module: account_followup
#: help:account.followup.print.all,test_print:0
-msgid "Check if you want to print followups without changing followups level."
+msgid "Check if you want to print follow-ups without changing follow-ups level."
msgstr ""
#. module: account_followup
@@ -80,7 +80,7 @@ msgstr ""
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_followup_stat
-msgid "Follow up on the reminders sent over to your partners for unpaid invoices."
+msgid "Follow-up on the reminders sent over to your partners for unpaid invoices."
msgstr ""
#. module: account_followup
@@ -91,7 +91,7 @@ msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
-msgid "Follow up Entries with period in current year"
+msgid "Follow-up Entries with period in current year"
msgstr ""
#. module: account_followup
@@ -117,7 +117,7 @@ msgstr ""
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form
#: model:ir.ui.menu,name:account_followup.account_followup_menu
-msgid "Follow-Ups"
+msgid "Follow-ups"
msgstr ""
#. module: account_followup
@@ -175,7 +175,7 @@ msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup
-msgid "Account Follow Up"
+msgid "Account Follow-up"
msgstr ""
#. module: account_followup
@@ -227,7 +227,7 @@ msgstr ""
#. module: account_followup
#: field:account_followup.stat,date_followup:0
#: field:account_followup.stat.by.partner,date_followup:0
-msgid "Latest followup"
+msgid "Latest follow-up"
msgstr ""
#. module: account_followup
@@ -269,7 +269,7 @@ msgstr ""
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print_all
#: model:ir.ui.menu,name:account_followup.account_followup_print_menu
-msgid "Send followups"
+msgid "Send follow-ups"
msgstr ""
#. module: account_followup
@@ -280,13 +280,13 @@ msgstr ""
#. module: account_followup
#: field:account_followup.followup.line,followup_id:0
#: field:account_followup.stat,followup_id:0
-msgid "Follow Ups"
+msgid "Follow-ups"
msgstr ""
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:296
#, python-format
-msgid "All E-mails have been successfully sent to Partners:.\n"
+msgid "All Emails have been successfully sent to Partners:.\n"
"\n"
"%s"
msgstr ""
@@ -308,7 +308,7 @@ msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat_by_partner
-msgid "Followup Statistics by Partner"
+msgid "Follow-up Statistics by Partner"
msgstr ""
#. module: account_followup
@@ -326,7 +326,7 @@ msgstr ""
#, python-format
msgid "\n"
"\n"
-"E-Mail sent to following Partners successfully. !\n"
+"Email sent to following Partners successfully. !\n"
"\n"
"%s"
msgstr ""
@@ -354,7 +354,7 @@ msgstr ""
#. module: account_followup
#: view:account.followup.print.all:0
-msgid "Print Follow Ups"
+msgid "Print Follow-ups"
msgstr ""
#. module: account_followup
@@ -364,7 +364,7 @@ msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat
-msgid "Followup Statistics"
+msgid "Follow-up Statistics"
msgstr ""
#. module: account_followup
@@ -430,7 +430,7 @@ msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
-msgid "Follow-Up lines"
+msgid "Follow-up lines"
msgstr ""
#. module: account_followup
@@ -453,7 +453,7 @@ msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_print
#: model:ir.model,name:account_followup.model_account_followup_print_all
-msgid "Print Followup & Send Mail to Customers"
+msgid "Print Follow-up & Send Mail to Customers"
msgstr ""
#. module: account_followup
@@ -464,12 +464,12 @@ msgstr ""
#. module: account_followup
#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
-msgid "Followup Report"
+msgid "Follow-up Report"
msgstr ""
#. module: account_followup
#: view:account_followup.followup.line:0
-msgid "Follow-Up Steps"
+msgid "Follow-up Steps"
msgstr ""
#. module: account_followup
@@ -480,7 +480,7 @@ msgstr ""
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:307
#, python-format
-msgid "Followup Summary"
+msgid "Follow-up Summary"
msgstr ""
#. module: account_followup
@@ -496,12 +496,12 @@ msgstr ""
#. module: account_followup
#: field:account_followup.stat.by.partner,max_followup_id:0
-msgid "Max Follow Up Level"
+msgid "Max Follow-up Level"
msgstr ""
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_view_account_followup_followup_form
-msgid "Review Invoicing Follow-Ups"
+msgid "Review Invoicing Follow-ups"
msgstr ""
#. module: account_followup
@@ -511,7 +511,7 @@ msgstr ""
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_account_followup_definition_form
-msgid "Define follow up levels and their related messages and delay. For each step, specify the message and the day of delay. Use the legend to know the using code to adapt the email content to the good context (good name, good date) and you can manage the multi language of messages."
+msgid "Define follow-up levels and their related messages and delay. For each step, specify the message and the day of delay. Use the legend to know the using code to adapt the email content to the good context (good name, good date) and you can manage the multi language of messages."
msgstr ""
#. module: account_followup
@@ -522,7 +522,7 @@ msgstr ""
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:298
#, python-format
-msgid "E-Mail not sent to following Partners, E-mail not available !\n"
+msgid "Email not sent to following Partners, Email not available !\n"
"\n"
"%s"
msgstr ""
@@ -545,7 +545,7 @@ msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
-msgid "Followup Level"
+msgid "Follow-up Level"
msgstr ""
#. module: account_followup
@@ -556,7 +556,7 @@ msgstr ""
#. module: account_followup
#: constraint:account_followup.followup:0
-msgid "Only One Followup by Company."
+msgid "Only One Follow-up by Company."
msgstr ""
#. module: account_followup
@@ -682,11 +682,11 @@ msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
-msgid "Latest Followup Date"
+msgid "Latest Follow-up Date"
msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup_line
-msgid "Follow-Up Criteria"
+msgid "Follow-up Criteria"
msgstr ""
diff --git a/addons/account_followup/i18n/fr.po b/addons/account_followup/i18n/fr.po
index 74243144583..4e1604dcf9b 100644
--- a/addons/account_followup/i18n/fr.po
+++ b/addons/account_followup/i18n/fr.po
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-02-13 21:37+0000\n"
-"Last-Translator: t.o \n"
+"PO-Revision-Date: 2012-05-24 17:31+0000\n"
+"Last-Translator: YannUbuntu \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-14 05:43+0000\n"
-"X-Generator: Launchpad (build 14781)\n"
+"X-Launchpad-Export-Date: 2012-05-25 04:39+0000\n"
+"X-Generator: Launchpad (build 15288)\n"
#. module: account_followup
#: view:account_followup.followup:0
@@ -69,6 +69,26 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Cher % (partner_name)s,\n"
+"\n"
+"Nous constatons que, malgré l'envoi d'un rappel, votre compte client "
+"présente toujours à ce jour un solde débiteur.\n"
+"\n"
+"Il est essentiel que le règlement soit réalisé immédiatement faute de quoi "
+"nous devrons envisager de stopper\n"
+"nos relations commerciales jusqu'à apurement de la situation.\n"
+"\n"
+"Merci de prendre les mesures appropriées pour que le règlement intervienne "
+"dans les 8 prochains jours.\n"
+"\n"
+"S'il subsiste un problème avec le paiement de la facture dont nous n'avons "
+"pas été informé, n'hésitez pas à contacter notre service comptabilité au "
+"(+32) .12.34.56.78 afin que nous puissions le solutionner rapidement.\n"
+"\n"
+"Le détails de paiements dus est imprimé ci-dessous.\n"
+"\n"
+"Nous vous prions d’agréer, Madame, Monsieur, nos respectueuses salutations.\n"
#. module: account_followup
#: field:account_followup.followup,company_id:0
@@ -123,7 +143,7 @@ msgstr "Valeur erronée au crédit ou au débit de l'écriture comptable !"
#. module: account_followup
#: selection:account_followup.followup.line,start:0
msgid "Net Days"
-msgstr "Jour ouvrable"
+msgstr "Jours ouvrables"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form
@@ -340,6 +360,8 @@ msgid ""
"Your description is invalid, use the right legend or %% if you want to use "
"the percent character."
msgstr ""
+"Votre description n'est pas correcte, utilisez une légende exacte ou %% si "
+"vous souhaitez utiliser le caractère pour cent."
#. module: account_followup
#: constraint:account.move.line:0
@@ -449,7 +471,7 @@ msgstr "Envoyer un Message de confirmation"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Total:"
-msgstr "Total:"
+msgstr "Total :"
#. module: account_followup
#: constraint:res.company:0
@@ -529,7 +551,7 @@ msgstr "Rapport des Relances"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "Follow-Up Steps"
-msgstr ""
+msgstr "Niveaux de relance"
#. module: account_followup
#: field:account_followup.stat,period_id:0
@@ -561,7 +583,7 @@ msgstr "Niveau de relance maximal"
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_view_account_followup_followup_form
msgid "Review Invoicing Follow-Ups"
-msgstr ""
+msgstr "Définir les relances"
#. module: account_followup
#: constraint:account.move.line:0
@@ -576,6 +598,11 @@ msgid ""
"code to adapt the email content to the good context (good name, good date) "
"and you can manage the multi language of messages."
msgstr ""
+"Définissez les niveaux de relance, leur message et leur déclenchement. Pour "
+"chaque étape, spécifiez le message et le nombre de jours avant la relance. "
+"Utilisez la légende pour connaître le code à utiliser pour adapter "
+"dynamiquement le contenu du courriel (nom, date). Vous pouvez aussi gérer "
+"la langue des messages en fonction des destinataires."
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_payable_all
@@ -590,6 +617,10 @@ msgid ""
"\n"
"%s"
msgstr ""
+"Aucun courriel n'a été envoyé aux partenaires suivants. Leur adresse de "
+"courriel n'est pas renseignée !\n"
+"\n"
+"%s"
#. module: account_followup
#: view:account.followup.print.all:0
@@ -605,7 +636,7 @@ msgstr "%(date)s: Date Courante"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Including journal entries marked as a litigation"
-msgstr ""
+msgstr "Inclure les écritures marquées comme litigieuses"
#. module: account_followup
#: view:account_followup.stat:0
@@ -621,7 +652,7 @@ msgstr "Description"
#. module: account_followup
#: constraint:account_followup.followup:0
msgid "Only One Followup by Company."
-msgstr ""
+msgstr "Une seule relance par société"
#. module: account_followup
#: view:account_followup.stat:0
@@ -715,11 +746,26 @@ msgid ""
"\n"
"Best Regards,\n"
msgstr ""
+"\n"
+"Cher% (partner_name)s,\n"
+"\n"
+"Malgré plusieurs rappels, votre compte est toujours débiteur.\n"
+"\n"
+"A moins d'un paiement intégral effectué dans les 8 prochains jours, une "
+"action pour le recouvrement de la dette sera entreprise sans autre avis.\n"
+"\n"
+"Je suis convaincu que cette action se révélera inutile. Le détails des "
+"sommes dues est imprimé ci-dessous.\n"
+"\n"
+"En cas de question concernant cette situation, n'hésitez pas à contacter "
+"notre service comptabilité au (+32) .12.34.56.78.\n"
+"\n"
+"Cordialement,\n"
#. module: account_followup
#: constraint:account.move.line:0
msgid "You can not create journal items on closed account."
-msgstr ""
+msgstr "Vous ne pouvez pas passer d'écritures sur un compte clôturé."
#. module: account_followup
#: view:account.followup.print.all:0
@@ -744,7 +790,7 @@ msgstr "Réf. Client"
#. module: account_followup
#: field:account.followup.print.all,test_print:0
msgid "Test Print"
-msgstr ""
+msgstr "Tester l'impression"
#. module: account_followup
#: view:account.followup.print.all:0
diff --git a/addons/account_followup/i18n/ja.po b/addons/account_followup/i18n/ja.po
index 8722992cc42..d6889a8e67b 100644
--- a/addons/account_followup/i18n/ja.po
+++ b/addons/account_followup/i18n/ja.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-05-12 05:34+0000\n"
+"PO-Revision-Date: 2012-06-09 02:19+0000\n"
"Last-Translator: Akira Hiyama \n"
"Language-Team: Japanese \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-05-13 04:43+0000\n"
-"X-Generator: Launchpad (build 15225)\n"
+"X-Launchpad-Export-Date: 2012-06-10 04:37+0000\n"
+"X-Generator: Launchpad (build 15376)\n"
#. module: account_followup
#: view:account_followup.followup:0
@@ -243,7 +243,7 @@ msgstr "参照"
#. module: account_followup
#: help:account_followup.followup.line,sequence:0
msgid "Gives the sequence order when displaying a list of follow-up lines."
-msgstr "フォローアップ行のリスト表示の際の並び順を与えて下さい。"
+msgstr "フォローアップ行のリスト表示の際の並び順を与えます。"
#. module: account_followup
#: view:account.followup.print.all:0
@@ -346,7 +346,7 @@ msgstr ""
msgid ""
"Your description is invalid, use the right legend or %% if you want to use "
"the percent character."
-msgstr "記述が無効です。正しい凡例またはパーセンテージ文字を使う場合は%%を使ってください。"
+msgstr "記述が無効です。正しい凡例またはパーセンテージ文字を使う場合は%%を使って下さい。"
#. module: account_followup
#: constraint:account.move.line:0
@@ -374,7 +374,7 @@ msgstr "メッセージ"
#. module: account_followup
#: field:account_followup.stat,blocked:0
msgid "Blocked"
-msgstr "ブロック済"
+msgstr "ブロック"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:299
diff --git a/addons/account_followup/report/account_followup_print.rml b/addons/account_followup/report/account_followup_print.rml
index ae581528a1e..3d096ecf3ac 100644
--- a/addons/account_followup/report/account_followup_print.rml
+++ b/addons/account_followup/report/account_followup_print.rml
@@ -1,6 +1,6 @@
-
-
+
+
diff --git a/addons/account_followup/report/account_followup_report.py b/addons/account_followup/report/account_followup_report.py
index c2a842cfd4c..ceb8a389c0e 100644
--- a/addons/account_followup/report/account_followup_report.py
+++ b/addons/account_followup/report/account_followup_report.py
@@ -24,7 +24,7 @@ import tools
class account_followup_stat(osv.osv):
_name = "account_followup.stat"
- _description = "Followup Statistics"
+ _description = "Follow-up Statistics"
_rec_name = 'partner_id'
_auto = False
_columns = {
diff --git a/addons/account_followup/report/account_followup_report.xml b/addons/account_followup/report/account_followup_report.xml
index 6568af1c441..2bdf8eb74bf 100644
--- a/addons/account_followup/report/account_followup_report.xml
+++ b/addons/account_followup/report/account_followup_report.xml
@@ -7,7 +7,7 @@
account_followup.stattree
-
+
@@ -18,8 +18,7 @@
-
-
+
@@ -29,47 +28,48 @@
account_followup.statgraph
-
+
-
- account_followup.stat.search
- account_followup.stat
- search
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+ account_followup.stat.search
+ account_followup.stat
+ search
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Follow-ups Sentaccount_followup.stat
@@ -77,7 +77,7 @@
tree,graph{'search_default_followup_level':1}
- Follow up on the reminders sent over to your partners for unpaid invoices.
+ Follow-up on the reminders sent over to your partners for unpaid invoices.
diff --git a/addons/account_followup/security/account_followup_security.xml b/addons/account_followup/security/account_followup_security.xml
index f21c21e2367..fd90e16fec8 100644
--- a/addons/account_followup/security/account_followup_security.xml
+++ b/addons/account_followup/security/account_followup_security.xml
@@ -3,14 +3,14 @@
- Account Followup multi company rule
+ Account Follow-up multi company rule['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]
- Account Followup Statistics by Partner Rule
+ Account Follow-up Statistics by Partner Rule['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]
diff --git a/addons/account_followup/test/account_followup.yml b/addons/account_followup/test/account_followup.yml
index 5d4a7f3bd47..5b9ffa3d51c 100644
--- a/addons/account_followup/test/account_followup.yml
+++ b/addons/account_followup/test/account_followup.yml
@@ -1,23 +1,23 @@
-
- In order to test account followup module in OpenERP, I change the state of invoice to "open".
+ In order to test account follow-up module in OpenERP, I change the state of invoice to "open".
-
!record {model: account.invoice, id: account.demo_invoice_0}:
check_total: 14.0
-
!workflow {model: account.invoice, action: invoice_open, ref: account.demo_invoice_0}
-
- I create a followup.
+ I create a follow-up.
-
!record {model: account.followup.print, id: account_followup_print_0}:
{}
-
- I select the followup to send it to the partner.
+ I select the follow-up to send it to the partner.
-
!python {model: account.followup.print}: |
self.do_continue(cr, uid, [ref("account_followup_print_0")], {"active_ids": [ref("account_followup.account_followup_print_menu")], "active_id": ref("account_followup.account_followup_print_menu"),
})
-
- I select partners whom I want to send followups.
+ I select partners whom I want to send follow-ups.
-
!record {model: account.followup.print.all, id: account_followup_print_all_0}:
email_body: 'Date : %(date)s\n\nDear %(partner_name)s,\n\nPlease find in attachment
@@ -28,7 +28,7 @@
- base.res_partner_desertic_hispafuentes
partner_lang: 1
-
- I send a followup mail to partner.
+ I send a follow-up mail to partner.
-
!python {model: account.followup.print.all}: |
import time
diff --git a/addons/account_followup/test/account_followup_report.yml b/addons/account_followup/test/account_followup_report.yml
index 1aab384dc3b..f2ad8a5bb9f 100644
--- a/addons/account_followup/test/account_followup_report.yml
+++ b/addons/account_followup/test/account_followup_report.yml
@@ -1,10 +1,10 @@
-
- In order to test the report I print followup report.
+ In order to test the report I print follow-up report.
-
!python {model: account.followup.print.all}: |
import time
ctx = {'form_view_ref':'account_followup.view_account_followup_print_all', 'followup_id': ref('account_followup.demo_followup1'),'date': time.strftime('%Y-%m-%d'),'model': 'account_followup.followup','active_ids':[ref('account_followup_print_all_0')], 'company_id':ref('base.main_company')}
data_dict = {'email_conf': 1}
from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_account_followup_print_all', context=ctx, wiz_data=data_dict,wiz_buttons=["Print Follow Ups"], our_module='account_followup')
+ test_reports.try_report_action(cr, uid, 'action_account_followup_print_all', context=ctx, wiz_data=data_dict,wiz_buttons=["Print Follow-ups"], our_module='account_followup')
diff --git a/addons/account_followup/wizard/account_followup_print.py b/addons/account_followup/wizard/account_followup_print.py
index 088ff868ca0..b4629062455 100644
--- a/addons/account_followup/wizard/account_followup_print.py
+++ b/addons/account_followup/wizard/account_followup_print.py
@@ -28,7 +28,7 @@ from tools.translate import _
class account_followup_print(osv.osv_memory):
_name = 'account.followup.print'
- _description = 'Print Followup & Send Mail to Customers'
+ _description = 'Print Follow-up & Send Mail to Customers'
_columns = {
'date': fields.date('Follow-up Sending Date', required=True, help="This field allow you to select a forecast date to plan your follow-ups"),
'followup_id': fields.many2one('account_followup.followup', 'Follow-up', required=True),
@@ -71,14 +71,14 @@ account_followup_print()
class account_followup_stat_by_partner(osv.osv):
_name = "account_followup.stat.by.partner"
- _description = "Followup Statistics by Partner"
+ _description = "Follow-up Statistics by Partner"
_rec_name = 'partner_id'
_auto = False
_columns = {
'partner_id': fields.many2one('res.partner', 'Partner', readonly=True),
'date_move':fields.date('First move', readonly=True),
'date_move_last':fields.date('Last move', readonly=True),
- 'date_followup':fields.date('Latest followup', readonly=True),
+ 'date_followup':fields.date('Latest follow-up', readonly=True),
'max_followup_id': fields.many2one('account_followup.followup.line',
'Max Follow Up Level', readonly=True, ondelete="cascade"),
'balance':fields.float('Balance', readonly=True),
@@ -90,7 +90,7 @@ class account_followup_stat_by_partner(osv.osv):
# Here we don't have other choice but to create a virtual ID based on the concatenation
# of the partner_id and the company_id, because if a partner is shared between 2 companies,
# we want to see 2 lines for him in this table. It means that both company should be able
- # to send him followups separately . An assumption that the number of companies will not
+ # to send him follow-ups separately . An assumption that the number of companies will not
# reach 10 000 records is made, what should be enough for a time.
cr.execute("""
create or replace view account_followup_stat_by_partner as (
@@ -118,7 +118,7 @@ account_followup_stat_by_partner()
class account_followup_print_all(osv.osv_memory):
_name = 'account.followup.print.all'
- _description = 'Print Followup & Send Mail to Customers'
+ _description = 'Print Follow-up & Send Mail to Customers'
_columns = {
'partner_ids': fields.many2many('account_followup.stat.by.partner', 'partner_stat_rel', 'osv_memory_id', 'partner_id', 'Partners', required=True),
'email_conf': fields.boolean('Send email confirmation'),
@@ -126,7 +126,7 @@ class account_followup_print_all(osv.osv_memory):
'partner_lang': fields.boolean('Send Email in Partner Language', help='Do not change message text, if you want to send email in partner language, or configure from company'),
'email_body': fields.text('Email body'),
'summary': fields.text('Summary', required=True, readonly=True),
- 'test_print': fields.boolean('Test Print', help='Check if you want to print followups without changing followups level.')
+ 'test_print': fields.boolean('Test Print', help='Check if you want to print follow-ups without changing follow-ups level.')
}
def _get_summary(self, cr, uid, context=None):
if context is None:
@@ -289,15 +289,15 @@ class account_followup_print_all(osv.osv_memory):
msg += partner.name + '\n'
msg_unsent += msg
if not msg_unsent:
- summary = _("All E-mails have been successfully sent to Partners:.\n\n%s") % msg_sent
+ summary = _("All Emails have been successfully sent to Partners:.\n\n%s") % msg_sent
else:
- msg_unsent = _("E-Mail not sent to following Partners, E-mail not available !\n\n%s") % msg_unsent
- msg_sent = msg_sent and _("\n\nE-Mail sent to following Partners successfully. !\n\n%s") % msg_sent
+ msg_unsent = _("Email not sent to following Partners, Email not available !\n\n%s") % msg_unsent
+ msg_sent = msg_sent and _("\n\nEmail sent to following Partners successfully. !\n\n%s") % msg_sent
line = '=========================================================================='
summary = msg_unsent + line + msg_sent
context.update({'summary': summary})
else:
- context.update({'summary': '\n\n\nE-Mail has not been sent to any partner. If you want to send it, please tick send email confirmation on wizard.'})
+ context.update({'summary': '\n\n\nEmail has not been sent to any partner. If you want to send it, please tick send email confirmation on wizard.'})
return {
'name': _('Followup Summary'),
diff --git a/addons/account_followup/wizard/account_followup_print_view.xml b/addons/account_followup/wizard/account_followup_print_view.xml
index a58c77a719c..058feedcde3 100644
--- a/addons/account_followup/wizard/account_followup_print_view.xml
+++ b/addons/account_followup/wizard/account_followup_print_view.xml
@@ -7,24 +7,24 @@
account.followup.printform
-
- [[ (t.tax_code_id and t.tax_code_id.notprintable) and removeParentNode('blockTable') or '' ]] [[ formatLang(t.amount, dp='Account') ]] [[ o.currency_id.symbol ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ format(o.comment or removeParentNode('blockTable')) ]]
-
-
-
-
-
-
-
-
-
- [[ o.payment_term and o.payment_term.name ]] : [[ (o.payment_term and o.payment_term.note and format(o.payment_term.note)) or removeParentNode('blockTable') ]]
-
-
-
-
-
-
-
-
diff --git a/addons/account_invoice_layout/report/special_message_invoice.py b/addons/account_invoice_layout/report/special_message_invoice.py
deleted file mode 100644
index 8aee48c4649..00000000000
--- a/addons/account_invoice_layout/report/special_message_invoice.py
+++ /dev/null
@@ -1,157 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-import time
-
-from report import report_sxw
-import pooler
-
-
-class account_invoice_with_message(report_sxw.rml_parse):
- def __init__(self, cr, uid, name, context):
- super(account_invoice_with_message, self).__init__(cr, uid, name, context=context)
- self.localcontext.update({
- 'time': time,
- 'spcl_msg': self.spcl_msg,
- 'invoice_lines': self.invoice_lines,
-
- })
- self.context = context
-
- def spcl_msg(self, form):
- msg_id = form['message'][0]
- account_msg_data = pooler.get_pool(self.cr.dbname).get('notify.message').browse(self.cr, self.uid, msg_id)
- msg = account_msg_data.msg
- return msg
-
- def invoice_lines(self, invoice):
- result = []
- sub_total = {}
- info = []
- res = {}
- list_in_seq = {}
- ids = self.pool.get('account.invoice.line').search(self.cr, self.uid, [('invoice_id', '=', invoice.id)])
- ids.sort()
- for id in range(0, len(ids)):
- info = self.pool.get('account.invoice.line').browse(self.cr, self.uid, ids[id], self.context.copy())
- list_in_seq[info] = info.sequence
- i = 1
- j = 0
- final = sorted(list_in_seq.items(), lambda x, y: cmp(x[1], y[1]))
- invoice_list = [x[0] for x in final]
- sum_flag = {}
- sum_flag[j] = -1
- for entry in invoice_list:
- res = {}
-
- if entry.state == 'article':
- self.cr.execute('select tax_id from account_invoice_line_tax where invoice_line_id=%s', (entry.id,))
- tax_ids = self.cr.fetchall()
-
- if tax_ids == []:
- res['tax_types'] = ''
- else:
- tax_names_dict = {}
- for item in range(0, len(tax_ids)):
- self.cr.execute('select name from account_tax where id=%s', (tax_ids[item][0],))
- type = self.cr.fetchone()
- tax_names_dict[item] = type[0]
- tax_names = ','.join([tax_names_dict[x] for x in range(0, len(tax_names_dict))])
- res['tax_types'] = tax_names
- res['name'] = entry.name
- res['quantity'] = self.formatLang(entry.quantity, digits=self.get_digits(dp='Account'))
- res['price_unit'] = self.formatLang(entry.price_unit, digits=self.get_digits(dp='Account'))
- res['discount'] = self.formatLang(entry.discount, digits=self.get_digits(dp='Account'))
- res['price_subtotal'] = self.formatLang(entry.price_subtotal, digits=self.get_digits(dp='Account'))
- sub_total[i] = entry.price_subtotal
- i = i + 1
- res['note'] = entry.note
- res['currency'] = invoice.currency_id.symbol
- res['type'] = entry.state
-
- if entry.uos_id.id == False:
- res['uos'] = ''
- else:
- uos_name = self.pool.get('product.uom').read(self.cr, self.uid, entry.uos_id.id, ['name'], self.context.copy())
- res['uos'] = uos_name['name']
- else:
- res['quantity'] = ''
- res['price_unit'] = ''
- res['discount'] = ''
- res['tax_types'] = ''
- res['type'] = entry.state
- res['note'] = entry.note
- res['uos'] = ''
-
- if entry.state == 'subtotal':
- res['name'] = entry.name
- sum = 0
- sum_id = 0
- if sum_flag[j] == -1:
- temp = 1
- else:
- temp = sum_flag[j]
-
- for sum_id in range(temp, len(sub_total)+1):
- sum += sub_total[sum_id]
- sum_flag[j+1] = sum_id +1
-
- j = j + 1
- res['price_subtotal'] = "%.2f" % (sum)
- res['currency'] = invoice.currency_id.symbol
- res['quantity'] = ''
- res['price_unit'] = ''
- res['discount'] = ''
- res['tax_types'] = ''
- res['uos'] = ''
- elif entry.state == 'title':
- res['name'] = entry.name
- res['price_subtotal'] = ''
- res['currency'] = ''
- elif entry.state == 'text':
- res['name'] = entry.name
- res['price_subtotal'] = ''
- res['currency'] = ''
- elif entry.state == 'line':
- res['quantity'] = '_______________'
- res['price_unit'] = '______________'
- res['discount'] = '____________'
- res['tax_types'] = '____________________'
- res['uos'] = '_____'
- res['name'] = '_______________________________________________'
- res['price_subtotal'] = '____________'
- res['currency'] = '____'
- elif entry.state == 'break':
- res['type'] = entry.state
- res['name'] = entry.name
- res['price_subtotal'] = ''
- res['currency'] = ''
- else:
- res['name'] = entry.name
- res['price_subtotal'] = ''
- res['currency'] = invoice.currency_id.symbol
-
- result.append(res)
- return result
-
-report_sxw.report_sxw('report.notify_account.invoice', 'account.invoice', 'addons/account_invoice_layout/report/special_message_invoice.rml', parser=account_invoice_with_message)
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/account_invoice_layout/report/special_message_invoice.rml b/addons/account_invoice_layout/report/special_message_invoice.rml
deleted file mode 100644
index 97a7f131df6..00000000000
--- a/addons/account_invoice_layout/report/special_message_invoice.rml
+++ /dev/null
@@ -1,501 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ repeatIn(objects,'o') ]]
- [[ setLang(o.partner_id.lang) ]]
-
-
-
-
-
-
-
-
- [[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]
- [[ display_address(o.partner_id, 'invoice') ]]
-
-
-
- Tel. : [[ (o.partner_id.phone) or removeParentNode('para') ]]
- Fax : [[ (o.partner_id.fax) or removeParentNode('para') ]]
- VAT : [[ (o.partner_id and o.partner_id.vat) or removeParentNode('para') ]]
-
-
-
-
-
-
- Invoice [[ ((o.type == 'out_invoice' and (o.state == 'open' or o.state == 'paid')) or removeParentNode('para')) and '' ]] [[ o.number ]]
- PRO-FORMA [[ ((o.type == 'out_invoice' and o.state == 'proforma2') or removeParentNode('para')) and '' ]]
- Draft Invoice [[ ((o.type == 'out_invoice' and o.state == 'draft') or removeParentNode('para')) and '' ]]
- Cancelled Invoice [[ ((o.type == 'out_invoice' and o.state == 'cancel') or removeParentNode('para')) and '' ]] [[ o.number ]]
- Refund [[ (o.type=='out_refund' or removeParentNode('para')) and '' ]] [[ o.number ]]
- Supplier Refund [[ (o.type=='in_refund' or removeParentNode('para')) and '' ]] [[ o.number ]]
- Supplier Invoice [[ (o.type=='in_invoice' or removeParentNode('para')) and '' ]] [[ o.number ]]
-
-
-
-
-
-
-
-
-
- Description
-
-
- Invoice Date
-
-
- Origin
-
-
- Your Reference
-
-
-
-
-
-
- [[ o.name ]]
-
-
- [[ formatLang(o.date_invoice,date=True) ]]
-
-
- [[ o.name or '' ]]
-
-
- [[ ( o.partner_id.ref) or ' ' ]]
-
-
-
-
-
-
-
-
-
- Description / Taxes
-
-
- Quantity
-
-
- Unit Price
-
-
- Disc. (%)
-
-
- Price
-
-
-
-
- [[ repeatIn(invoice_lines(o), 'a') ]]
-
-
-
- [[ a['type']=='text' and removeParentNode('blockTable')]]
-
-
- [[ ((a['type']=='title' or a['type']=='subtotal') and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]][[ a['name'] ]] [[ a['type']=='article' and ('/ (' + a['tax_types'] +' )' ) ]]
-
-
- [[ (a['type']=='subtotal' and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]][[ a['quantity'] ]] [[ a['uos'] ]]
-
-
- [[ (a['type']=='subtotal' and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]][[ a['price_unit'] ]]
-
-
- [[ (a['type']=='subtotal' and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]][[ a['discount'] ]]
-
-
- [[ (a['type']=='subtotal' and ( setTag('para','para',{'fontName':'Helvetica-bold'}))) or removeParentNode('font') ]] [[ a['price_subtotal'] ]] [[ a['currency'] ]]
-
-
-
-
-
-
-
-
-
- Note: [[ (a['note'] and format(a['note'])) or removeParentNode('tr') ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ a['type']=='text' and format(a['name']) or removeParentNode('blockTable') ]]
-
-
- [[ a['type']=='text' and '' ]]
-
-
-
- [[ a['type']!='break' and removeParentNode('pageBreak')]]
-
-
-
- Description / Taxes [[ a['type']!='break' and removeParentNode('blockTable')]]
-
- [[ (t.tax_code_id and t.tax_code_id.notprintable) and removeParentNode('blockTable') or '' ]] [[ formatLang(t.amount, dp='Account') ]] [[ o.currency_id.symbol ]]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [[ format(o.comment or removeParentNode('blockTable')) ]]
-
-
-
-
-
-
-
-
-
- [[ format((o.payment_term and o.payment_term.note) or removeParentNode('blockTable')) ]]
-
-
-
-
-
-
-
-
-
- [[ repeatIn((spcl_msg(data['form']) and spcl_msg(data['form']).splitlines()) or [], 'note') ]]
- [[ note or removeParentNode('para') ]]
-
-
-
-
-
-
-
-
diff --git a/addons/account_invoice_layout/security/ir.model.access.csv b/addons/account_invoice_layout/security/ir.model.access.csv
deleted file mode 100644
index 98878fc91bf..00000000000
--- a/addons/account_invoice_layout/security/ir.model.access.csv
+++ /dev/null
@@ -1,2 +0,0 @@
-id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
-access_notify_message,notify.message,model_notify_message,account.group_account_invoice,1,1,1,1
diff --git a/addons/account_invoice_layout/test/account_invoice_layout_report.yml b/addons/account_invoice_layout/test/account_invoice_layout_report.yml
deleted file mode 100644
index 61ca39c654b..00000000000
--- a/addons/account_invoice_layout/test/account_invoice_layout_report.yml
+++ /dev/null
@@ -1,19 +0,0 @@
--
- Print the Invoice layout report in Normal Mode
--
- !python {model: account.invoice}: |
- import netsvc, tools, os
- (data, format) = netsvc.LocalService('report.account.invoice.layout').create(cr, uid, [ref('account.demo_invoice_0')], {}, {})
- if tools.config['test_report_directory']:
- file(os.path.join(tools.config['test_report_directory'], 'account_invoice_layout.'+format), 'wb+').write(data)
-
--
- Print the Invoice Layout Report with Message through wizard
--
- !python {model: account.invoice}: |
- ctx={}
- ctx.update({'model': 'account.invoice','active_ids': [ref('account.demo_invoice_0')]})
- data_dict = {'message':ref('account_invoice_layout.demo_message1')}
- from tools import test_reports
- test_reports.try_report_action(cr, uid, 'action_account_invoice_special_msg',wiz_data=data_dict, context=ctx, our_module='account_invoice_layout')
-
diff --git a/addons/account_invoice_layout/wizard/account_invoice_special_message.py b/addons/account_invoice_layout/wizard/account_invoice_special_message.py
deleted file mode 100644
index 27f6044a964..00000000000
--- a/addons/account_invoice_layout/wizard/account_invoice_special_message.py
+++ /dev/null
@@ -1,50 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import osv, fields
-
-class account_invoice_special_msg(osv.osv_memory):
- _name = 'account.invoice.special.msg'
- _description = 'Account Invoice Special Message'
-
- _columns = {
- 'message': fields.many2one('notify.message', 'Message', required = True, help="Message to Print at the bottom of report"),
- }
-
- def check_report(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
-
- data = self.read(cr, uid, ids, [], context=context)[0]
- datas = {
- 'ids': context.get('active_ids',[]),
- 'model': 'account.invoice',
- 'form': data
- }
- return {
- 'type': 'ir.actions.report.xml',
- 'report_name': 'notify_account.invoice',
- 'datas': datas,
- }
-
-account_invoice_special_msg()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/account_invoice_layout/wizard/account_invoice_special_message.xml b/addons/account_invoice_layout/wizard/account_invoice_special_message.xml
deleted file mode 100644
index 5bf1e480d1e..00000000000
--- a/addons/account_invoice_layout/wizard/account_invoice_special_message.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
-
- Account Invioce Special Message
- account.invoice.special.msg
- form
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Invoices and Message
- ir.actions.act_window
- account.invoice.special.msg
- form
- form
-
- new
-
-
-
-
- Account Invioce Special Message
- client_print_multi
-
- action
- account.invoice
-
-
-
-
diff --git a/addons/account_payment/__openerp__.py b/addons/account_payment/__openerp__.py
index 83c179801ab..1959d71da74 100644
--- a/addons/account_payment/__openerp__.py
+++ b/addons/account_payment/__openerp__.py
@@ -24,7 +24,6 @@
"version": "1.1",
"author": "OpenERP SA",
"category": "Accounting & Finance",
- 'complexity': "easy",
"description": """
Module to manage the payment of your supplier invoices.
=======================================================
diff --git a/addons/account_payment/account_payment.py b/addons/account_payment/account_payment.py
index 2cbe99206d6..80d7a5419e7 100644
--- a/addons/account_payment/account_payment.py
+++ b/addons/account_payment/account_payment.py
@@ -94,7 +94,7 @@ class payment_order(osv.osv):
('draft', 'Draft'),
('cancel', 'Cancelled'),
('open', 'Confirmed'),
- ('done', 'Done')], 'State', select=True,
+ ('done', 'Done')], 'Status', select=True,
help='When an order is placed the state is \'Draft\'.\n Once the bank is confirmed the state is set to \'Confirmed\'.\n Then the order is paid the state is \'Done\'.'),
'line_ids': fields.one2many('payment.line', 'order_id', 'Payment lines', states={'done': [('readonly', True)]}),
'total': fields.function(_total, string="Total", type='float'),
diff --git a/addons/account_payment/account_payment_demo.xml b/addons/account_payment/account_payment_demo.xml
index 02170c38fea..33f3687f4cf 100644
--- a/addons/account_payment/account_payment_demo.xml
+++ b/addons/account_payment/account_payment_demo.xml
@@ -1,14 +1,14 @@
-
+ Reserve Bank00987654321bank
-
+ Direct Payment
diff --git a/addons/account_payment/account_payment_view.xml b/addons/account_payment/account_payment_view.xml
index 285b5983b1a..cf91dcc80a2 100644
--- a/addons/account_payment/account_payment_view.xml
+++ b/addons/account_payment/account_payment_view.xml
@@ -47,12 +47,14 @@
search
-
+
+
-
+
@@ -76,12 +78,14 @@
payment.modeform
-
-
- Configure Your Account Sequence Application
-
-
-
-
-
- You can enhance the Account Sequence Application by installing .
-
-
-
-
-
-
-
-
-
-
-
- Configure
-
-
-
-
-
-
- Account Sequence Application Configuration
- ir.actions.act_window
- account.sequence.installer
-
- form
- form
- new
-
-
-
-
-
- 3
- automatic
-
-
-
+
+ Account Sequence Application Configuration
+ ir.actions.act_window
+ account.sequence.installer
+
+ form
+ form
+ new
+
+
+
+
+
+ 3
+ automatic
+
+
diff --git a/addons/account_sequence/i18n/sv.po b/addons/account_sequence/i18n/sv.po
new file mode 100644
index 00000000000..cc0491fca54
--- /dev/null
+++ b/addons/account_sequence/i18n/sv.po
@@ -0,0 +1,220 @@
+# Swedish translation for openobject-addons
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the openobject-addons package.
+# FIRST AUTHOR , 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: openobject-addons\n"
+"Report-Msgid-Bugs-To: FULL NAME \n"
+"POT-Creation-Date: 2012-02-08 00:35+0000\n"
+"PO-Revision-Date: 2012-06-04 17:24+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: Swedish \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-06-05 04:54+0000\n"
+"X-Generator: Launchpad (build 15353)\n"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer
+msgid "Account Sequence Application Configuration"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move:0
+msgid ""
+"You can not create more than one move per period on centralized journal"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "Company must be the same for its related account and period."
+msgstr "Bolaget måste överenstämma för alla konton och perioder."
+
+#. module: account_sequence
+#: help:account.move,internal_sequence_number:0
+#: help:account.move.line,internal_sequence_number:0
+msgid "Internal Sequence Number"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_next:0
+msgid "Next number of this sequence"
+msgstr "Nästa nummer i sekvensen"
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_next:0
+msgid "Next Number"
+msgstr "Nästa nummer"
+
+#. module: account_sequence
+#: field:account.sequence.installer,number_increment:0
+msgid "Increment Number"
+msgstr "Räkna upp nummer"
+
+#. module: account_sequence
+#: help:account.sequence.installer,number_increment:0
+msgid "The next number of the sequence will be incremented by this number"
+msgstr "Nästa nummer i sekvensen kommer att beräknas utgående från detta"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure Your Account Sequence Application"
+msgstr ""
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "Configure"
+msgstr "Inställningar"
+
+#. module: account_sequence
+#: help:account.sequence.installer,suffix:0
+msgid "Suffix value of the record for the sequence"
+msgstr "Suffixvärde för löpnumret"
+
+#. module: account_sequence
+#: field:account.sequence.installer,company_id:0
+msgid "Company"
+msgstr "Bolag"
+
+#. module: account_sequence
+#: help:account.journal,internal_sequence_id:0
+msgid ""
+"This sequence will be used to maintain the internal number for the journal "
+"entries related to this journal."
+msgstr ""
+
+#. module: account_sequence
+#: field:account.sequence.installer,padding:0
+msgid "Number padding"
+msgstr "Numerisk utfyllnad"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move_line
+msgid "Journal Items"
+msgstr "Transaktioner"
+
+#. module: account_sequence
+#: field:account.move,internal_sequence_number:0
+#: field:account.move.line,internal_sequence_number:0
+msgid "Internal Number"
+msgstr ""
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create journal items on an account of type view."
+msgstr "Du kan inte skapa transaktioner på rubrikkonton."
+
+#. module: account_sequence
+#: help:account.sequence.installer,padding:0
+msgid ""
+"OpenERP will automatically adds some '0' on the left of the 'Next Number' to "
+"get the required padding size."
+msgstr ""
+"OpenERP lägger automatiskt till några '0' till vänster på 'Nästa nummer' för "
+"att få rätt storlek."
+
+#. module: account_sequence
+#: field:account.sequence.installer,name:0
+msgid "Name"
+msgstr "Namn"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid "You can not create journal items on closed account."
+msgstr "Du kan inte skapa transaktioner på ett stängt konto."
+
+#. module: account_sequence
+#: constraint:account.journal:0
+msgid ""
+"Configuration error! The currency chosen should be shared by the default "
+"accounts too."
+msgstr ""
+"Konfigurationsfel! Vald valuta bör delas mellan standard-konton också."
+
+#. module: account_sequence
+#: sql_constraint:account.move.line:0
+msgid "Wrong credit or debit value in accounting entry !"
+msgstr "Fel kredit- eller debetvärde i bokföringstransaktionerna."
+
+#. module: account_sequence
+#: field:account.journal,internal_sequence_id:0
+msgid "Internal Sequence"
+msgstr ""
+
+#. module: account_sequence
+#: help:account.sequence.installer,prefix:0
+msgid "Prefix value of the record for the sequence"
+msgstr "Prefix för löpnumret"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_move
+msgid "Account Entry"
+msgstr "Kontotransaktion"
+
+#. module: account_sequence
+#: field:account.sequence.installer,suffix:0
+msgid "Suffix"
+msgstr "Suffix"
+
+#. module: account_sequence
+#: field:account.sequence.installer,config_logo:0
+msgid "Image"
+msgstr "Bild"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "title"
+msgstr "titel"
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The name of the journal must be unique per company !"
+msgstr "Journalnamnet måste vara unikt per företag!"
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid ""
+"The selected account of your Journal Entry forces to provide a secondary "
+"currency. You should remove the secondary currency on the account or select "
+"a multi-currency view on the journal."
+msgstr ""
+"Valt konto på verifikatet tvingar fram en sekundär valuta. Du kan ta bort "
+"den sekundära valutan på kontot eller välja en flervalutavy för journalen."
+
+#. module: account_sequence
+#: constraint:account.move.line:0
+msgid ""
+"The date of your Journal Entry is not in the defined period! You should "
+"change the date or remove this constraint from the journal."
+msgstr ""
+"Verifikatsdatumet är inte inom den definierade perioden! Du bör ändra datum "
+"eller ta bort denna begränsning från journalen."
+
+#. module: account_sequence
+#: field:account.sequence.installer,prefix:0
+msgid "Prefix"
+msgstr "Prefix"
+
+#. module: account_sequence
+#: sql_constraint:account.journal:0
+msgid "The code of the journal must be unique per company !"
+msgstr "Journalkoden måste vara unik per företag!"
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_sequence_installer
+msgid "account.sequence.installer"
+msgstr ""
+
+#. module: account_sequence
+#: model:ir.model,name:account_sequence.model_account_journal
+msgid "Journal"
+msgstr "Journal"
+
+#. module: account_sequence
+#: view:account.sequence.installer:0
+msgid "You can enhance the Account Sequence Application by installing ."
+msgstr ""
diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py
index 1c4005b7be0..a7899338b8e 100644
--- a/addons/account_voucher/__openerp__.py
+++ b/addons/account_voucher/__openerp__.py
@@ -23,7 +23,6 @@
"name" : "eInvoicing & Payments",
"version" : "1.0",
"author" : 'OpenERP SA',
- 'complexity': "normal",
"description": """
Account Voucher module includes all the basic requirements of Voucher Entries for Bank, Cash, Sales, Purchase, Expanse, Contra, etc.
====================================================================================================================================
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index 7c4df846b80..2cefaf15f0e 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -250,6 +250,7 @@ class account_voucher(osv.osv):
_name = 'account.voucher'
_description = 'Accounting Voucher'
+ _inherit = ['mail.thread']
_order = "date desc, id desc"
# _rec_name = 'number'
_columns = {
@@ -278,7 +279,7 @@ class account_voucher(osv.osv):
('cancel','Cancelled'),
('proforma','Pro-forma'),
('posted','Posted')
- ], 'State', readonly=True, size=32,
+ ], 'Status', readonly=True, size=32,
help=' * The \'Draft\' state is used when a user is encoding a new and unconfirmed Voucher. \
\n* The \'Pro-forma\' when voucher is in Pro-forma state,voucher does not have an voucher number. \
\n* The \'Posted\' state is used when user create voucher,a voucher number is generated and voucher entries are created in account \
@@ -323,7 +324,7 @@ class account_voucher(osv.osv):
'amount': _get_amount,
'type':_get_type,
'state': 'draft',
- 'pay_now': 'pay_later',
+ 'pay_now': 'pay_now',
'name': '',
'date': lambda *a: time.strftime('%Y-%m-%d'),
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.voucher',context=c),
@@ -334,6 +335,11 @@ class account_voucher(osv.osv):
'payment_rate_currency_id': _get_payment_rate_currency,
}
+ def create(self, cr, uid, vals, context=None):
+ voucher = super(account_voucher, self).create(cr, uid, vals, context=context)
+ self.create_send_note(cr, uid, [voucher], context=context)
+ return voucher
+
def compute_tax(self, cr, uid, ids, context=None):
tax_pool = self.pool.get('account.tax')
partner_pool = self.pool.get('res.partner')
@@ -556,7 +562,7 @@ class account_voucher(osv.osv):
@return: Returns a dict which contains new values, and context
"""
def _remove_noise_in_o2m():
- """if the line is partially reconciled, then we must pay attention to display it only once and
+ """if the line is partially reconciled, then we must pay attention to display it only once and
in the good o2m.
This function returns True if the line is considered as noise and should not be displayed
"""
@@ -780,7 +786,7 @@ class account_voucher(osv.osv):
def proforma_voucher(self, cr, uid, ids, context=None):
self.action_move_line_create(cr, uid, ids, context=context)
- return True
+ return {'type': 'ir.actions.act_window_close'}
def action_cancel_draft(self, cr, uid, ids, context=None):
wf_service = netsvc.LocalService("workflow")
@@ -1249,12 +1255,16 @@ class account_voucher(osv.osv):
'state': 'posted',
'number': name,
})
+ self.post_send_note(cr, uid, [voucher.id], context=context)
if voucher.journal_id.entry_posted:
move_pool.post(cr, uid, [move_id], context={})
# We automatically reconcile the account move lines.
+ reconcile = False
for rec_ids in rec_list_ids:
if len(rec_ids) >= 2:
- move_line_pool.reconcile_partial(cr, uid, rec_ids, writeoff_acc_id=voucher.writeoff_acc_id.id, writeoff_period_id=voucher.period_id.id, writeoff_journal_id=voucher.journal_id.id)
+ reconcile = move_line_pool.reconcile_partial(cr, uid, rec_ids, writeoff_acc_id=voucher.writeoff_acc_id.id, writeoff_period_id=voucher.period_id.id, writeoff_journal_id=voucher.journal_id.id)
+ if reconcile:
+ self.reconcile_send_note(cr, uid, [voucher.id], context=context)
return True
def copy(self, cr, uid, id, default={}, context=None):
@@ -1270,6 +1280,32 @@ class account_voucher(osv.osv):
default['date'] = time.strftime('%Y-%m-%d')
return super(account_voucher, self).copy(cr, uid, id, default, context)
+ # -----------------------------------------
+ # OpenChatter notifications and need_action
+ # -----------------------------------------
+ _document_type = {
+ 'sale': 'Sales Receipt',
+ 'purchase': 'Purchase Receipt',
+ 'payment': 'Supplier Payment',
+ 'receipt': 'Customer Payment',
+ False: 'Payment',
+ }
+
+ def create_send_note(self, cr, uid, ids, context=None):
+ for obj in self.browse(cr, uid, ids, context=context):
+ message = "%s created." % self._document_type[obj.type or False]
+ self.message_append_note(cr, uid, [obj.id], body=message, context=context)
+
+ def post_send_note(self, cr, uid, ids, context=None):
+ for obj in self.browse(cr, uid, ids, context=context):
+ message = "%s '%s' is posted." % (self._document_type[obj.type or False], obj.move_id.name)
+ self.message_append_note(cr, uid, [obj.id], body=message, context=context)
+
+ def reconcile_send_note(self, cr, uid, ids, context=None):
+ for obj in self.browse(cr, uid, ids, context=context):
+ message = "%s reconciled." % self._document_type[obj.type or False]
+ self.message_append_note(cr, uid, [obj.id], body=message, context=context)
+
account_voucher()
class account_voucher_line(osv.osv):
diff --git a/addons/account_voucher/account_voucher_pay_invoice.xml b/addons/account_voucher/account_voucher_pay_invoice.xml
index 345241cb4ee..c6128c4e619 100644
--- a/addons/account_voucher/account_voucher_pay_invoice.xml
+++ b/addons/account_voucher/account_voucher_pay_invoice.xml
@@ -2,15 +2,18 @@
- account.invoice.customer.pay
- account.invoice
- form
-
-
-
-
-
-
+ account.invoice.customer.pay
+ account.invoice
+ form
+
+
+
+
+
+
+ account.invoice.supplier.pay
@@ -18,9 +21,9 @@
form
-
-
-
+
+
+
diff --git a/addons/account_voucher/account_voucher_view.xml b/addons/account_voucher/account_voucher_view.xml
index 9b5f9ad901c..2c294fa628c 100644
--- a/addons/account_voucher/account_voucher_view.xml
+++ b/addons/account_voucher/account_voucher_view.xml
@@ -11,13 +11,12 @@
-
+
-
@@ -26,11 +25,13 @@
account.voucher.lineform
-
@@ -274,7 +273,9 @@
current
- The supplier payment form allows you to track the payment you do to your suppliers. When you select a supplier, the payment method and an amount for the payment, OpenERP will propose to reconcile your payment with the open supplier invoices or bills.
+ Click on "Create" to register a supplier payment.
+ <p>
+ Track payments you do to your supplier and amounts you pay.
@@ -297,34 +298,46 @@
account.voucherform
-
@@ -431,7 +446,11 @@
current
- Sales payment allows you to register the payments you receive from your customers. In order to record a payment, you must enter the customer, the payment method (=the journal) and the payment amount. OpenERP will propose to you automatically the reconciliation of this payment with the open invoices or sales receipts.
+
+ Click on create to register a payment.
+ <p>
+ Enter the customer and the payment method and then, either create manually a payment record or OpenERP will propose to you automatically the reconciliation of this payment with the open invoices or sales receipts.
+
diff --git a/addons/account_voucher/voucher_sales_purchase_view.xml b/addons/account_voucher/voucher_sales_purchase_view.xml
index d3bb60230c6..adb078fac22 100644
--- a/addons/account_voucher/voucher_sales_purchase_view.xml
+++ b/addons/account_voucher/voucher_sales_purchase_view.xml
@@ -8,26 +8,25 @@
+
+
+
+
-
-
-
-
-
-
+
-
+
@@ -40,26 +39,25 @@
+
+
+
+
-
-
-
-
-
-
+
-
+
@@ -80,70 +78,78 @@
account.voucherform
-
@@ -175,7 +184,11 @@
current
- When you sell products to a customer, you can give him a sales receipt or an invoice. When the sales receipt is confirmed, it creates journal items automatically and you can record the customer payment related to this sales receipt.
+
+ Click here to create a sale receipt.
+ <p>
+ When the sales receipt is confirmed, you can record the customer payment related to this sales receipt.
+
@@ -209,65 +222,87 @@
account.voucherform
-
@@ -297,6 +335,11 @@
current
+
+ Click here to create a purchase receipt.
+ <p>
+ When the purchase receipt is confirmed, you can record the supplier payment related to this purchase receipt.
+
diff --git a/addons/account_voucher/wizard/account_statement_from_invoice_view.xml b/addons/account_voucher/wizard/account_statement_from_invoice_view.xml
index 1c0c00bd662..5ecb4cd07bb 100644
--- a/addons/account_voucher/wizard/account_statement_from_invoice_view.xml
+++ b/addons/account_voucher/wizard/account_statement_from_invoice_view.xml
@@ -6,17 +6,16 @@
account.statement.from.invoiceform
-
@@ -24,14 +26,6 @@
new
-
-
-
-
-
-
-
-
-
+
diff --git a/addons/analytic/__openerp__.py b/addons/analytic/__openerp__.py
index 95983ecdc10..fe9a42fe4c4 100644
--- a/addons/analytic/__openerp__.py
+++ b/addons/analytic/__openerp__.py
@@ -25,7 +25,7 @@
"author" : "OpenERP SA",
"website" : "http://www.openerp.com",
"category": 'Hidden/Dependency',
- "depends" : ["base", "decimal_precision"],
+ "depends" : ["base", "decimal_precision", "mail"],
"description": """
Module for defining analytic accounting object.
===============================================
@@ -37,6 +37,8 @@ that have no counterpart in the general financial accounts.
"init_xml" : [],
"update_xml": ['security/analytic_security.xml',
"security/ir.model.access.csv",
+ "analytic_sequence.xml",
+ "analytic_view.xml"
],
'demo_xml': [
],
diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py
index 82b4003bc6b..af8b1615864 100644
--- a/addons/analytic/analytic.py
+++ b/addons/analytic/analytic.py
@@ -27,6 +27,7 @@ import decimal_precision as dp
class account_analytic_account(osv.osv):
_name = 'account.analytic.account'
+ _inherit = ['mail.thread']
_description = 'Analytic Account'
def _compute_level_tree(self, cr, uid, ids, child_ids, res, field_names, context=None):
@@ -155,7 +156,11 @@ class account_analytic_account(osv.osv):
'name': fields.char('Account Name', size=128, required=True),
'complete_name': fields.function(_complete_name_calc, type='char', string='Full Account Name'),
'code': fields.char('Code/Reference', size=24, select=True),
- 'type': fields.selection([('view','View'), ('normal','Normal')], 'Account Type', help='If you select the View Type, it means you won\'t allow to create journal entries using that account.'),
+ 'type': fields.selection([('view','Analytic View'), ('normal','Analytic Account'),('contract','Contract or Project'),('template','Template of Project')], 'Type of Account', required=True,
+ help="If you select the View Type, it means you won\'t allow to create journal entries using that account.\n"\
+ "The type 'Analytic account' stands for usual accounts that you only want to use in accounting.\n"\
+ "If you select Contract or Project, it offers you the possibility to manage the validity and the invoicing options for this account.\n"\
+ "The special type 'Template of Project' allows you to define a template with default data that you can reuse easily."),
'description': fields.text('Description'),
'parent_id': fields.many2one('account.analytic.account', 'Parent Analytic Account', select=2),
'child_ids': fields.one2many('account.analytic.account', 'parent_id', 'Child Accounts'),
@@ -166,23 +171,28 @@ class account_analytic_account(osv.osv):
'credit': fields.function(_debit_credit_bal_qtty, type='float', string='Credit', multi='debit_credit_bal_qtty', digits_compute=dp.get_precision('Account')),
'quantity': fields.function(_debit_credit_bal_qtty, type='float', string='Quantity', multi='debit_credit_bal_qtty'),
'quantity_max': fields.float('Maximum Time', help='Sets the higher limit of time to work on the contract.'),
- 'partner_id': fields.many2one('res.partner', 'Partner'),
- 'user_id': fields.many2one('res.users', 'Account Manager'),
+ 'partner_id': fields.many2one('res.partner', 'Customer'),
+ 'user_id': fields.many2one('res.users', 'Project Manager'),
+ 'manager_id': fields.many2one('res.users', 'Account Manager'),
'date_start': fields.date('Date Start'),
'date': fields.date('Date End', select=True),
'company_id': fields.many2one('res.company', 'Company', required=False), #not required because we want to allow different companies to use the same chart of account, except for leaf accounts.
- 'state': fields.selection([('template', 'Template'),('draft','New'),('open','Open'), ('cancelled', 'Cancelled'),('pending','Pending'),('close','Closed')], 'State', required=True,
- help='* When an account is created its in \'Draft\' state.\
- \n* If any associated partner is there, it can be in \'Open\' state.\
- \n* If any pending balance is there it can be in \'Pending\'. \
- \n* And finally when all the transactions are over, it can be in \'Close\' state. \
- \n* The project can be in either if the states \'Template\' and \'Running\'.\n If it is template then we can make projects based on the template projects. If its in \'Running\' state it is a normal project.\
- \n If it is to be reviewed then the state is \'Pending\'.\n When the project is completed the state is set to \'Done\'.'),
+ 'state': fields.selection([('template', 'Template'),('draft','New'),('open','In Progress'), ('cancelled', 'Cancelled'),('pending','To Renew'),('close','Closed')], 'Status', required=True,),
'currency_id': fields.function(_currency, fnct_inv=_set_company_currency,
store = {
'res.company': (_get_analytic_account, ['currency_id'], 10),
}, string='Currency', type='many2one', relation='res.currency'),
}
+
+ def on_change_partner_id(self, cr, uid, ids,partner_id, name, context={}):
+ res={}
+ if partner_id:
+ partner = self.pool.get('res.partner').browse(cr, uid, partner_id, context=context)
+ if partner.user_id:
+ res['manager_id'] = partner.user_id.id
+ if not name:
+ res['name'] = _('Contract: ') + partner.name
+ return {'value': res}
def _default_company(self, cr, uid, context=None):
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
@@ -197,6 +207,7 @@ class account_analytic_account(osv.osv):
_defaults = {
'type': 'normal',
'company_id': _default_company,
+ 'code' : lambda obj, cr, uid, context: obj.pool.get('ir.sequence').get(cr, uid, 'account.analytic.account'),
'state': 'open',
'user_id': lambda self, cr, uid, ctx: uid,
'partner_id': lambda self, cr, uid, ctx: ctx.get('partner_id', False),
@@ -266,6 +277,17 @@ class account_analytic_account(osv.osv):
account = self.search(cr, uid, args, limit=limit, context=context)
return self.name_get(cr, uid, account, context=context)
+ def create(self, cr, uid, vals, context=None):
+ contract = super(account_analytic_account, self).create(cr, uid, vals, context=context)
+ if contract:
+ self.create_send_note(cr, uid, [contract], context=context)
+ return contract
+
+ def create_send_note(self, cr, uid, ids, context=None):
+ for obj in self.browse(cr, uid, ids, context=context):
+ self.message_subscribe(cr, uid, [obj.id], [obj.user_id.id], context=context)
+ self.message_append_note(cr, uid, [obj.id], body=_("Contract for %s has been created.") % (obj.partner_id.name), context=context)
+
account_analytic_account()
@@ -290,17 +312,17 @@ class account_analytic_line(osv.osv):
}
_order = 'date desc'
-
+
def _check_no_view(self, cr, uid, ids, context=None):
analytic_lines = self.browse(cr, uid, ids, context=context)
for line in analytic_lines:
if line.account_id.type == 'view':
return False
return True
-
+
_constraints = [
(_check_no_view, 'You can not create analytic line on view account.', ['account_id']),
- ]
+ ]
account_analytic_line()
diff --git a/addons/analytic/analytic_sequence.xml b/addons/analytic/analytic_sequence.xml
new file mode 100644
index 00000000000..ab36d77bb33
--- /dev/null
+++ b/addons/analytic/analytic_sequence.xml
@@ -0,0 +1,16 @@
+
+
+
+
+ Analytic account
+ account.analytic.account
+
+
+ Analytic account sequence
+ account.analytic.account
+ AA
+ 3
+
+
+
+
diff --git a/addons/analytic/analytic_view.xml b/addons/analytic/analytic_view.xml
new file mode 100644
index 00000000000..0c06c90150c
--- /dev/null
+++ b/addons/analytic/analytic_view.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+ analytic.analytic.account.form
+ account.analytic.account
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/analytic/i18n/ja.po b/addons/analytic/i18n/ja.po
index 4412d1964e0..8ae21b65464 100644
--- a/addons/analytic/i18n/ja.po
+++ b/addons/analytic/i18n/ja.po
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME \n"
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-05-15 06:05+0000\n"
+"PO-Revision-Date: 2012-06-08 23:38+0000\n"
"Last-Translator: Akira Hiyama \n"
"Language-Team: Japanese \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-05-16 04:50+0000\n"
-"X-Generator: Launchpad (build 15247)\n"
+"X-Launchpad-Export-Date: 2012-06-09 05:39+0000\n"
+"X-Generator: Launchpad (build 15376)\n"
#. module: analytic
#: field:account.analytic.account,child_ids:0
@@ -213,7 +213,7 @@ msgstr "残高"
#. module: analytic
#: constraint:account.analytic.account:0
msgid "Error! You can not create recursive analytic accounts."
-msgstr "エラー。反復した分析アカウントを作ることはできません。"
+msgstr "エラー。再帰的な分析アカウントを作ることはできません。"
#. module: analytic
#: help:account.analytic.account,type:0
diff --git a/addons/base_module_quality/method_test/__init__.py b/addons/analytic_contract_expense_project/__init__.py
similarity index 96%
rename from addons/base_module_quality/method_test/__init__.py
rename to addons/analytic_contract_expense_project/__init__.py
index f1d0e2c7767..05c84916922 100644
--- a/addons/base_module_quality/method_test/__init__.py
+++ b/addons/analytic_contract_expense_project/__init__.py
@@ -19,5 +19,6 @@
#
##############################################################################
+import analytic_contract_expense_project
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_synchro/__openerp__.py b/addons/analytic_contract_expense_project/__openerp__.py
similarity index 61%
rename from addons/base_synchro/__openerp__.py
rename to addons/analytic_contract_expense_project/__openerp__.py
index a7e0cff1144..9dc4c114743 100644
--- a/addons/base_synchro/__openerp__.py
+++ b/addons/analytic_contract_expense_project/__openerp__.py
@@ -19,27 +19,28 @@
#
##############################################################################
-{
- "name": "Multi-DB Synchronization",
- "version": "0.1",
- "author": "OpenERP SA",
- "category": "Tools",
- "description": """
-Synchronization with all objects.
-=================================
-Configure servers and trigger synchronization with its database objects.
+{
+ 'name': 'Projects Management: hr_expense link',
+ 'version': '1.1',
+ 'category': 'Hidden',
+ 'description': """
+This module is for modifying project view to show some data related to the hr_expense module.
+======================================================================================================
+
""",
- "depends": ["base"],
- "demo_xml": [],
+ "author": "OpenERP S.A.",
+ "website": "http://www.openerp.com/",
+ "depends": ["analytic_contract_hr_expense","project"],
+ "init_xml": [],
"update_xml": [
- "wizard/base_synchro_view.xml",
- "base_synchro_view.xml",
- "security/ir.model.access.csv",
- ],
- "installable": True,
- "auto_install": False,
- "certificate": "00925429283944551453",
- "images": ['images/1_servers_synchro.jpeg','images/2_synchronize.jpeg','images/3_objects_synchro.jpeg',],
+ "analytic_contract_expense_project_view.xml",
+ ],
+ 'demo_xml': [],
+ "css" : [
+ ],
+ 'installable': True,
+ 'auto_install': True,
}
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/project_scrum/wizard/project_scrum_postpone.py b/addons/analytic_contract_expense_project/analytic_contract_expense_project.py
similarity index 62%
rename from addons/project_scrum/wizard/project_scrum_postpone.py
rename to addons/analytic_contract_expense_project/analytic_contract_expense_project.py
index 52a12446c23..efbb8b75a9e 100644
--- a/addons/project_scrum/wizard/project_scrum_postpone.py
+++ b/addons/analytic_contract_expense_project/analytic_contract_expense_project.py
@@ -18,15 +18,20 @@
# along with this program. If not, see .
#
##############################################################################
-from osv import osv
-from osv import fields
-class postpone_wizard(osv.osv_memory):
- _name = "postpone.wizard"
- def button_postpone(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
- self.pool.get('project.scrum.product.backlog').button_postpone(cr, uid, context.get('active_ids',[]), context=context)
- return {}
-postpone_wizard()
+from osv import osv
+
+class project_project(osv.osv):
+ _inherit = "project.project"
+
+ def open_hr_expense(self, cr, uid, ids, context=None):
+ account_ids = [x.analytic_account_id.id for x in self.browse(cr, uid, ids, context=context)]
+ return self.pool.get('account.analytic.account').open_hr_expense(cr, uid, account_ids, context=context)
+
+ def hr_to_invoice_expense(self, cr, uid, ids, context=None):
+ account_ids = [x.analytic_account_id.id for x in self.browse(cr, uid, ids, context=context)]
+ return self.pool.get('account.analytic.account').hr_to_invoice_expense(cr, uid, account_ids, context=context)
+
+project_project()
+
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/analytic_contract_expense_project/analytic_contract_expense_project_view.xml b/addons/analytic_contract_expense_project/analytic_contract_expense_project_view.xml
new file mode 100644
index 00000000000..d4350c7325f
--- /dev/null
+++ b/addons/analytic_contract_expense_project/analytic_contract_expense_project_view.xml
@@ -0,0 +1,34 @@
+
+
+
+
+ project.project.form.expense.inherit
+ project.project
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/base_module_quality/object_test/__init__.py b/addons/analytic_contract_hr_expense/__init__.py
similarity index 96%
rename from addons/base_module_quality/object_test/__init__.py
rename to addons/analytic_contract_hr_expense/__init__.py
index f1d0e2c7767..ca4044b0584 100644
--- a/addons/base_module_quality/object_test/__init__.py
+++ b/addons/analytic_contract_hr_expense/__init__.py
@@ -19,5 +19,6 @@
#
##############################################################################
+import analytic_contract_hr_expense
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/web_livechat/__openerp__.py b/addons/analytic_contract_hr_expense/__openerp__.py
similarity index 60%
rename from addons/web_livechat/__openerp__.py
rename to addons/analytic_contract_hr_expense/__openerp__.py
index 4be4ff1d1e8..fb56d3d1749 100644
--- a/addons/web_livechat/__openerp__.py
+++ b/addons/analytic_contract_hr_expense/__openerp__.py
@@ -2,7 +2,7 @@
##############################################################################
#
# OpenERP, Open Source Management Solution
-# Copyright (C) 2010-2011 OpenERP s.a. ().
+# Copyright (C) 2004-2010 Tiny SPRL ().
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU Affero General Public License as
@@ -18,34 +18,30 @@
# along with this program. If not, see .
#
##############################################################################
-{
- 'name': 'Live Chat Support',
- 'version': '2.0',
- 'category': 'Tools',
- 'complexity': "easy",
- 'description': """
-Enable live chat support for those who have a maintenance contract.
-===================================================================
-Add "Support" button in header from where you can access OpenERP Support.
- """,
- 'author': 'OpenERP SA',
- 'website': 'http://openerp.com',
- 'depends': ['base'],
- 'update_xml': [],
- 'js' : [
- 'static/src/js/web_livechat.js',
- ],
- 'css' : [
- 'static/src/css/lc.css',
- ],
- 'qweb' : [
- "static/src/xml/*.xml",
- ],
+
+{
+ 'name': 'Contracts Management: hr_expense link',
+ 'version': '1.1',
+ 'category': 'Hidden',
+ 'description': """
+This module is for modifying account analytic view to show some data related to the hr_expense module.
+======================================================================================================
+
+""",
+ "author": "OpenERP S.A.",
+ "website": "http://www.openerp.com/",
+ "depends": ["hr_expense","account_analytic_analysis"],
+ "init_xml": [],
+ "update_xml": [
+ "analytic_contract_hr_expense_view.xml",
+ ],
+ 'demo_xml': [],
+ "css" : [
+ ],
'installable': True,
- 'auto_install': False,
- 'certificate': '0013762192410413',
- 'images': ['static/src/img/web_livechat_support.jpeg'],
+ 'auto_install': True,
+ 'certificate': '',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py
new file mode 100644
index 00000000000..8f24f12808b
--- /dev/null
+++ b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py
@@ -0,0 +1,160 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Tiny SPRL ().
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+
+from osv import osv, fields
+from osv.orm import intersect, except_orm
+import tools.sql
+from tools.translate import _
+from decimal_precision import decimal_precision as dp
+
+
+class account_analytic_account(osv.osv):
+ _name = "account.analytic.account"
+ _inherit = "account.analytic.account"
+
+ def _get_total_estimation(self, account):
+ tot_est = super(account_analytic_account, self)._get_total_estimation(account)
+ if account.charge_expenses:
+ tot_est += account.est_expenses
+ return tot_est
+
+ def _get_total_invoiced(self, account):
+ total_invoiced = super(account_analytic_account, self)._get_total_invoiced(account)
+ if account.charge_expenses:
+ total_invoiced += account.expense_invoiced
+ return total_invoiced
+
+ def _get_total_remaining(self, account):
+ total_remaining = super(account_analytic_account, self)._get_total_remaining(account)
+ if account.charge_expenses:
+ total_remaining += account.remaining_expense
+ return total_remaining
+
+ def _get_total_toinvoice(self, account):
+ total_toinvoice = super(account_analytic_account, self)._get_total_toinvoice(account)
+ if account.charge_expenses:
+ total_toinvoice += account.expense_to_invoice
+ return total_toinvoice
+
+ def _remaining_expnse_calc(self, cr, uid, ids, name, arg, context=None):
+ res = {}
+ for account in self.browse(cr, uid, ids, context=context):
+ if account.est_expenses != 0:
+ res[account.id] = max(account.est_expenses - account.expense_invoiced, account.expense_to_invoice)
+ else:
+ res[account.id]=0.0
+ return res
+
+ def _expense_to_invoice_calc(self, cr, uid, ids, name, arg, context=None):
+ res = {}
+ res_final = {}
+ child_ids = tuple(ids) #We don't want consolidation for each of these fields because those complex computation is resource-greedy.
+ for i in child_ids:
+ res[i] = 0.0
+ if not child_ids:
+ return res
+
+ if child_ids:
+ cr.execute("""SELECT account_analytic_account.id, \
+ COALESCE(SUM (product_template.list_price * \
+ account_analytic_line.unit_amount * \
+ ((100-hr_timesheet_invoice_factor.factor)/100)), 0.0) \
+ AS ca_to_invoice \
+ FROM product_template \
+ JOIN product_product \
+ ON product_template.id = product_product.product_tmpl_id \
+ JOIN account_analytic_line \
+ ON account_analytic_line.product_id = product_product.id \
+ JOIN account_analytic_journal \
+ ON account_analytic_line.journal_id = account_analytic_journal.id \
+ JOIN account_analytic_account \
+ ON account_analytic_account.id = account_analytic_line.account_id \
+ JOIN hr_timesheet_invoice_factor \
+ ON hr_timesheet_invoice_factor.id = account_analytic_account.to_invoice \
+ WHERE account_analytic_account.id IN %s \
+ AND account_analytic_line.invoice_id IS NULL \
+ AND account_analytic_line.to_invoice IS NOT NULL \
+ AND account_analytic_journal.type = 'purchase' \
+ GROUP BY account_analytic_account.id;""",(child_ids,))
+ for account_id, sum in cr.fetchall():
+ res[account_id] = sum
+ res_final = res
+ return res_final
+
+ def _expense_invoiced_calc(self, cr, uid, ids, name, arg, context=None):
+ lines_obj = self.pool.get('account.analytic.line')
+ res = {}
+ for account in self.browse(cr, uid, ids, context=context):
+ res[account.id] = 0.0
+ line_ids = lines_obj.search(cr, uid, [('account_id','=', account.id), ('invoice_id','!=',False), ('to_invoice','!=', False), ('journal_id.type', '=', 'purchase')], context=context)
+ for line in lines_obj.browse(cr, uid, line_ids, context=context):
+ res[account.id] += line.invoice_id.amount_untaxed
+ return res
+
+
+ _columns = {
+ 'charge_expenses' : fields.boolean('Charge Expenses'),
+ 'expense_invoiced' : fields.function(_expense_invoiced_calc, type="float"),
+ 'expense_to_invoice' : fields.function(_expense_to_invoice_calc, type='float'),
+ 'remaining_expense' : fields.function(_remaining_expnse_calc, type="float"),
+ 'est_expenses': fields.float('Estimation of Expenses to Invoice'),
+ }
+
+ def on_change_template(self, cr, uid, id, template_id, context=None):
+ res = super(account_analytic_account, self).on_change_template(cr, uid, id, template_id, context=context)
+ if template_id and 'value' in res:
+ template = self.browse(cr, uid, template_id, context=context)
+ res['value']['charge_expenses'] = template.charge_expenses
+ res['value']['est_expenses'] = template.est_expenses
+ return res
+
+ def open_hr_expense(self, cr, uid, ids, context=None):
+ line_ids = self.pool.get('hr.expense.line').search(cr,uid,[('analytic_account', 'in', ids)])
+ domain = [('line_ids', 'in', line_ids)]
+ names = [record.name for record in self.browse(cr, uid, ids, context=context)]
+ name = _('Expenses of %s') % ','.join(names)
+ return {
+ 'type': 'ir.actions.act_window',
+ 'name': name,
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'domain' : domain,
+ 'res_model': 'hr.expense.expense',
+ 'nodestroy': True,
+ }
+
+ def hr_to_invoice_expense(self, cr, uid, ids, context=None):
+ domain = [('invoice_id','=',False),('to_invoice','!=',False), ('journal_id.type', '=', 'purchase'), ('account_id', 'in', ids)]
+ names = [record.name for record in self.browse(cr, uid, ids, context=context)]
+ name = _('Expenses to Invoice of %s') % ','.join(names)
+ return {
+ 'type': 'ir.actions.act_window',
+ 'name': name,
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'domain' : domain,
+ 'res_model': 'account.analytic.line',
+ 'nodestroy': True,
+ }
+
+account_analytic_account()
+
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/analytic_contract_hr_expense/analytic_contract_hr_expense_view.xml b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense_view.xml
new file mode 100644
index 00000000000..0148c05d0b4
--- /dev/null
+++ b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense_view.xml
@@ -0,0 +1,58 @@
+
+
+
+
+ account.analytic.account.form.expense.inherit
+ account.analytic.account
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/addons/base_module_quality/pep8_test/__init__.py b/addons/analytic_contract_project/__init__.py
similarity index 96%
rename from addons/base_module_quality/pep8_test/__init__.py
rename to addons/analytic_contract_project/__init__.py
index f1d0e2c7767..dd60ac32096 100644
--- a/addons/base_module_quality/pep8_test/__init__.py
+++ b/addons/analytic_contract_project/__init__.py
@@ -19,5 +19,6 @@
#
##############################################################################
+import analytic_contract_project
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_invoice_layout/__init__.py b/addons/analytic_contract_project/__openerp__.py
similarity index 70%
rename from addons/account_invoice_layout/__init__.py
rename to addons/analytic_contract_project/__openerp__.py
index 779249d794c..7ad28c911ba 100644
--- a/addons/account_invoice_layout/__init__.py
+++ b/addons/analytic_contract_project/__openerp__.py
@@ -19,9 +19,20 @@
#
##############################################################################
-import account_invoice_layout
-import report
-import wizard
-
+{
+ "name" : "Contract On Project",
+ "version": "1.1",
+ "author" : "OpenERP SA",
+ 'category': 'Hidden',
+ "website" : "http://www.openerp.com",
+ "depends" : ["project", "account_analytic_analysis"],
+ "description": """
+ Add "Contract Data" in project view.
+ """,
+ "init_xml" : [],
+ "update_xml": ["analytic_contract_project_view.xml"],
+ 'demo_xml': [],
+ 'installable': True,
+ 'auto_install': True,
+}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/analytic_contract_project/analytic_contract_project.py b/addons/analytic_contract_project/analytic_contract_project.py
new file mode 100644
index 00000000000..6221617637e
--- /dev/null
+++ b/addons/analytic_contract_project/analytic_contract_project.py
@@ -0,0 +1,83 @@
+# -*- coding: utf-8 -*-
+##############################################################################
+#
+# OpenERP, Open Source Management Solution
+# Copyright (C) 2004-2010 Tiny SPRL ().
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as
+# published by the Free Software Foundation, either version 3 of the
+# License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU Affero General Public License for more details.
+#
+# You should have received a copy of the GNU Affero General Public License
+# along with this program. If not, see .
+#
+##############################################################################
+
+from osv import fields, osv
+from tools.translate import _
+
+class project_project(osv.osv):
+ _inherit = 'project.project'
+
+ _defaults = {
+ 'use_timesheets': True,
+ }
+
+ def open_sale_order_lines(self,cr,uid,ids,context=None):
+ account_ids = [x.analytic_account_id.id for x in self.browse(cr, uid, ids, context=context)]
+ return self.pool.get('account.analytic.account').open_sale_order_lines(cr, uid, account_ids, context=context)
+
+ def open_timesheets_to_invoice(self,cr,uid,ids,context=None):
+ if context is None:
+ context = {}
+ analytic_account_id = self.browse(cr, uid, ids[0], context=context).analytic_account_id.id
+ context.update({'search_default_account_id': analytic_account_id, 'default_account_id': analytic_account_id, 'search_default_to_invoice': 1})
+ return {
+ 'type': 'ir.actions.act_window',
+ 'name': _('Timesheet Lines to Invoice'),
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'context': context,
+ 'domain' : [('invoice_id','=',False),('to_invoice','!=',False), ('journal_id.type', '=', 'general')],
+ 'res_model': 'account.analytic.line',
+ 'nodestroy': True,
+ }
+
+ def open_timesheets(self, cr, uid, ids, context=None):
+ """ open Timesheets view """
+ project = self.browse(cr, uid, ids[0], context)
+ try:
+ journal_id = self.pool.get('ir.model.data').get_object(cr, uid, 'hr_timesheet', 'analytic_journal').id
+ except ValueError:
+ journal_id = False
+ view_context = {
+ 'search_default_account_id': [project.analytic_account_id.id],
+ 'default_account_id': project.analytic_account_id.id,
+ 'default_journal_id': journal_id,
+ }
+ return {
+ 'type': 'ir.actions.act_window',
+ 'name': _('Bill Tasks Works'),
+ 'res_model': 'account.analytic.line',
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'context': view_context,
+ 'nodestroy': True,
+ }
+project_project()
+
+class task(osv.osv):
+ _inherit = "project.task"
+
+ def create(self, cr, uid, vals, context=None):
+ task_id = super(task, self).create(cr, uid, vals, context=context)
+ task_browse = self.browse(cr, uid, task_id, context=context)
+ self.pool.get('account.analytic.account').message_append_note(cr, uid, [task_browse.project_id.analytic_account_id.id], body=_("Task %s has been created.") % (task_browse.name), context=context)
+ return task_id
+task()
diff --git a/addons/analytic_contract_project/analytic_contract_project_view.xml b/addons/analytic_contract_project/analytic_contract_project_view.xml
new file mode 100644
index 00000000000..0e61fe08d01
--- /dev/null
+++ b/addons/analytic_contract_project/analytic_contract_project_view.xml
@@ -0,0 +1,128 @@
+
+
+
+
+
+ project.project.form.inherit
+ project.project
+ form
+
+
+
+
+
+
+
+
+
+ -
+
+
+
+
+ / Remaining:
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Inherit project form : Invoicing Data
+ project.project
+ form
+
+
+
+
+
+
+
+
+
+
+
+
+ Inherit contract form : adding UoM
+ account.analytic.account
+ form
+
+ 50
+
+
+
+
+
+
+
+
diff --git a/addons/analytic_journal_billing_rate/__openerp__.py b/addons/analytic_journal_billing_rate/__openerp__.py
deleted file mode 100644
index b8e8ab7baf5..00000000000
--- a/addons/analytic_journal_billing_rate/__openerp__.py
+++ /dev/null
@@ -1,46 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-{
- 'name': 'Billing Rates on Contracts',
- 'version': '1.0',
- 'category': 'Sales Management',
- 'description': """
-This module allows you to define what is the default invoicing rate for a specific journal on a given account.
-==============================================================================================================
-
-This is mostly used when a user encodes his timesheet: the values are retrieved and the fields are auto-filled. But the possibility to change these values is still available.
-
-Obviously if no data has been recorded for the current account, the default value is given as usual by the account data so that this module is perfectly compatible with older configurations.
-
- """,
- 'author': 'OpenERP SA',
- 'website': 'http://www.openerp.com',
- 'images': ['images/analytic_journal_billing_rate.jpeg'],
- 'depends': ['analytic_user_function', 'account', 'hr_timesheet_invoice'],
- 'init_xml': [],
- 'update_xml': ['analytic_journal_billing_rate_view.xml', 'security/ir.model.access.csv'],
- 'demo_xml': [],
- 'installable': True,
- 'auto_install': False,
- 'certificate': '0030271787965',
-}
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/analytic_journal_billing_rate/analytic_journal_billing_rate.py b/addons/analytic_journal_billing_rate/analytic_journal_billing_rate.py
deleted file mode 100644
index 0896e7d443c..00000000000
--- a/addons/analytic_journal_billing_rate/analytic_journal_billing_rate.py
+++ /dev/null
@@ -1,121 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2010 Tiny SPRL ().
-#
-# This program is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as
-# published by the Free Software Foundation, either version 3 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Affero General Public License for more details.
-#
-# You should have received a copy of the GNU Affero General Public License
-# along with this program. If not, see .
-#
-##############################################################################
-
-from osv import fields,osv
-
-class analytic_journal_rate_grid(osv.osv):
-
- _name="analytic_journal_rate_grid"
- _description= "Relation table between journals and billing rates"
- _columns={
- 'journal_id': fields.many2one('account.analytic.journal', 'Analytic Journal', required=True,),
- 'account_id': fields.many2one("account.analytic.account", "Analytic Account", required=True,),
- 'rate_id': fields.many2one("hr_timesheet_invoice.factor", "Invoicing Rate",),
- }
-
-analytic_journal_rate_grid()
-
-class account_analytic_account(osv.osv):
-
- _inherit = "account.analytic.account"
- _columns = {
- 'journal_rate_ids': fields.one2many('analytic_journal_rate_grid', 'account_id', 'Invoicing Rate per Journal'),
- }
-
-account_analytic_account()
-
-class hr_analytic_timesheet(osv.osv):
-
- _inherit = "hr.analytic.timesheet"
-
-
- def on_change_account_id(self, cr, uid, ids, account_id, user_id=False, unit_amount=0, journal_id=0):
- res = {}
- if not (account_id):
- #avoid a useless call to super
- return res
-
- if not (journal_id):
- return super(hr_analytic_timesheet, self).on_change_account_id(cr, uid, ids,account_id, user_id, unit_amount)
-
- #get the browse record related to journal_id and account_id
- temp = self.pool.get('analytic_journal_rate_grid').search(cr, uid, [('journal_id', '=', journal_id),('account_id', '=', account_id) ])
-
- if not temp:
- #if there isn't any record for this journal_id and account_id
- return super(hr_analytic_timesheet, self).on_change_account_id(cr, uid, ids,account_id,user_id, unit_amount)
- else:
- #get the old values from super and add the value from the new relation analytic_journal_rate_grid
- r = self.pool.get('analytic_journal_rate_grid').browse(cr, uid, temp)[0]
- res.setdefault('value',{})
- res['value']= super(hr_analytic_timesheet, self).on_change_account_id(cr, uid, ids, account_id, user_id, unit_amount)['value']
- if r.rate_id.id:
- res['value']['to_invoice'] = r.rate_id.id
-
- return res
-
-
- def on_change_journal_id(self, cr, uid, ids, journal_id, account_id):
- res = {}
- if not (journal_id and account_id):
- return res
-
- #get the browse record related to journal_id and account_id
- temp = self.pool.get('analytic_journal_rate_grid').search(cr, uid, [('journal_id', '=', journal_id),('account_id', '=', account_id) ])
- if temp:
- #add the value from the new relation analytic_user_funct_grid
- r = self.pool.get('analytic_journal_rate_grid').browse(cr, uid, temp)[0]
- res.setdefault('value',{})
- if r.rate_id.id:
- res['value']['to_invoice'] = r.rate_id.id
- return res
- to_invoice = self.pool.get('account.analytic.account').read(cr, uid, [account_id], ['to_invoice'])[0]['to_invoice']
- if to_invoice:
- res.setdefault('value',{})
- res['value']['to_invoice'] = to_invoice[0]
-
- return res
-
-hr_analytic_timesheet()
-
-
-class account_invoice(osv.osv):
- _inherit = "account.invoice"
-
- def _get_analytic_lines(self, cr, uid, id, context=None):
- iml = super(account_invoice, self)._get_analytic_lines(cr, uid, id, context=context)
- for il in iml:
- if il['account_analytic_id'] and il.get('analytic_lines', False):
-
- #get the browse record related to journal_id and account_id
- journal_id = il['analytic_lines'][0][2]['journal_id']
- account_id = il['analytic_lines'][0][2]['account_id']
- if journal_id and account_id:
- temp = self.pool.get('analytic_journal_rate_grid').search(cr, uid, [('journal_id', '=', journal_id),('account_id', '=', account_id)], context=context)
-
- if temp:
- r = self.pool.get('analytic_journal_rate_grid').browse(cr, uid, temp, context=context)[0]
- il['analytic_lines'][0][2]['to_invoice'] = r.rate_id.id
- return iml
-
-account_invoice()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-
diff --git a/addons/analytic_journal_billing_rate/analytic_journal_billing_rate_view.xml b/addons/analytic_journal_billing_rate/analytic_journal_billing_rate_view.xml
deleted file mode 100644
index f275583826a..00000000000
--- a/addons/analytic_journal_billing_rate/analytic_journal_billing_rate_view.xml
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
-
-
-
- analytic_journal_rate_grid.tree
- analytic_journal_rate_grid
- tree
-
-
-
-
-
-
-
-
-
- analytic_journal_rate_grid.form
- analytic_journal_rate_grid
- form
-
-
-
-
-
-
-
-
-
-
- account.analytic.account.form
- account.analytic.account
- form
-
-
-
-
-
-
-
-
-
-
- hr.timesheet.sheet.form
- hr_timesheet_sheet.sheet
- form
-
-
-
-
-
-
-
-
-
-
- hr.analytic.timesheet.form
- hr.analytic.timesheet
- form
-
-
-
-
-
-
-
-
-
- hr.analytic.timesheet.form
- hr.analytic.timesheet
- form
-
-
-
-
-
-
-
-
-
-
diff --git a/addons/analytic_journal_billing_rate/i18n/analytic_journal_billing_rate.pot b/addons/analytic_journal_billing_rate/i18n/analytic_journal_billing_rate.pot
deleted file mode 100644
index c83f406c70b..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/analytic_journal_billing_rate.pot
+++ /dev/null
@@ -1,78 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.1rc1\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-02-08 00:35+0000\n"
-"Last-Translator: <>\n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: \n"
-"Plural-Forms: \n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
-
diff --git a/addons/analytic_journal_billing_rate/i18n/ar.po b/addons/analytic_journal_billing_rate/i18n/ar.po
deleted file mode 100644
index 76941f061e5..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/ar.po
+++ /dev/null
@@ -1,89 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 5.0.4\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-01-05 20:55+0000\n"
-"Last-Translator: kifcaliph \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "يومية تحليلية"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "قيمة الفواتير لكل يومية للحساب التحليلي هذا"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "حساب تحليلي"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "جدول العلاقة بين اليوميات ومعدلات الفواتير"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "قيمة الفاتورة لكل يومية"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "فاتورة"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "قيمة الفاتورة"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "خطأ! لا يمكنك إنشاء حسابات تحليلية متكررة."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "خط سجل الدوام"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr "خطأ! العملة لابد و أن تكون مثل العملة للشركة المختارة"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "القيم التحليلية للفواتير اليومية, حدد قيمة الفاتورة الافتراضية ليومية محددة"
diff --git a/addons/analytic_journal_billing_rate/i18n/bg.po b/addons/analytic_journal_billing_rate/i18n/bg.po
deleted file mode 100644
index 8ba12019391..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/bg.po
+++ /dev/null
@@ -1,93 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 5.0.4\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-03-01 20:24+0000\n"
-"Last-Translator: Dimitar Markov \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Аналитичен дневник"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Аналитична сметка"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Фактура"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "Грешка! Не можете да създавате рекурсивни аналитични сметки."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Ред в графика"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "Невалиден XML за преглед на архитектурата"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "Името на обекта трябва да започва с \"x_\" и да не съдържа никакви специални "
-#~ "символи!"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "Грешка! Валутата трябва да бъде същата като валутата на избраната компания"
diff --git a/addons/analytic_journal_billing_rate/i18n/bs.po b/addons/analytic_journal_billing_rate/i18n/bs.po
deleted file mode 100644
index da239c6ec7d..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/bs.po
+++ /dev/null
@@ -1,86 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2010-08-03 00:19+0000\n"
-"Last-Translator: Mantavya Gajjar (Open ERP) \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Analitička knjiženja"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Cijana naplate po knjiženju za ovo Analitičko konto"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Analitičko konto"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabela relacija između knjiženja i cijene naplate"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Cijena po knjiženju"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "Neodgovarajući XML za arhitekturu prikaza!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "Naziv objekta mora počinjati sa x_ i ne smije sadržavati specijalne znakove!"
diff --git a/addons/analytic_journal_billing_rate/i18n/ca.po b/addons/analytic_journal_billing_rate/i18n/ca.po
deleted file mode 100644
index 5b7cc0e6290..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/ca.po
+++ /dev/null
@@ -1,133 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2009-09-29 06:30+0000\n"
-"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
-"\n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diari analític"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Taxa de facturació per diari per aquesta compte analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Compte analític"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Taula de relació entre diaris i taxes de facturació"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Taxa de facturació per diari"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Taxa de facturació"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "Error! No podeu crear comptes analítics recursius."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línia del full de serveis"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "XML invàlid per a la definició de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "El nom de l'objecte ha de començar amb x_ i no contenir cap caràcter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Rati facturació diari analític"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "Error! La moneda ha de ser la mateixa que la moneda de la companyia "
-#~ "seleccionada"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Taxa de facturació d'un diari analític. Defineix la taxa de facturació per "
-#~ "defecte per a un diari en concret."
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Aquest mòdul us permet definir el percentatge de facturació per a un "
-#~ "cert diari en un compte donat. S'utilitza principalment quan un usuari "
-#~ "codifica el seu full de serveis: els valors són recuperats i els camps són "
-#~ "auto emplenats tot i que la possibilitat de canviar-los està encara "
-#~ "disponible.\n"
-#~ "\n"
-#~ "Òbviament si no s'ha guardat dades per al compte actual, es proporciona el "
-#~ "valor per defecte per a les dades del compte com sempre, pel que aquest "
-#~ "mòdul és perfectament compatible amb configuracions anteriors.\n"
-#~ "\n"
-#~ " "
diff --git a/addons/analytic_journal_billing_rate/i18n/cs.po b/addons/analytic_journal_billing_rate/i18n/cs.po
deleted file mode 100644
index a8a8e0a7357..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/cs.po
+++ /dev/null
@@ -1,78 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 5.0.4\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2009-02-03 06:24+0000\n"
-"Last-Translator: <>\n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
diff --git a/addons/analytic_journal_billing_rate/i18n/da.po b/addons/analytic_journal_billing_rate/i18n/da.po
deleted file mode 100644
index 76a0270f929..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/da.po
+++ /dev/null
@@ -1,79 +0,0 @@
-# Danish translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-11-09 21:41+0000\n"
-"Last-Translator: OpenERP Danmark / Henning Dinsen \n"
-"Language-Team: Danish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Faktura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
diff --git a/addons/analytic_journal_billing_rate/i18n/de.po b/addons/analytic_journal_billing_rate/i18n/de.po
deleted file mode 100644
index 61874c71a9a..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/de.po
+++ /dev/null
@@ -1,133 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-01-13 19:15+0000\n"
-"Last-Translator: Ferdinand @ Camptocamp \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr "Die Rechnungsnummer muss je Firma eindeutig sein"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Analytisches Journal"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr "ungültige BBA Kommunikations Stuktur"
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Abrechnungsquote nach Journal"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Analytisches Konto"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Relation zwischen Journal und Abrechnungsquote"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Abrechnungsquote nach Journal"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Rechnung"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-"Bestätigte und abgerechnete Zeitaufzeichungen können nicht geändert werden"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Abrechnungsquote"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "Fehler ! Sie können keine rekursiven Analytische Konten definieren."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Zeiterfassung Positionen"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "Fehlerhafter xml Code für diese Ansicht!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "Der Objekt Name muss mit einem x_ starten und darf keine Sonderzeichen "
-#~ "beinhalten"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Analytisches Journal Verrechnungssatz"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Abrechnungsquote für analytische Buchungen. Definieren Sie einen "
-#~ "Standardwert je spezifiziertem Journal."
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr "Fehler! Die Währung muss der Währung der gewählten Firma entsprechen"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Diese Anwendung ermöglicht Ihnen die Definition einer Standard "
-#~ "Abrechnungsquote für ein analytisches Konto bei Buchung im Kontext eines "
-#~ "bestimmten Journals. Angewendet wird die Abrechnungsquote meistens, wenn ein "
-#~ "Benutzer seine Zeiterfassung auf bestimmte Konten vornimmt. Dabei werden "
-#~ "dann die Konten und Beträge automatisch vorausgefüllt, mit der Möglichkeit "
-#~ "diese\n"
-#~ "individuell anzupassen.\n"
-#~ "\n"
-#~ " Wenn keine Konfiguration bei der Eingabe eines Kontos gefunden wird, "
-#~ "würde weiterhin der Standardwert des Kontos verwendet, so dass dieses Modul "
-#~ "gleichzeitig kompatibel mit älteren Konfigurationseinstellungen ist.\n"
-#~ "\n"
-#~ " "
diff --git a/addons/analytic_journal_billing_rate/i18n/el.po b/addons/analytic_journal_billing_rate/i18n/el.po
deleted file mode 100644
index e4447dc733b..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/el.po
+++ /dev/null
@@ -1,92 +0,0 @@
-# Greek translation for openobject-addons
-# Copyright (c) 2009 Rosetta Contributors and Canonical Ltd 2009
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2009.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2010-12-29 10:33+0000\n"
-"Last-Translator: Dimitris Andavoglou \n"
-"Language-Team: Greek \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Ημερολόγιο Αναλυτικής"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
-"Ποσοστό Τιμολόγησης ανα Ημερολόγιο για αυτόν τον Αναλυτικό Λογαριασμό"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Αναλυτικός Λογαριασμός"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Πίνακας σχέσεων μεταξύ ημερολογίων και ποσοστών χρέωσης"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Ποσό Τιμολόγησης ανα Ημερολόγιο"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Τιμολόγιο"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Ποσό Τιμολόγησης"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Γραμμή Φύλλου Xρόνου Eργασίας"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Ποσό Τιμολόγησης Ημερολόγιου Αναλυτικής"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "Άκυρο XML για Αρχιτεκτονική Όψης!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "Το όνομα του αντικειμένου θα πρέπει να ξεκινάει με x_ και να μην περιέχει "
-#~ "ειδικούς χαρακτήρες!"
diff --git a/addons/analytic_journal_billing_rate/i18n/en_GB.po b/addons/analytic_journal_billing_rate/i18n/en_GB.po
deleted file mode 100644
index be92d92aa3a..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/en_GB.po
+++ /dev/null
@@ -1,130 +0,0 @@
-# English (United Kingdom) translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-01-23 13:36+0000\n"
-"Last-Translator: mrx5682 \n"
-"Language-Team: English (United Kingdom) \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr "Invoice Number must be unique per Company!"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Analytic Journal"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr "Invalid BBA Structured Communication !"
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Billing Rate per Journal for this Analytic Account"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Analytic Account"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Relation table between journals and billing rates"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Invoicing Rate per Journal"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Invoice"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr "You cannot modify an entry in a Confirmed/Done timesheet !."
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Invoicing Rate"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "Error! You can not create recursive analytic accounts."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Timesheet Line"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "Error! The currency has to be the same as that of the selected company"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define the default invoicing rate for a "
-#~ "specific journal on a given account. This is mostly used when a user encodes "
-#~ "their timesheet: the values are retrieved and the fields are auto-filled... "
-#~ "but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given by the account data so that this module is perfectly "
-#~ "compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Analytic Journal Billing Rate"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "The Object name must start with x_ and not contain any special characters!"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "Invalid XML for View Architecture!"
diff --git a/addons/analytic_journal_billing_rate/i18n/es.po b/addons/analytic_journal_billing_rate/i18n/es.po
deleted file mode 100644
index 87fbe32c17d..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es.po
+++ /dev/null
@@ -1,133 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-01-11 10:47+0000\n"
-"Last-Translator: Borja López Soilán (NeoPolus) \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Error! No puede crear cuentas analíticas recursivas."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línea hoja de servicios"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "¡XML inválido para la definición de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún carácter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Tasa facturación diario analítico"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Este módulo le permite definir el porcentaje de facturación para un "
-#~ "cierto diario en una cuenta dada. Se utiliza principalmente cuando un "
-#~ "usuario codifica su hoja de servicios: los valores son recuperados y los "
-#~ "campos son auto rellenados aunque la posibilidad de cambiar estos valores "
-#~ "está todavía disponible.\n"
-#~ "\n"
-#~ " Obviamente si no se ha guardado datos para la cuenta actual, se "
-#~ "proporciona el valor por defecto para los datos de la cuenta como siempre "
-#~ "por lo que este módulo es perfectamente compatible con configuraciones "
-#~ "anteriores.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "¡Error! La divisa tiene que ser la misma que la establecida en la compañía "
-#~ "seleccionada"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Tasa de facturación de un diario analítico. Define la tasa de facturación "
-#~ "por defecto para un diario en concreto."
diff --git a/addons/analytic_journal_billing_rate/i18n/es_AR.po b/addons/analytic_journal_billing_rate/i18n/es_AR.po
deleted file mode 100644
index cb0058df1a3..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es_AR.po
+++ /dev/null
@@ -1,90 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 5.0.0\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2009-09-14 18:33+0000\n"
-"Last-Translator: Silvana Herrera \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Libro Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por libro diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta Analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre libros diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por libro diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Tasa facturación del libro diario analítico"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "XML inválido para la definición de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún caracter "
-#~ "especial!"
diff --git a/addons/analytic_journal_billing_rate/i18n/es_CR.po b/addons/analytic_journal_billing_rate/i18n/es_CR.po
deleted file mode 100644
index 5f24420f6e8..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es_CR.po
+++ /dev/null
@@ -1,136 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-02-15 15:53+0000\n"
-"Last-Translator: Freddy Gonzalez \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-16 05:06+0000\n"
-"X-Generator: Launchpad (build 14781)\n"
-"Language: \n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr "¡El número de factura debe ser único por compañía!"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr "¡Estructura de comunicación BBA no válida!"
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-"No se puede modificar una entrada en un parte de horas Confirmado / ¡Ya "
-"está!."
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Error! No puede crear cuentas analíticas recursivas."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línea hoja de servicios"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "¡XML inválido para la definición de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún carácter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Tasa facturación diario analítico"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Este módulo le permite definir el porcentaje de facturación para un "
-#~ "cierto diario en una cuenta dada. Se utiliza principalmente cuando un "
-#~ "usuario codifica su hoja de servicios: los valores son recuperados y los "
-#~ "campos son auto rellenados aunque la posibilidad de cambiar estos valores "
-#~ "está todavía disponible.\n"
-#~ "\n"
-#~ " Obviamente si no se ha guardado datos para la cuenta actual, se "
-#~ "proporciona el valor por defecto para los datos de la cuenta como siempre "
-#~ "por lo que este módulo es perfectamente compatible con configuraciones "
-#~ "anteriores.\n"
-#~ "\n"
-#~ " "
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "¡Error! La divisa tiene que ser la misma que la establecida en la compañía "
-#~ "seleccionada"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Tasa de facturación de un diario analítico. Define la tasa de facturación "
-#~ "por defecto para un diario en concreto."
diff --git a/addons/analytic_journal_billing_rate/i18n/es_EC.po b/addons/analytic_journal_billing_rate/i18n/es_EC.po
deleted file mode 100644
index adebfb2920a..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es_EC.po
+++ /dev/null
@@ -1,133 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-01-13 03:51+0000\n"
-"Last-Translator: Cristian Salamea (Gnuthink) \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Error! No puede crear cuentas analíticas recursivas."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línea hoja de servicios"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "¡XML inválido para la definición de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún carácter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Tasa facturación diario analítico"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Tasa de facturación diario analítico. Define la tasa de facturación por "
-#~ "defecto para un diario en concreto."
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "¡Error! La divisa tiene que ser la misma que la establecida en la compañía "
-#~ "seleccionada"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Este módulo le permite definir el porcentaje de facturación para un "
-#~ "cierto diario en una cuenta dada. Se utiliza principalmente cuando un "
-#~ "usuario codifica su hoja de servicios: los valores son recuperados y los "
-#~ "campos son auto rellenados aunque la posibilidad de cambiar estos valores "
-#~ "está todavía disponible.\n"
-#~ "\n"
-#~ " Obviamente si no se ha guardado datos para la cuenta actual, se "
-#~ "proporciona el valor por defecto para los datos de la cuenta como siempre "
-#~ "por lo que este módulo es perfectamente compatible con configuraciones "
-#~ "anteriores.\n"
-#~ "\n"
-#~ " "
diff --git a/addons/analytic_journal_billing_rate/i18n/es_MX.po b/addons/analytic_journal_billing_rate/i18n/es_MX.po
deleted file mode 100644
index be708d5fbe7..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es_MX.po
+++ /dev/null
@@ -1,124 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2011-01-03 16:56+0000\n"
-"PO-Revision-Date: 2011-01-11 10:47+0000\n"
-"Last-Translator: Borja López Soilán (NeoPolus) \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:37+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.module.module,description:analytic_journal_billing_rate.module_meta_information
-msgid ""
-"\n"
-"\n"
-" This module allows you to define what is the default invoicing rate for "
-"a specific journal on a given account. This is mostly used when a user "
-"encodes his timesheet: the values are retrieved and the fields are auto-"
-"filled... but the possibility to change these values is still available.\n"
-"\n"
-" Obviously if no data has been recorded for the current account, the "
-"default value is given as usual by the account data so that this module is "
-"perfectly compatible with older configurations.\n"
-"\n"
-" "
-msgstr ""
-"\n"
-"\n"
-" Este módulo le permite definir el porcentaje de facturación para un "
-"cierto diario en una cuenta dada. Se utiliza principalmente cuando un "
-"usuario codifica su hoja de servicios: los valores son recuperados y los "
-"campos son auto rellenados aunque la posibilidad de cambiar estos valores "
-"está todavía disponible.\n"
-"\n"
-" Obviamente si no se ha guardado datos para la cuenta actual, se "
-"proporciona el valor por defecto para los datos de la cuenta como siempre "
-"por lo que este módulo es perfectamente compatible con configuraciones "
-"anteriores.\n"
-"\n"
-" "
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.module.module,shortdesc:analytic_journal_billing_rate.module_meta_information
-msgid ""
-"Analytic Journal Billing Rate, Define the default invoicing rate for a "
-"specific journal"
-msgstr ""
-"Tasa de facturación de un diario analítico. Define la tasa de facturación "
-"por defecto para un diario en concreto."
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid ""
-"Error! The currency has to be the same as the currency of the selected "
-"company"
-msgstr ""
-"¡Error! La divisa tiene que ser la misma que la establecida en la compañía "
-"seleccionada"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Error! No puede crear cuentas analíticas recursivas."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línea hoja de servicios"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "¡XML inválido para la definición de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún carácter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Tasa facturación diario analítico"
diff --git a/addons/analytic_journal_billing_rate/i18n/es_PY.po b/addons/analytic_journal_billing_rate/i18n/es_PY.po
deleted file mode 100644
index 3cb80026dca..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es_PY.po
+++ /dev/null
@@ -1,121 +0,0 @@
-# Spanish (Paraguay) translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-03-07 23:16+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Spanish (Paraguay) \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta Analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Error! No puede crear cuentas analíticas recursivas."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línea hoja de servicios"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Tasa de facturación diario analítico. Define la tasa de facturación por "
-#~ "defecto para un diario en concreto."
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "¡Error! La moneda debe ser la misma que la moneda de la compañía seleccionada"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Este módulo le permite definir el porcentaje de facturación para un "
-#~ "cierto diario en una cuenta dada. Se utiliza principalmente cuando un "
-#~ "usuario codifica su hoja de servicios: los valores son recuperados y los "
-#~ "campos son auto rellenados aunque la posibilidad de cambiar estos valores "
-#~ "está todavía disponible.\n"
-#~ "\n"
-#~ " Obviamente si no se ha guardado datos para la cuenta actual, se "
-#~ "proporciona el valor por defecto para los datos de la cuenta como siempre "
-#~ "por lo que este módulo es perfectamente compatible con configuraciones "
-#~ "anteriores.\n"
-#~ "\n"
-#~ " "
diff --git a/addons/analytic_journal_billing_rate/i18n/es_VE.po b/addons/analytic_journal_billing_rate/i18n/es_VE.po
deleted file mode 100644
index be708d5fbe7..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/es_VE.po
+++ /dev/null
@@ -1,124 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2011-01-03 16:56+0000\n"
-"PO-Revision-Date: 2011-01-11 10:47+0000\n"
-"Last-Translator: Borja López Soilán (NeoPolus) \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2011-09-05 05:37+0000\n"
-"X-Generator: Launchpad (build 13830)\n"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.module.module,description:analytic_journal_billing_rate.module_meta_information
-msgid ""
-"\n"
-"\n"
-" This module allows you to define what is the default invoicing rate for "
-"a specific journal on a given account. This is mostly used when a user "
-"encodes his timesheet: the values are retrieved and the fields are auto-"
-"filled... but the possibility to change these values is still available.\n"
-"\n"
-" Obviously if no data has been recorded for the current account, the "
-"default value is given as usual by the account data so that this module is "
-"perfectly compatible with older configurations.\n"
-"\n"
-" "
-msgstr ""
-"\n"
-"\n"
-" Este módulo le permite definir el porcentaje de facturación para un "
-"cierto diario en una cuenta dada. Se utiliza principalmente cuando un "
-"usuario codifica su hoja de servicios: los valores son recuperados y los "
-"campos son auto rellenados aunque la posibilidad de cambiar estos valores "
-"está todavía disponible.\n"
-"\n"
-" Obviamente si no se ha guardado datos para la cuenta actual, se "
-"proporciona el valor por defecto para los datos de la cuenta como siempre "
-"por lo que este módulo es perfectamente compatible con configuraciones "
-"anteriores.\n"
-"\n"
-" "
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Tasa de facturación por diario para esta cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Cuenta analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tabla de relación entre diarios y tasas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Tasa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.module.module,shortdesc:analytic_journal_billing_rate.module_meta_information
-msgid ""
-"Analytic Journal Billing Rate, Define the default invoicing rate for a "
-"specific journal"
-msgstr ""
-"Tasa de facturación de un diario analítico. Define la tasa de facturación "
-"por defecto para un diario en concreto."
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid ""
-"Error! The currency has to be the same as the currency of the selected "
-"company"
-msgstr ""
-"¡Error! La divisa tiene que ser la misma que la establecida en la compañía "
-"seleccionada"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Tasa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Error! No puede crear cuentas analíticas recursivas."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Línea hoja de servicios"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "¡XML inválido para la definición de la vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡El nombre del objeto debe empezar con x_ y no contener ningún carácter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Tasa facturación diario analítico"
diff --git a/addons/analytic_journal_billing_rate/i18n/et.po b/addons/analytic_journal_billing_rate/i18n/et.po
deleted file mode 100644
index 73bc7debeac..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/et.po
+++ /dev/null
@@ -1,86 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2009-11-09 16:30+0000\n"
-"Last-Translator: Fabien (Open ERP) \n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Analüütiline päevik"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Arve esitamise määr päeviku kohta sellel analüütilisel kontol"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Analüütiline konto"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Seoste tabel päevikute ja arve esitamise määrade vahel"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Arveldamise määr päeviku kohta"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Arveldamise määr"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "Vigane XML vaate arhitektuurile!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "Objekti nimi peab algama x_'ga ja ei tohi sisaldada ühtegi erisümbolit !"
diff --git a/addons/analytic_journal_billing_rate/i18n/fa.po b/addons/analytic_journal_billing_rate/i18n/fa.po
deleted file mode 100644
index d3f1924359b..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/fa.po
+++ /dev/null
@@ -1,79 +0,0 @@
-# Persian translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-12-18 17:01+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Persian \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr ""
diff --git a/addons/analytic_journal_billing_rate/i18n/fi.po b/addons/analytic_journal_billing_rate/i18n/fi.po
deleted file mode 100644
index fb9cce2592e..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/fi.po
+++ /dev/null
@@ -1,91 +0,0 @@
-# Finnish translation for openobject-addons
-# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2011.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-08-08 07:40+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Finnish \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Analyyttinen päiväkirja"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Veloitushinta päiväkirjoittain tälle analyyttiselle tilille"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Analyyttinen tili"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Suhdetaulu päiväkirjojen ja veloituhintojen välillä"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Veloitushinta päiväkirjoittain"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Lasku"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Laskutushinta"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "Virhe! Et voi luoda sisäkkäisiä analyyttisiä tilejä."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Tuntilistan rivi"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr "Virhe! Valuutan tulee olla sama kun valitun yrityksen valutta."
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Analyyttisen päiväkirjan veloitushinta, määrittele oletushinta tietylle "
-#~ "päiväkirjalle"
diff --git a/addons/analytic_journal_billing_rate/i18n/fr.po b/addons/analytic_journal_billing_rate/i18n/fr.po
deleted file mode 100644
index 60d66e52b74..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/fr.po
+++ /dev/null
@@ -1,133 +0,0 @@
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: OpenERP Server 6.0dev\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-01-18 16:44+0000\n"
-"Last-Translator: Maxime Chambreuil (http://www.savoirfairelinux.com) "
-"\n"
-"Language-Team: \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Journal Analytique"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Taux de Facturation par Journal pour ce Compte Analytique"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Compte Analytique"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Tableau de Relations entre les journaux et les taux de Facturations"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Taux de Facturation par Journal"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Facture"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Taux de Facturation"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "Erreur ! Vous ne pouvez pas créer de comptes analytiques récursifs."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Ligne de prestation"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "XML non valide pour l'architecture de la vue"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "Le nom de l'objet doit commencer avec x_ et ne pas contenir de charactères "
-#~ "spéciaux !"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Taux de Facturation des Journaux Analytiques"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Taux de facturation par journal analytique. Définir le taux de facturation "
-#~ "par défaut pour un journal donné"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr ""
-#~ "Erreur ! La monnaie doit être la même que la monnaie de la société "
-#~ "sélectionnée"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Ce module vous permet de définir quel est le taux de facturation par "
-#~ "défaut pour un journal spécifique et pour un compte donné. Ceci est surtout "
-#~ "utilisé quand un utilisateur saisit sa feuille de temps : les valeurs sont "
-#~ "récupérées et les champs sont automatiquement remplis... mais la possibilité "
-#~ "de changer ces valeurs est toujours disponible.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
diff --git a/addons/analytic_journal_billing_rate/i18n/gl.po b/addons/analytic_journal_billing_rate/i18n/gl.po
deleted file mode 100644
index 9a2ac1d8a96..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/gl.po
+++ /dev/null
@@ -1,132 +0,0 @@
-# translation of analytic-journal-billing-rate-es.po to Galego
-# Translation of OpenERP Server.
-# This file contains the translation of the following modules:
-# * analytic_journal_billing_rate
-#
-# Frco. Javier Rial Rodríguez , 2009.
-msgid ""
-msgstr ""
-"Project-Id-Version: analytic-journal-billing-rate-es\n"
-"Report-Msgid-Bugs-To: support@openerp.com\n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2011-02-07 10:37+0000\n"
-"Last-Translator: Alberto Luengo Cabanillas (Pexego) \n"
-"Language-Team: Galego \n"
-"MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=UTF-8\n"
-"Content-Transfer-Encoding: 8bit\n"
-"X-Launchpad-Export-Date: 2012-02-09 06:45+0000\n"
-"X-Generator: Launchpad (build 14763)\n"
-
-#. module: analytic_journal_billing_rate
-#: sql_constraint:account.invoice:0
-msgid "Invoice Number must be unique per Company!"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,journal_id:0
-msgid "Analytic Journal"
-msgstr "Diario analítico"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.invoice:0
-msgid "Invalid BBA Structured Communication !"
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: view:analytic_journal_rate_grid:0
-msgid "Billing Rate per Journal for this Analytic Account"
-msgstr "Taxa de facturación por diario para esta conta analítica"
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,account_id:0
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account
-msgid "Analytic Account"
-msgstr "Conta analítica"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid
-msgid "Relation table between journals and billing rates"
-msgstr "Táboa de relación entre diarios e taxas de facturación"
-
-#. module: analytic_journal_billing_rate
-#: field:account.analytic.account,journal_rate_ids:0
-msgid "Invoicing Rate per Journal"
-msgstr "Taxa de facturación por diario"
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice
-msgid "Invoice"
-msgstr "Factura"
-
-#. module: analytic_journal_billing_rate
-#: constraint:hr.analytic.timesheet:0
-msgid "You cannot modify an entry in a Confirmed/Done timesheet !."
-msgstr ""
-
-#. module: analytic_journal_billing_rate
-#: field:analytic_journal_rate_grid,rate_id:0
-msgid "Invoicing Rate"
-msgstr "Taxa de facturación"
-
-#. module: analytic_journal_billing_rate
-#: constraint:account.analytic.account:0
-msgid "Error! You can not create recursive analytic accounts."
-msgstr "¡Erro! Non pode crear contas analíticas recorrentes."
-
-#. module: analytic_journal_billing_rate
-#: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet
-msgid "Timesheet Line"
-msgstr "Liña de parte de horas"
-
-#~ msgid "Invalid XML for View Architecture!"
-#~ msgstr "¡XML non válido para a definición da vista!"
-
-#~ msgid ""
-#~ "The Object name must start with x_ and not contain any special character !"
-#~ msgstr ""
-#~ "¡O nome do obxecto debe comezar con x_ y e non conter ningún carácter "
-#~ "especial!"
-
-#~ msgid "Analytic Journal Billing Rate"
-#~ msgstr "Taxa facturación diario analítico"
-
-#~ msgid ""
-#~ "Analytic Journal Billing Rate, Define the default invoicing rate for a "
-#~ "specific journal"
-#~ msgstr ""
-#~ "Taxa Analítico de Diario de Facturación, Define o taxa de facturación por "
-#~ "defecto para un diario específico"
-
-#~ msgid ""
-#~ "Error! The currency has to be the same as the currency of the selected "
-#~ "company"
-#~ msgstr "¡Erro! A divisa ten que se-la mesma ca da compañía seleccionada"
-
-#~ msgid ""
-#~ "\n"
-#~ "\n"
-#~ " This module allows you to define what is the default invoicing rate for "
-#~ "a specific journal on a given account. This is mostly used when a user "
-#~ "encodes his timesheet: the values are retrieved and the fields are auto-"
-#~ "filled... but the possibility to change these values is still available.\n"
-#~ "\n"
-#~ " Obviously if no data has been recorded for the current account, the "
-#~ "default value is given as usual by the account data so that this module is "
-#~ "perfectly compatible with older configurations.\n"
-#~ "\n"
-#~ " "
-#~ msgstr ""
-#~ "\n"
-#~ "\n"
-#~ " Este módulo permítelle establecer cal é a taxa de facturación por "
-#~ "defecto para un diario específico nunha determinada conta. Isto é usado "
-#~ "sobre todo cando un usuario cubre o seu parte de horas: os valores son "
-#~ "recuperados e os campos son cubertos automáticamente... pero a posibilidade "
-#~ "de modificar estes valores aínda está dispoñible.\n"
-#~ "\n"
-#~ " Por suposto, se ningún dato foi rexistrado para a conta actual, o valor "
-#~ "por defecto é dado como de costume polos datos da conta para que este módulo "
-#~ "sexa perfectamente compatible coas configuracións máis antigas.\n"
-#~ "\n"
-#~ " "
diff --git a/addons/analytic_journal_billing_rate/i18n/gu.po b/addons/analytic_journal_billing_rate/i18n/gu.po
deleted file mode 100644
index c8034ae4d0c..00000000000
--- a/addons/analytic_journal_billing_rate/i18n/gu.po
+++ /dev/null
@@ -1,79 +0,0 @@
-# Gujarati translation for openobject-addons
-# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
-# This file is distributed under the same license as the openobject-addons package.
-# FIRST AUTHOR , 2012.
-#
-msgid ""
-msgstr ""
-"Project-Id-Version: openobject-addons\n"
-"Report-Msgid-Bugs-To: FULL NAME \n"
-"POT-Creation-Date: 2012-02-08 00:35+0000\n"
-"PO-Revision-Date: 2012-03-06 18:22+0000\n"
-"Last-Translator: FULL NAME \n"
-"Language-Team: Gujarati