diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py
index ebbd5459cea..c538614fd0f 100644
--- a/addons/account/__openerp__.py
+++ b/addons/account/__openerp__.py
@@ -159,6 +159,5 @@ for a particular financial year and for preparation of vouchers there is a modul
],
'installable': True,
'auto_install': False,
- 'certificate': '0080331923549',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/account.py b/addons/account/account.py
index c2e6f3d1221..fbbbfd64537 100644
--- a/addons/account/account.py
+++ b/addons/account/account.py
@@ -31,7 +31,7 @@ import decimal_precision as dp
from tools.translate import _
from tools.float_utils import float_round
from openerp import SUPERUSER_ID
-
+import tools
_logger = logging.getLogger(__name__)
@@ -227,7 +227,7 @@ class account_account(osv.osv):
while pos < len(args):
if args[pos][0] == 'code' and args[pos][1] in ('like', 'ilike') and args[pos][2]:
- args[pos] = ('code', '=like', str(args[pos][2].replace('%', ''))+'%')
+ args[pos] = ('code', '=like', tools.ustr(args[pos][2].replace('%', ''))+'%')
if args[pos][0] == 'journal_id':
if not args[pos][2]:
del args[pos]
@@ -682,7 +682,7 @@ class account_journal_view(osv.osv):
_name = "account.journal.view"
_description = "Journal View"
_columns = {
- 'name': fields.char('Journal View', size=64, required=True),
+ 'name': fields.char('Journal View', size=64, required=True, translate=True),
'columns_id': fields.one2many('account.journal.column', 'view_id', 'Columns')
}
_order = "name"
@@ -1908,7 +1908,7 @@ class account_tax(osv.osv):
'ref_tax_sign': fields.float('Tax Code Sign', help="Usually 1 or -1."),
'include_base_amount': fields.boolean('Included in base amount', help="Indicates if the amount of tax must be included in the base amount for the computation of the next taxes"),
'company_id': fields.many2one('res.company', 'Company', required=True),
- 'description': fields.char('Tax Code',size=32),
+ 'description': fields.char('Tax Code'),
'price_include': fields.boolean('Tax Included in Price', help="Check this if the price you use on the product and invoices includes this tax."),
'type_tax_use': fields.selection([('sale','Sale'),('purchase','Purchase'),('all','All')], 'Tax Application', required=True)
@@ -2518,7 +2518,7 @@ class account_account_template(osv.osv):
'reconcile': fields.boolean('Allow Reconciliation', help="Check this option if you want the user to reconcile entries in this account."),
'shortcut': fields.char('Shortcut', size=12),
'note': fields.text('Note'),
- 'parent_id': fields.many2one('account.account.template', 'Parent Account Template', ondelete='cascade'),
+ 'parent_id': fields.many2one('account.account.template', 'Parent Account Template', ondelete='cascade', domain=[('type','=','view')]),
'child_parent_ids':fields.one2many('account.account.template', 'parent_id', 'Children'),
'tax_ids': fields.many2many('account.tax.template', 'account_account_template_tax_rel', 'account_id', 'tax_id', 'Default Taxes'),
'nocreate': fields.boolean('Optional create', help="If checked, the new chart of accounts will not contain this by default."),
@@ -2536,20 +2536,6 @@ class account_account_template(osv.osv):
(_check_recursion, 'Error!\nYou cannot create recursive account templates.', ['parent_id']),
]
- def create(self, cr, uid, vals, context=None):
- if 'parent_id' in vals:
- parent = self.read(cr, uid, [vals['parent_id']], ['type'])
- if parent and parent[0]['type'] != 'view':
- raise osv.except_osv(_('Warning!'), _("You may only select a parent account of type 'View'."))
- return super(account_account_template, self).create(cr, uid, vals, context=context)
-
- def write(self, cr, uid, ids, vals, context=None):
- if 'parent_id' in vals:
- parent = self.read(cr, uid, [vals['parent_id']], ['type'])
- if parent and parent[0]['type'] != 'view':
- raise osv.except_osv(_('Warning!'), _("You may only select a parent account of type 'View'."))
- return super(account_account_template, self).write(cr, uid, ids, vals, context=context)
-
def name_get(self, cr, uid, ids, context=None):
if not ids:
return []
@@ -2828,7 +2814,7 @@ class account_tax_template(osv.osv):
'ref_base_sign': fields.float('Base Code Sign', help="Usually 1 or -1."),
'ref_tax_sign': fields.float('Tax Code Sign', help="Usually 1 or -1."),
'include_base_amount': fields.boolean('Include in Base Amount', help="Set if the amount of tax must be included in the base amount before computing the next taxes."),
- 'description': fields.char('Internal Name', size=32),
+ 'description': fields.char('Internal Name'),
'type_tax_use': fields.selection([('sale','Sale'),('purchase','Purchase'),('all','All')], 'Tax Use In', required=True,),
'price_include': fields.boolean('Tax Included in Price', help="Check this if the price you use on the product and invoices includes this tax."),
}
diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py
index 9889eadf387..b4fc2388a68 100644
--- a/addons/account/account_bank_statement.py
+++ b/addons/account/account_bank_statement.py
@@ -457,6 +457,8 @@ class account_bank_statement(osv.osv):
return res and res[0] or 0.0
def onchange_journal_id(self, cr, uid, statement_id, journal_id, context=None):
+ if not journal_id:
+ return {}
balance_start = self._compute_balance_end_real(cr, uid, journal_id, context=context)
journal_data = self.pool.get('account.journal').read(cr, uid, journal_id, ['default_debit_account_id', 'company_id'], context=context)
diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py
index aff38d71cfe..a1c53eff4b1 100644
--- a/addons/account/account_invoice.py
+++ b/addons/account/account_invoice.py
@@ -508,8 +508,10 @@ class account_invoice(osv.osv):
if journal_id:
journal = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context)
currency_id = journal.currency and journal.currency.id or journal.company_id.currency_id.id
+ company_id = journal.company_id.id
result = {'value': {
'currency_id': currency_id,
+ 'company_id': company_id,
}
}
return result
@@ -1371,7 +1373,10 @@ class account_invoice_line(osv.osv):
'partner_id': fields.related('invoice_id','partner_id',type='many2one',relation='res.partner',string='Partner',store=True)
}
- def _default_account_id(self, cr, uid, ids, context=None):
+ def _default_account_id(self, cr, uid, context=None):
+ # XXX this gets the default account for the user's company,
+ # it should get the default account for the invoice's company
+ # however, the invoice's company does not reach this point
prop = self.pool.get('ir.property').get(cr, uid, 'property_account_income_categ', 'product.category', context=context)
return prop and prop.id or False
@@ -1401,7 +1406,7 @@ class account_invoice_line(osv.osv):
context = {}
company_id = company_id if company_id != None else context.get('company_id',False)
context = dict(context)
- context.update({'company_id': company_id})
+ context.update({'company_id': company_id, 'force_company': company_id})
if not partner_id:
raise osv.except_osv(_('No Partner Defined !'),_("You must first select a partner !") )
if not product:
@@ -1556,16 +1561,19 @@ class account_invoice_line(osv.osv):
def onchange_account_id(self, cr, uid, ids, product_id, partner_id, inv_type, fposition_id, account_id):
if not account_id:
return {}
- taxes = self.pool.get('account.account').browse(cr, uid, account_id).tax_ids
+ unique_tax_ids = []
fpos = fposition_id and self.pool.get('account.fiscal.position').browse(cr, uid, fposition_id) or False
- tax_ids = self.pool.get('account.fiscal.position').map_tax(cr, uid, fpos, taxes)
-
- product_change_result = self.product_id_change(cr, uid, ids, product_id, False, type=inv_type,
- partner_id=partner_id, fposition_id=fposition_id)
- unique_tax_ids = set(tax_ids)
- if product_change_result and 'value' in product_change_result and 'invoice_line_tax_id' in product_change_result['value']:
- unique_tax_ids |= set(product_change_result['value']['invoice_line_tax_id'])
- return {'value':{'invoice_line_tax_id': list(unique_tax_ids)}}
+ account = self.pool.get('account.account').browse(cr, uid, account_id)
+ if not product_id:
+ taxes = account.tax_ids
+ unique_tax_ids = self.pool.get('account.fiscal.position').map_tax(cr, uid, fpos, taxes)
+ else:
+ product_change_result = self.product_id_change(cr, uid, ids, product_id, False, type=inv_type,
+ partner_id=partner_id, fposition_id=fposition_id,
+ company_id=account.company_id.id)
+ if product_change_result and 'value' in product_change_result and 'invoice_line_tax_id' in product_change_result['value']:
+ unique_tax_ids = product_change_result['value']['invoice_line_tax_id']
+ return {'value':{'invoice_line_tax_id': unique_tax_ids}}
account_invoice_line()
@@ -1650,14 +1658,13 @@ class account_invoice_tax(osv.osv):
for line in inv.invoice_line:
for tax in tax_obj.compute_all(cr, uid, line.invoice_line_tax_id, (line.price_unit* (1-(line.discount or 0.0)/100.0)), line.quantity, line.product_id, inv.partner_id)['taxes']:
- tax['price_unit'] = cur_obj.round(cr, uid, cur, tax['price_unit'])
val={}
val['invoice_id'] = inv.id
val['name'] = tax['name']
val['amount'] = tax['amount']
val['manual'] = False
val['sequence'] = tax['sequence']
- val['base'] = tax['price_unit'] * line['quantity']
+ val['base'] = cur_obj.round(cr, uid, cur, tax['price_unit'] * line['quantity'])
if inv.type in ('out_invoice','in_invoice'):
val['base_code_id'] = tax['base_code_id']
diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml
index 1c4d83106ca..4a587eee6fe 100644
--- a/addons/account/account_invoice_view.xml
+++ b/addons/account/account_invoice_view.xml
@@ -278,6 +278,7 @@
+
@@ -299,8 +300,8 @@
-
-
+
+
@@ -437,6 +438,7 @@
+
diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py
index 5ddbbee74f2..bb1ace992ca 100644
--- a/addons/account/account_move_line.py
+++ b/addons/account/account_move_line.py
@@ -562,6 +562,7 @@ class account_move_line(osv.osv):
'journal_id': lambda self, cr, uid, c: c.get('journal_id', False),
'credit': 0.0,
'debit': 0.0,
+ 'amount_currency': 0.0,
'account_id': lambda self, cr, uid, c: c.get('account_id', False),
'period_id': lambda self, cr, uid, c: c.get('period_id', False),
'company_id': lambda self, cr, uid, c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.move.line', context=c)
@@ -1193,12 +1194,12 @@ class account_move_line(osv.osv):
jour_period_obj = self.pool.get('account.journal.period')
cr.execute('SELECT state FROM account_journal_period WHERE journal_id = %s AND period_id = %s', (journal_id, period_id))
result = cr.fetchall()
+ journal = journal_obj.browse(cr, uid, journal_id, context=context)
+ period = period_obj.browse(cr, uid, period_id, context=context)
for (state,) in result:
if state == 'done':
- raise osv.except_osv(_('Error!'), _('You cannot add/modify entries in a closed journal.'))
+ raise osv.except_osv(_('Error !'), _('You can not add/modify entries in a closed period %s of journal %s.' % (period.name,journal.name)))
if not result:
- journal = journal_obj.browse(cr, uid, journal_id, context=context)
- period = period_obj.browse(cr, uid, period_id, context=context)
jour_period_obj.create(cr, uid, {
'name': (journal.code or journal.name)+':'+(period.name or ''),
'journal_id': journal.id,
diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml
index 2c204fdf707..1fbda80a0fe 100644
--- a/addons/account/account_view.xml
+++ b/addons/account/account_view.xml
@@ -1305,16 +1305,6 @@
Account.Entry Edition
-->
-
- account.move.graph
- account.move
-
-
-
-
-
-
- account.move.treeaccount.move
@@ -1338,8 +1328,8 @@
@@ -114,9 +114,6 @@
-
account.analytic.line.form
@@ -351,15 +348,6 @@
# Reporting
#
-
- Print Analytic Journals
- account.analytic.journal
- tree
- To print an analytics (or costs) journal for a given period. The report give code, move name, account number, general amount and analytic amount.
-
-
account.journal.form.1
@@ -372,16 +360,5 @@
-
- analytic.accounts.graph
- account.analytic.account
-
-
-
-
-
-
-
-
diff --git a/addons/account/project/wizard/account_analytic_journal_report.py b/addons/account/project/wizard/account_analytic_journal_report.py
index 9a2eee020b1..8148a016927 100644
--- a/addons/account/project/wizard/account_analytic_journal_report.py
+++ b/addons/account/project/wizard/account_analytic_journal_report.py
@@ -29,6 +29,7 @@ class account_analytic_journal_report(osv.osv_memory):
_columns = {
'date1': fields.date('Start of period', required=True),
'date2': fields.date('End of period', required=True),
+ 'analytic_account_journal_id': fields.many2many('account.analytic.journal', 'account_analytic_journal_name', 'journal_line_id', 'journal_print_id', 'Analytic Journals', required=True),
}
_defaults = {
@@ -40,8 +41,15 @@ class account_analytic_journal_report(osv.osv_memory):
if context is None:
context = {}
data = self.read(cr, uid, ids)[0]
+ ids_list = []
+ if context.get('active_id',False):
+ ids_list.append(context.get('active_id',False))
+ else:
+ record = self.browse(cr,uid,ids[0],context=context)
+ for analytic_record in record.analytic_account_journal_id:
+ ids_list.append(analytic_record.id)
datas = {
- 'ids': context.get('active_ids',[]),
+ 'ids': ids_list,
'model': 'account.analytic.journal',
'form': data
}
@@ -50,6 +58,14 @@ class account_analytic_journal_report(osv.osv_memory):
'report_name': 'account.analytic.journal',
'datas': datas,
}
+
+ def default_get(self, cr, uid, fields, context=None):
+ if context is None:
+ context = {}
+ res = super(account_analytic_journal_report, self).default_get(cr, uid, fields, context=context)
+ if 'analytic_account_journal_id' in fields:
+ res.update({'analytic_account_journal_id': context.get('active_ids',[])})
+ return res
account_analytic_journal_report()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account/project/wizard/account_analytic_journal_report_view.xml b/addons/account/project/wizard/account_analytic_journal_report_view.xml
index e4c4cd314db..b0cb0293270 100644
--- a/addons/account/project/wizard/account_analytic_journal_report_view.xml
+++ b/addons/account/project/wizard/account_analytic_journal_report_view.xml
@@ -7,15 +7,16 @@
account.analytic.journal.report
-
-
- or
-
-
+
+
@@ -38,6 +39,13 @@
actionaccount.analytic.journal
+
+
+
diff --git a/addons/account/res_config.py b/addons/account/res_config.py
index ea903654a4e..17df4377548 100644
--- a/addons/account/res_config.py
+++ b/addons/account/res_config.py
@@ -117,6 +117,9 @@ class account_config_settings(osv.osv_memory):
'group_multi_currency': fields.boolean('Allow multi currencies',
implied_group='base.group_multi_currency',
help="Allows you multi currency environment"),
+ 'group_analytic_accounting': fields.boolean('Analytic accounting',
+ implied_group='analytic.group_analytic_accounting',
+ help="Allows you to use the analytic accounting."),
}
def _default_company(self, cr, uid, context=None):
diff --git a/addons/account/res_config_view.xml b/addons/account/res_config_view.xml
index d7618fbff5a..0e4b1fa64c4 100644
--- a/addons/account/res_config_view.xml
+++ b/addons/account/res_config_view.xml
@@ -129,6 +129,10 @@
+
+
+
+
diff --git a/addons/account/security/account_security.xml b/addons/account/security/account_security.xml
index 442b51466f8..4b90e0c8ad5 100644
--- a/addons/account/security/account_security.xml
+++ b/addons/account/security/account_security.xml
@@ -16,7 +16,7 @@
- Manager
+ Financial Manager
diff --git a/addons/account/wizard/account_invoice_refund.py b/addons/account/wizard/account_invoice_refund.py
index b7d278b8849..38a22baa9f1 100644
--- a/addons/account/wizard/account_invoice_refund.py
+++ b/addons/account/wizard/account_invoice_refund.py
@@ -32,11 +32,11 @@ class account_invoice_refund(osv.osv_memory):
_name = "account.invoice.refund"
_description = "Invoice Refund"
_columns = {
- 'date': fields.date('Operation Date', help='This date will be used as the invoice date for credit note and period will be chosen accordingly!'),
+ 'date': fields.date('Date', help='This date will be used as the invoice date for credit note and period will be chosen accordingly!'),
'period': fields.many2one('account.period', 'Force period'),
'journal_id': fields.many2one('account.journal', 'Refund Journal', help='You can select here the journal to use for the credit note that will be created. If you leave that field empty, it will use the same journal as the current invoice.'),
- 'description': fields.char('Description', size=128, required=True),
- 'filter_refund': fields.selection([('refund', 'Create a draft refund'), ('cancel', 'Cancel: create credit note and reconcile'),('modify', 'Modify: create credit note, reconcile and create a new draft invoice')], "Refund Method", required=True, help='Credit note base on this type. You can not Modify and Cancel if the invoice is already reconciled'),
+ 'description': fields.char('Reason', size=128, required=True),
+ 'filter_refund': fields.selection([('refund', 'Create a draft credit note'), ('cancel', 'Cancel: create credit note and reconcile'),('modify', 'Modify: create credit note, reconcile and create a new draft invoice')], "Refund Method", required=True, help='Credit note base on this type. You can not Modify and Cancel if the invoice is already reconciled'),
}
def _get_journal(self, cr, uid, context=None):
diff --git a/addons/account/wizard/account_invoice_refund_view.xml b/addons/account/wizard/account_invoice_refund_view.xml
index 78a9b085bf1..3945a6f57e6 100644
--- a/addons/account/wizard/account_invoice_refund_view.xml
+++ b/addons/account/wizard/account_invoice_refund_view.xml
@@ -7,19 +7,40 @@
account.invoice.refund
-
-
-
-
-
-
-
+
+
+
+
+
+
+ You will be able to edit and validate this
+ credit note directly or keep it draft,
+ waiting for the document to be issued by
+ your supplier/customer.
+
+
+ Use this option if you want to cancel an invoice you should not
+ have issued. The credit note will be created, validated and reconciled
+ with the invoice. You will not be able to modify the credit note.
+
+
+ Use this option if you want to cancel an invoice and create a new
+ one. The credit note will be created, validated and reconciled
+ with the current invoice. A new, draft, invoice will be created
+ so that you can edit it.
+
+
+
+
+
+
+
+
+
+
-
-
-
@@ -28,7 +49,7 @@
- Refund
+ Refund Invoiceaccount.invoice.refundformtree,form
diff --git a/addons/account/wizard/account_reconcile.py b/addons/account/wizard/account_reconcile.py
index 9fa521c09f7..f3d25b1c8db 100644
--- a/addons/account/wizard/account_reconcile.py
+++ b/addons/account/wizard/account_reconcile.py
@@ -23,6 +23,7 @@ import time
from osv import fields, osv
from tools.translate import _
+import decimal_precision as dp
class account_move_line_reconcile(osv.osv_memory):
"""
@@ -32,9 +33,9 @@ class account_move_line_reconcile(osv.osv_memory):
_description = 'Account move line reconcile'
_columns = {
'trans_nbr': fields.integer('# of Transaction', readonly=True),
- 'credit': fields.float('Credit amount', readonly=True),
- 'debit': fields.float('Debit amount', readonly=True),
- 'writeoff': fields.float('Write-Off amount', readonly=True),
+ 'credit': fields.float('Credit amount', readonly=True, digits_compute=dp.get_precision('Account')),
+ 'debit': fields.float('Debit amount', readonly=True, digits_compute=dp.get_precision('Account')),
+ 'writeoff': fields.float('Write-Off amount', readonly=True, digits_compute=dp.get_precision('Account')),
}
def default_get(self, cr, uid, fields, context=None):
diff --git a/addons/account_accountant/__openerp__.py b/addons/account_accountant/__openerp__.py
index 3c391d8d885..980f565b3e5 100644
--- a/addons/account_accountant/__openerp__.py
+++ b/addons/account_accountant/__openerp__.py
@@ -43,6 +43,5 @@ It assigns manager and user access rights to the Administrator and only user rig
'installable': True,
'auto_install': False,
'application': True,
- 'certificate': '00395091383933390541',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_accountant/account_accountant_data.xml b/addons/account_accountant/account_accountant_data.xml
index d7ed9c1ad13..e02db45fcd8 100644
--- a/addons/account_accountant/account_accountant_data.xml
+++ b/addons/account_accountant/account_accountant_data.xml
@@ -26,9 +26,11 @@
notificationAccounting and Finance application installed!
- With OpenERP's accounting, you get instant access to your financial data, and can setup analytic accounting, forecast taxes, control budgets, easily create and send invoices, record bank statements, etc.
+
+
The accounting features are fully integrated with other OpenERP applications to automate all your processes: creation of customer invoices, control of supplier invoices, point-of-sale integration, automated follow-ups, etc.
+ ]]>
diff --git a/addons/account_analytic_analysis/__openerp__.py b/addons/account_analytic_analysis/__openerp__.py
index 3e8c579b729..7675ef9f38e 100644
--- a/addons/account_analytic_analysis/__openerp__.py
+++ b/addons/account_analytic_analysis/__openerp__.py
@@ -47,7 +47,6 @@ Adds menu to show relevant information to each manager.You can also view the rep
'demo': [],
'installable': True,
'auto_install': False,
- 'certificate': '0042927202589',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml
index ffbe48f0b19..d56b6ee4760 100644
--- a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml
+++ b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml
@@ -48,7 +48,7 @@
Contracts to Renewaccount.analytic.accountform
- tree,form,graph
+ tree,form{'search_default_user_id':uid, 'search_default_draft':1, 'search_default_pending':1, 'search_default_open':1, 'search_default_renew':1}[('type','=','contract')]
@@ -72,7 +72,7 @@
Contractsaccount.analytic.accountform
- tree,form,graph
+ tree,form{'default_type':'contract', 'search_default_open':1, 'search_default_pending':1}[('type','=','contract')]
diff --git a/addons/account_analytic_default/__openerp__.py b/addons/account_analytic_default/__openerp__.py
index ef01867983a..213d055f8de 100644
--- a/addons/account_analytic_default/__openerp__.py
+++ b/addons/account_analytic_default/__openerp__.py
@@ -47,7 +47,6 @@ Allows to automatically select analytic accounts based on criterions:
'demo': [],
'installable': True,
'auto_install': False,
- 'certificate': '0074229833581',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_analytic_plans/__openerp__.py b/addons/account_analytic_plans/__openerp__.py
index 675723f423a..af5b5654b99 100644
--- a/addons/account_analytic_plans/__openerp__.py
+++ b/addons/account_analytic_plans/__openerp__.py
@@ -79,7 +79,6 @@ The analytic plan validates the minimum and maximum percentage at the time of cr
'test': ['test/acount_analytic_plans_report.yml'],
'installable': True,
'auto_install': False,
- 'certificate': '0036417675373',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_analytic_plans/account_analytic_plans.py b/addons/account_analytic_plans/account_analytic_plans.py
index 234d6fe0cf8..91caa6936bc 100644
--- a/addons/account_analytic_plans/account_analytic_plans.py
+++ b/addons/account_analytic_plans/account_analytic_plans.py
@@ -262,6 +262,7 @@ account_analytic_plan_instance()
class account_analytic_plan_instance_line(osv.osv):
_name = "account.analytic.plan.instance.line"
_description = "Analytic Instance Line"
+ _rec_name = "analytic_account_id"
_columns = {
'plan_id': fields.many2one('account.analytic.plan.instance', 'Plan Id'),
'analytic_account_id': fields.many2one('account.analytic.account', 'Analytic Account', required=True, domain=[('type','<>','view')]),
diff --git a/addons/account_anglo_saxon/__openerp__.py b/addons/account_anglo_saxon/__openerp__.py
index 330d0df0000..6482a110f1d 100644
--- a/addons/account_anglo_saxon/__openerp__.py
+++ b/addons/account_anglo_saxon/__openerp__.py
@@ -46,7 +46,6 @@ account.""",
'data': ['product_view.xml',],
'auto_install': False,
'installable': True,
- 'certificate':'00557423080410733581',
}
# 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 b6828062a85..e6861d0db67 100644
--- a/addons/account_asset/account_asset.py
+++ b/addons/account_asset/account_asset.py
@@ -350,7 +350,7 @@ class account_asset_depreciation_line(osv.osv):
'amount': fields.float('Depreciation Amount', required=True),
'remaining_value': fields.float('Amount to Depreciate', required=True),
'depreciated_value': fields.float('Amount Already Depreciated', required=True),
- 'depreciation_date': fields.char('Depreciation Date', size=64, select=1),
+ 'depreciation_date': fields.date('Depreciation Date', select=1),
'move_id': fields.many2one('account.move', 'Depreciation Entry'),
'move_check': fields.function(_get_move_check, method=True, type='boolean', string='Posted', store=True)
}
@@ -368,7 +368,7 @@ class account_asset_depreciation_line(osv.osv):
for line in self.browse(cr, uid, ids, context=context):
if currency_obj.is_zero(cr, uid, line.asset_id.currency_id, line.remaining_value):
can_close = True
- depreciation_date = line.asset_id.prorata and line.asset_id.purchase_date or time.strftime('%Y-%m-%d')
+ depreciation_date = time.strftime('%Y-%m-%d')
period_ids = period_obj.find(cr, uid, depreciation_date, context=context)
company_currency = line.asset_id.company_id.currency_id.id
current_currency = line.asset_id.currency_id.id
diff --git a/addons/account_asset/account_asset_invoice.py b/addons/account_asset/account_asset_invoice.py
index 700832881c4..4b38834bdc3 100644
--- a/addons/account_asset/account_asset_invoice.py
+++ b/addons/account_asset/account_asset_invoice.py
@@ -57,6 +57,7 @@ class account_invoice_line(osv.osv):
'partner_id': line.invoice_id.partner_id.id,
'company_id': line.invoice_id.company_id.id,
'currency_id': line.invoice_id.currency_id.id,
+ 'purchase_date' : line.invoice_id.date_invoice,
}
changed_vals = asset_obj.onchange_category_id(cr, uid, [], vals['category_id'], context=context)
vals.update(changed_vals['value'])
diff --git a/addons/account_asset/report/account_asset_report.py b/addons/account_asset/report/account_asset_report.py
index 000967a555c..583e5534613 100644
--- a/addons/account_asset/report/account_asset_report.py
+++ b/addons/account_asset/report/account_asset_report.py
@@ -50,7 +50,7 @@ class asset_asset_report(osv.osv):
select
min(dl.id) as id,
dl.name as name,
- to_date(dl.depreciation_date, 'YYYY-MM-DD') as depreciation_date,
+ dl.depreciation_date as depreciation_date,
a.purchase_date as purchase_date,
(CASE WHEN (select min(d.id) from account_asset_depreciation_line as d
left join account_asset_asset as ac ON (ac.id=d.asset_id)
@@ -77,7 +77,7 @@ class asset_asset_report(osv.osv):
from account_asset_depreciation_line dl
left join account_asset_asset a on (dl.asset_id=a.id)
group by
- dl.amount,dl.asset_id,to_date(dl.depreciation_date, 'YYYY-MM-DD'),dl.name,
+ dl.amount,dl.asset_id,dl.depreciation_date,dl.name,
a.purchase_date, dl.move_check, a.state, a.category_id, a.partner_id, a.company_id,
a.purchase_value, a.id, a.salvage_value
)""")
diff --git a/addons/account_bank_statement_extensions/account_bank_statement_view.xml b/addons/account_bank_statement_extensions/account_bank_statement_view.xml
index 30b2778817c..1c076426752 100644
--- a/addons/account_bank_statement_extensions/account_bank_statement_view.xml
+++ b/addons/account_bank_statement_extensions/account_bank_statement_view.xml
@@ -76,7 +76,7 @@
-
+
@@ -100,7 +100,7 @@
-
+
diff --git a/addons/account_budget/__openerp__.py b/addons/account_budget/__openerp__.py
index 928e87f1202..222178b940c 100644
--- a/addons/account_budget/__openerp__.py
+++ b/addons/account_budget/__openerp__.py
@@ -69,6 +69,5 @@ Three reports are available:
],
'installable': True,
'auto_install': False,
- 'certificate': '0043819694157',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_cancel/__openerp__.py b/addons/account_cancel/__openerp__.py
index b1feedda55a..468840c19d5 100644
--- a/addons/account_cancel/__openerp__.py
+++ b/addons/account_cancel/__openerp__.py
@@ -38,9 +38,6 @@ If set to true it allows user to cancel entries & invoices.
'demo': [],
'installable': True,
'auto_install': False,
- 'certificate': '001101250473177981989',
-
-
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_chart/__openerp__.py b/addons/account_chart/__openerp__.py
index 2c458ceb49f..8f619cd1471 100644
--- a/addons/account_chart/__openerp__.py
+++ b/addons/account_chart/__openerp__.py
@@ -36,6 +36,5 @@ Deactivates minimal chart of accounts.
'data': [],
'demo': [],
'installable': True,
- 'certificate': '0073332443901',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_coda/i18n/en_AU.po b/addons/account_coda/i18n/en_AU.po
new file mode 100644
index 00000000000..319220741c5
--- /dev/null
+++ b/addons/account_coda/i18n/en_AU.po
@@ -0,0 +1,3739 @@
+# English (Australia) 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-09-27 03:22+0000\n"
+"Last-Translator: FULL NAME \n"
+"Language-Team: English (Australia) \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2012-09-28 04:39+0000\n"
+"X-Generator: Launchpad (build 16043)\n"
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_21
+msgid "Cash withdrawal on card (PROTON)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_412
+msgid "Advice of expiry charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_11
+msgid "Your purchase of luncheon vouchers"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_05
+msgid "Partial payment subscription"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_54
+msgid "Unexecutable transfer order"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_02
+msgid "Individual transfer order initiated by the bank"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_21
+msgid "Charges for preparing pay packets"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_9
+msgid "Detail of 7. The records in a separate application keep type 9."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_426
+msgid "Belgian broker's commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_031
+msgid "Charges foreign cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_002
+msgid "Interest paid"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.type,parent_id:0
+msgid "Parent"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_03_62
+msgid ""
+"cheques debited on account, but debit cancelled afterwards for lack of cover "
+"(double debit/contra-entry of transaction 01 or 05)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_05
+msgid "Bill claimed back"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_016
+msgid "BLIW/IBLC dues"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:911
+#, python-format
+msgid "CODA File is Imported :"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_066
+msgid "Fixed loan advance - reimbursement"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_05
+msgid "Purchase of foreign bank notes"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:277
+#: code:addons/account_coda/wizard/account_coda_import.py:469
+#, python-format
+msgid ""
+"\n"
+"The File contains an invalid CODA Transaction Family : %s!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_030
+msgid "Account insurance"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_042
+msgid "Payment card costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_212
+msgid "Warehousing fee"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/account_coda.py:300
+#, python-format
+msgid ""
+"Cannot delete CODA Bank Statement '%s' of Journal '%s'.\n"
+"The associated Bank Statement has already been confirmed !\n"
+"Please undo this action first!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_66
+msgid "Financial centralization"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_420
+msgid "Retention charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_50
+msgid "Transfer in your favour"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_87
+#: model:account.coda.trans.code,description:account_coda.actcc_04_87
+#: model:account.coda.trans.code,description:account_coda.actcc_05_87
+#: model:account.coda.trans.code,description:account_coda.actcc_07_87
+#: model:account.coda.trans.code,description:account_coda.actcc_09_87
+#: model:account.coda.trans.code,description:account_coda.actcc_11_87
+#: model:account.coda.trans.code,description:account_coda.actcc_13_87
+#: model:account.coda.trans.code,description:account_coda.actcc_30_87
+#: model:account.coda.trans.code,description:account_coda.actcc_35_87
+#: model:account.coda.trans.code,description:account_coda.actcc_41_87
+#: model:account.coda.trans.code,description:account_coda.actcc_43_87
+#: model:account.coda.trans.code,description:account_coda.actcc_47_87
+msgid "Reimbursement of costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_56
+msgid "Remittance of supplier's bill with guarantee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_002
+msgid "Communication of the bank"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,amount:0
+msgid "Amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_70
+msgid "Only with stockbrokers when they deliver the securities to the bank"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_413
+msgid "Acceptance charges"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,counterparty_bic:0
+msgid "Counterparty BIC"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,def_receivable:0
+msgid ""
+"Set here the receivable account that will be used, by default, if the "
+"partner is not found."
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,def_payable:0
+msgid ""
+"Set here the payable account that will be used, by default, if the partner "
+"is not found."
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:144
+#, python-format
+msgid "Warning !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_39
+msgid "Return of an irregular bill of exchange"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_011
+msgid "VAT"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_09
+msgid "Debit of the agios to the account of the drawee"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.comm.type:0
+#: model:ir.actions.act_window,name:account_coda.action_account_coda_comm_type_form
+#: model:ir.ui.menu,name:account_coda.menu_action_account_coda_comm_type_form
+msgid "CODA Structured Communication Types"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_50
+msgid "Spot sale of foreign exchange"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,ref:0
+msgid "Reference"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_58
+msgid "Remittance of supplier's bill without guarantee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_03
+msgid "Payment receipt card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_207
+msgid "Non-conformity fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_022
+msgid "Priority costs"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:268
+#: code:addons/account_coda/wizard/account_coda_import.py:460
+#, python-format
+msgid ""
+"\n"
+"The File contains an invalid CODA Transaction Type : %s!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_045
+msgid "Handling costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_47_13
+msgid "Debit customer, payment of agios, interest, exchange commission, etc."
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,date:0
+msgid "Import Date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_039
+msgid "Telecommunications"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,globalisation_id:0
+msgid "Globalisation ID"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/account_coda.py:399
+#, python-format
+msgid "Delete operation not allowed !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_000
+msgid "Net amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_11
+msgid "Department store cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_206
+msgid "Surety fee/payment under reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_53
+msgid "Cash deposit at an ATM"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_52
+msgid "Forward sale of foreign exchange"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_05
+msgid ""
+"Debit of the subscriber for the complementary payment of partly-paid shares"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_bank_statement_line_global
+msgid "Batch Payment Info"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_00_33
+#: model:account.coda.trans.code,description:account_coda.actcc_00_83
+msgid "Value correction"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_27
+msgid "For publications of the financial institution"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_01
+msgid "Payment of foreign bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_024
+msgid "Growth premium"
+msgstr ""
+
+#. module: account_coda
+#: selection:account.coda.trans.code,type:0
+msgid "Transaction Code"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_13
+msgid "Discount foreign supplier's bills"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_05
+msgid "Direct debit"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_47_11
+msgid "Bills of lading"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_00
+msgid "Undefined transactions"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_62
+msgid "When reimbursed separately to the subscriber"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.trans.category:0
+msgid "CODA Transaction Category"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_067
+msgid "Fixed loan advance - extension"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_07
+msgid "Your repayment instalment credits"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_09_13
+msgid "On the account of the head office"
+msgstr ""
+
+#. module: account_coda
+#: constraint:account.bank.statement:0
+msgid "The journal and period chosen have to belong to the same company."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_115
+msgid "Terminal cash deposit"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:301
+#: code:addons/account_coda/wizard/account_coda_import.py:493
+#, python-format
+msgid ""
+"\n"
+"The File contains an invalid Structured Communication Type : %s!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_43_01
+msgid ""
+"Debit of a cheque in foreign currency or in EUR in favour of a foreigner"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_54
+msgid "Discount abroad"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_62
+msgid "Remittance of documents abroad - credit after collection"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,name:0
+msgid "Communication"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_00_35
+#: model:account.coda.trans.code,description:account_coda.actcc_00_85
+msgid "Correction"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:404
+#, python-format
+msgid ""
+"\n"
+" Bank Statement '%s' line '%s':\n"
+" No partner record assigned: There are multiple partners with the "
+"same Bank Account Number '%s'!\n"
+" Please correct the configuration and perform the import again or "
+"otherwise change the corresponding entry manually in the generated Bank "
+"Statement."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_33
+#: model:account.coda.trans.code,description:account_coda.actcc_30_83
+msgid "Value (date) correction"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_063
+msgid "Rounding differences"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:295
+#: code:addons/account_coda/wizard/account_coda_import.py:487
+#, python-format
+msgid "Transaction Category unknown, please consult your bank."
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.trans.code:0
+msgid "CODA Transaction Code"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_052
+msgid "Residence state tax"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_03_17
+msgid "Amount of the cheque; if any, charges receive code 37"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Additional Information"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_120
+msgid "Correction of a transaction"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_64
+#: model:account.coda.trans.code,description:account_coda.actcc_41_64
+msgid "Transfer to your account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_124
+msgid "Number of the credit card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_13
+msgid "Renting of safes"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,find_bbacom:0
+msgid ""
+"Partner lookup via the 'BBA' Structured Communication field of the Invoice."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_104
+msgid "Equivalent in EUR"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_50
+msgid "Remittance of foreign bill credit after collection"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_03
+msgid "Your purchase by payment card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_1
+msgid ""
+"Amount as totalised by the customer; e.g. a file regrouping payments of "
+"wages or payments made to suppliers or a file regrouping collections for "
+"which the customer is debited or credited with one single amount. As a "
+"matter of principle, this type is also used when no detailed data is "
+"following (type 5)."
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:519
+#, python-format
+msgid ""
+"\n"
+"CODA parsing error on information data record 3.3, seq nr %s!\n"
+"Please report this issue via your OpenERP support channel."
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Credit Transactions."
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.type,type:0
+msgid "Transaction Type"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda
+msgid "Object to store CODA Data Files"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_029
+msgid "Protest charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_053
+#: model:account.coda.trans.code,description:account_coda.actcc_80_43
+msgid "Printing of forms"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_003
+msgid "Credit commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_58
+msgid "Remittance of foreign cheque credit after collection"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_8
+msgid "Detail of 3."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_05_58
+msgid ""
+"(cancellation of an undue debit of the debtor at the initiative of the "
+"financial institution or the debtor for lack of cover)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_11
+msgid "Payable coupons/repayable securities"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_50
+msgid "Sale of securities"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_51
+msgid "Transfer in your favour – initiated by the bank"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,coda_data:0
+#: field:account.coda.import,coda_data:0
+msgid "CODA File"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_38
+msgid "Provisionally unpaid"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_003
+msgid "RBP data"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_06
+msgid "Share option plan – exercising an option"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_051
+msgid "Withholding tax"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_006
+msgid "Information concerning the detail amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_37
+msgid "Costs relating to payment of foreign cheques"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.code,parent_id:0
+msgid "Family"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_66
+msgid "Retrocession of issue commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_68
+msgid "Credit after Proton payments"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: field:coda.bank.statement,period_id:0
+msgid "Period"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:588
+#: code:addons/account_coda/wizard/account_coda_import.py:926
+#, python-format
+msgid "CODA Import failed !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_09_01
+msgid ""
+"Withdrawal by counter cheque or receipt; cash remitted by the bank clerk"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_01
+msgid "Short-term loan"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_01
+msgid "Domestic or local SEPA credit transfers"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_03
+msgid "Settlement credit cards"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_402
+msgid "Certification costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_015
+msgid "Correspondent charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_415
+#: model:account.coda.trans.code,description:account_coda.actcc_80_39
+msgid "Surety fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_017
+#: model:account.coda.trans.code,description:account_coda.actcc_80_23
+#: model:account.coda.trans.code,description:account_coda.actcc_80_41
+msgid "Research costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_07
+msgid "Collective transfer"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:912
+#, python-format
+msgid ""
+"\n"
+"\n"
+"Number of statements : "
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_05
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_07
+msgid ""
+"The principal will be debited for the total amount of the file entered."
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:332
+#: code:addons/account_coda/wizard/account_coda_import.py:357
+#, python-format
+msgid ""
+"\n"
+"CODA parsing error on movement data record 2.3, seq nr %s!\n"
+"Please report this issue via your OpenERP support channel."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_52
+msgid "Payment in your favour"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_08
+msgid "Registering compensation for savings accounts"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_51
+msgid "Company issues paper in return for cash"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,journal:0
+#: view:coda.bank.statement:0
+#: field:coda.bank.statement,journal_id:0
+msgid "Journal"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_19
+msgid "Settlement of credit cards"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_87
+msgid "Reimbursement of cheque-related costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_50
+msgid "Settlement of instalment credit"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_52
+msgid "Payment by a third person"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_60
+msgid "Remittance of documents abroad - credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_52
+msgid "Loading GSM cards"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: view:coda.bank.statement.line:0
+#: field:coda.bank.statement.line,note:0
+msgid "Notes"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,balance_end_real:0
+msgid "Ending Balance"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_64
+msgid "Your issue"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:870
+#, python-format
+msgid ""
+"\n"
+"\n"
+"Bank Journal: %s\n"
+"CODA Version: %s\n"
+"CODA Sequence Number: %s\n"
+"Paper Statement Sequence Number: %s\n"
+"Bank Account: %s\n"
+"Account Holder Name: %s\n"
+"Date: %s, Starting Balance: %.2f, Ending Balance: %.2f%s"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,val_date:0
+msgid "Valuta Date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_01
+msgid ""
+"Purchase of domestic or foreign securities, including subscription rights, "
+"certificates, etc."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_38
+msgid "Costs relating to incoming foreign and non-SEPA transfers"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_52
+msgid "Whatever the currency of the security"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_069
+msgid "Forward arbitrage contracts : sum to be supplied by customer"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:388
+#, python-format
+msgid ""
+"\n"
+" Bank Statement '%s' line '%s':\n"
+" There is no invoice matching the Structured Communication '%s'!\n"
+" Please verify and adjust the invoice and perform the import again or "
+"otherwise change the corresponding entry manually in the generated Bank "
+"Statement."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_407
+msgid "Costs Article 45"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_007
+msgid "Information concerning the detail cash"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,company_id:0
+#: field:coda.bank.account,company_id:0
+#: field:coda.bank.statement,company_id:0
+#: field:coda.bank.statement.line,company_id:0
+msgid "Company"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_35
+msgid "Cash advance"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_47
+msgid "Foreign commercial paper"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_13_15
+msgid ""
+"Hire-purchase agreement under which the financial institution is the lessor"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_66
+msgid "Remittance of cheque by your branch - credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_50
+msgid "Credit of the remitter"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.category,category:0
+msgid "Transaction Category"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,statement_ids:0
+msgid "Generated CODA Bank Statements"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_09
+msgid "Purchase of petrol coupons"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_52
+msgid "Remittance of foreign bill credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_061
+#: model:account.coda.trans.code,description:account_coda.actcc_80_47
+msgid "Charging fees for transactions"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda_trans_category
+msgid "CODA transaction category"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_21
+msgid "Other credit applications"
+msgstr ""
+
+#. module: account_coda
+#: selection:coda.bank.statement.line,type:0
+msgid "Supplier"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_009
+msgid "Travelling expenses"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_30
+msgid "Various transactions"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_406
+msgid "Collection charges"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+msgid "Transactions"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_50
+msgid "Cash payment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_27
+msgid "Subscription fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_036
+msgid "Costs relating to a refused cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_101
+msgid "Credit transfer or cash payment with structured format communication"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_127
+msgid "European direct debit (SEPA)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_068
+msgid "Countervalue of an entry"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_010
+#: model:account.coda.trans.code,description:account_coda.actcc_80_31
+msgid "Writ service fee"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:635
+#, python-format
+msgid ""
+"\n"
+"The CODA Statement %s Starting Balance (%.2f) does not correspond with the "
+"previous Closing Balance (%.2f) in journal %s!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_13
+msgid "Your repurchase of issue"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_409
+msgid "Safe deposit charges"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,def_payable:0
+msgid "Default Payable Account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_055
+msgid "Repayment loan or credit capital"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_05
+msgid "Settlement of fixed advance"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_15
+msgid ""
+"Commission collected to the debit of the customer to whom the bank delivers "
+"a key which gives access to the night safe"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_059
+msgid "Default interest"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,coda_st_naming:0
+msgid ""
+"Define the rules to create the name of the Bank Statements generated by the "
+"CODA processing.\n"
+"E.g. %(code)s%(y)s/%(paper)s\n"
+"\n"
+"Variables:\n"
+"Bank Journal Code: %(code)s\n"
+"Current Year with Century: %(year)s\n"
+"Current Year without Century: %(y)s\n"
+"CODA sequence number: %(coda)s\n"
+"Paper Statement sequence number: %(paper)s"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_108
+#: model:account.coda.trans.code,description:account_coda.actcc_35_01
+#: model:account.coda.trans.code,description:account_coda.actcc_35_50
+msgid "Closing"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.statement.line,globalisation_id:0
+msgid ""
+"Code to identify transactions belonging to the same globalisation level "
+"within a batch payment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_05
+msgid "Commercial paper claimed back"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_411
+msgid "Fixed collection charge"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_64
+msgid "Your winning lottery ticket"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_009
+msgid ""
+"Identification of the de ultimate ordering customer/debtor (SEPA SCT/SDD)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_05
+msgid "Card charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_03
+msgid "Payment card charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_54
+msgid "Remittance of commercial paper for discount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_01
+msgid "Payment"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "_Cancel"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_07
+msgid "Purchase of gold/pieces"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_15
+msgid "Balance due insurance premium"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_11
+msgid "Debit of the issuer by the bank in charge of the financial service"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_58
+msgid "Remittance of cheques, vouchers, etc. credit after collection"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_19
+#: model:account.coda.trans.code,description:account_coda.actcc_09_68
+msgid "Difference in payment"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,date:0
+msgid "Entry Date"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:193
+#, python-format
+msgid ""
+"\n"
+"Please check if the 'Bank Account Number', 'Currency' and 'Account "
+"Description' fields of your configuration record match with '%s', '%s' and "
+"'%s' !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_58
+msgid "Idem without guarantee"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:139
+#, python-format
+msgid ""
+"\n"
+"CODA File with Filename '%s' and Creation Date '%s' has already been "
+"imported !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_63
+msgid "Second credit of unpaid cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_065
+msgid "Interest payment advice"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.code,type:0
+#: field:coda.bank.account,state:0
+#: field:coda.bank.statement,type:0
+#: field:coda.bank.statement.line,type:0
+msgid "Type"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_112
+msgid "ATM payment (usually Eurocheque card)"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,description1:0
+msgid "Primary Account Description"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_126
+msgid "Term investments"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_100
+msgid ""
+"(SEPA) payment with a structured format communication applying the ISO "
+"standard 11649: Structured creditor reference to remittan"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:164
+#, python-format
+msgid ""
+"\n"
+"Foreign bank accounts with IBAN structure are not supported !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_100
+msgid "Gross amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_62
+msgid "Reversal of cheques"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/account_coda.py:299
+#, python-format
+msgid "Invalid action !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_64
+#: model:account.coda.trans.code,comment:account_coda.actcc_41_13
+#: model:account.coda.trans.code,comment:account_coda.actcc_41_64
+msgid "Intracompany"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_01
+msgid "Spot purchase of foreign exchange"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_429
+msgid "Foreign Stock Exchange tax"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_05
+#: model:account.coda.trans.code,description:account_coda.actcc_05_54
+msgid "Reimbursement"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:868
+#, python-format
+msgid "None"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_405
+msgid "Bill guarantee commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_06
+msgid "Extension"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_008
+msgid "Identification of the de ultimate beneficiary/creditor (SEPA SCT/SDD)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_49
+msgid "Foreign counter transactions"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_01
+msgid "Cash withdrawal"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,partner_id:0
+msgid "Partner"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_37
+msgid ""
+"Fixed right, either one-off or periodical; for details, see \"categories\""
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_05
+msgid "Loading Proton"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_21
+msgid "Pay-packet charges"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,transfer_account:0
+msgid "Default Internal Transfer Account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_074
+msgid "Mailing costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_07
+msgid "Unpaid foreign bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_07
+msgid "Payment by GSM"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.account:0
+#: selection:coda.bank.account,state:0
+#: view:coda.bank.statement:0
+#: selection:coda.bank.statement,type:0
+msgid "Normal"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_50
+msgid "Credit after collection"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_80
+msgid "Separately charged costs and provisions"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.account:0
+#: field:coda.bank.account,currency:0
+#: field:coda.bank.statement,currency:0
+msgid "Currency"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_06
+msgid "Extension of maturity date"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,def_receivable:0
+msgid "Default Receivable Account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_15
+msgid "Night safe"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Total Amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_214
+msgid "Issue commission (delivery order)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_13_07
+msgid ""
+"Often by standing order or direct debit. In case of direct debit, family 13 "
+"is used."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_01
+msgid "Loading a GSM card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_021
+msgid "Costs for drawing up a bank cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_026
+msgid "Handling commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_201
+msgid "Advice notice commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_64
+#: model:account.coda.trans.code,description:account_coda.actcc_47_64
+msgid "Warrant"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_07
+msgid "Unpaid commercial paper"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:120
+#: code:addons/account_coda/wizard/account_coda_import.py:130
+#: code:addons/account_coda/wizard/account_coda_import.py:159
+#: code:addons/account_coda/wizard/account_coda_import.py:168
+#: code:addons/account_coda/wizard/account_coda_import.py:174
+#: code:addons/account_coda/wizard/account_coda_import.py:198
+#: code:addons/account_coda/wizard/account_coda_import.py:272
+#: code:addons/account_coda/wizard/account_coda_import.py:281
+#: code:addons/account_coda/wizard/account_coda_import.py:305
+#: code:addons/account_coda/wizard/account_coda_import.py:440
+#: code:addons/account_coda/wizard/account_coda_import.py:464
+#: code:addons/account_coda/wizard/account_coda_import.py:473
+#: code:addons/account_coda/wizard/account_coda_import.py:497
+#, python-format
+msgid "Data Error!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_010
+msgid "Information pertaining to sale or purchase of securities"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_54
+msgid "Your payment ATM"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_123
+msgid "Fees and commissions"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:689
+#, python-format
+msgid ""
+"Free Communication:\n"
+" %s"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_15
+msgid "Purchase of an international bank cheque"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,coda_st_naming:0
+msgid "Bank Statement Naming Policy"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,date:0
+msgid "Date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_00_00
+#: model:account.coda.trans.code,description:account_coda.actcc_30_39
+#: model:account.coda.trans.code,description:account_coda.actcc_30_89
+msgid "Undefined transaction"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Extended Filters..."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_06
+msgid "Costs chargeable to the remitter"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_205
+msgid ""
+"Documentary payment commission | Document commission | Drawdown fee | "
+"Negotiation fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_60
+msgid "Settlement of mortgage loan"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_01
+msgid "Purchase of securities"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,note:0
+msgid "Import Log"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_07
+msgid "Domestic commercial paper"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_034
+msgid "Reinvestment fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_12
+msgid "Costs for opening a bank guarantee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_414
+msgid "Regularisation charges"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: field:coda.bank.statement.line,statement_id:0
+#: model:ir.actions.act_window,name:account_coda.act_account_bank_statement_goto_coda_bank_statement
+#: model:ir.model,name:account_coda.model_coda_bank_statement
+msgid "CODA Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_15
+msgid "Your repayment hire-purchase and similar claims"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_62
+msgid "Reversal of cheque"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.code,code:0
+msgid "Code"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_032
+msgid "Drawing up a circular cheque"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+msgid "Seq"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_52
+msgid "Payment night safe"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.actions.act_window,name:account_coda.act_coda_bank_statement_goto_account_bank_statement
+#: model:ir.model,name:account_coda.model_account_bank_statement
+msgid "Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,counterparty_name:0
+msgid "Counterparty Name"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_006
+msgid "Various fees/commissions"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_209
+msgid "Transfer commission"
+msgstr ""
+
+#. module: account_coda
+#: selection:coda.bank.statement.line,type:0
+msgid "Information"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_00_39
+#: model:account.coda.trans.code,description:account_coda.actcc_00_89
+msgid "Cancellation of a transaction"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_3
+msgid ""
+"Simple amount with detailed data; e.g. in case of charges for cross-border "
+"credit transfers."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_15
+msgid "Your purchase of lottery tickets"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_05
+msgid "Collective payments of wages"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_17
+msgid "Collected for unsealed deposit of securities, and other parcels"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_004
+msgid "Counterparty’s banker"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:426
+#, python-format
+msgid ""
+"\n"
+" Bank Statement '%s' line '%s':\n"
+" No matching partner record found!\n"
+" Please adjust the corresponding entry manually in the generated Bank "
+"Statement."
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,journal:0
+msgid "Bank Journal for the Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: selection:coda.bank.statement.line,type:0
+msgid "Globalisation"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_54
+msgid "Fixed advance – capital and interest"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_11
+msgid "Payment documents abroad"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_09
+msgid ""
+"Postage recouped to the debit of the customer (including forwarding charges)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_04
+msgid "Costs for holding a documentary cash credit"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,balance_start:0
+msgid "Starting Balance"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_13
+msgid "Settlement of bank acceptances"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_200
+msgid "Overall documentary credit charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_25
+msgid "Renting of direct debit box"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_52
+msgid ""
+"Payment of coupons from a deposit or settlement of coupons delivered over "
+"the counter - credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.statement.line,globalisation_level:0
+msgid ""
+"The value which is mentioned (1 to 9), specifies the hierarchy level of the "
+"globalisation of which this record is the first.\n"
+"The same code will be repeated at the end of the globalisation."
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,description2:0
+msgid "Secondary Account Description"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_211
+msgid "Credit arrangement fee | Additional credit arrangement fee"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: model:ir.actions.act_window,name:account_coda.action_coda_bank_statements
+#: model:ir.ui.menu,name:account_coda.menu_coda_bank_statements
+msgid "CODA Bank Statements"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_62
+msgid "Term loan"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_70
+msgid "Sale of traveller’s cheque"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,name:0
+#: field:coda.bank.statement,name:0
+msgid "Name"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,coda_creation_date:0
+msgid "CODA Creation Date"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:583
+#: code:addons/account_coda/wizard/account_coda_import.py:904
+#, python-format
+msgid ""
+"\n"
+"Unknown Error : "
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_035
+msgid "Charges foreign documentary bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_39
+msgid "Agios on guarantees given"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_070
+msgid "Forward arbitrage contracts : sum to be supplied by bank"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_56
+#: model:account.coda.trans.code,description:account_coda.actcc_11_56
+msgid "Reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_23
+msgid ""
+"Costs charged for all kinds of research (information on past transactions, "
+"address retrieval, ...)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_14
+msgid "Handling costs instalment credit"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_6
+msgid ""
+"Detail of 2. Simple amount without detailed data. Normally, data of this "
+"kind comes after type 2. The customer may ask for a separate file containing "
+"the detailed data. In that case, one will speak of a ‘separate application’. "
+"The records in a separate application keep type 6."
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "CODA Files"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_17
+msgid "Financial centralisation"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_404
+msgid "Discount commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_45
+msgid "Documentary credit charges"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:913
+#, python-format
+msgid ""
+"\n"
+"Number of errors : "
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_22
+msgid "Management/custody"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_51
+msgid "Tender"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_56
+msgid "Non-presented certified cheques"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_408
+msgid "Cover commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_071
+msgid "Fixed loan advance - availability"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda,name:0
+#: field:account.coda.import,coda_fname:0
+msgid "CODA Filename"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_31
+msgid "E.g. for signing invoices"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_37
+msgid "Various costs for possessing or using a payment card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_37
+msgid "Costs related to commercial paper"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_043
+#: model:account.coda.trans.code,description:account_coda.actcc_80_07
+msgid "Insurance costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_431
+msgid "Delivery of a copy"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,transfer_account:0
+msgid ""
+"Set here the default account that will be used for internal transfer between "
+"own bank accounts (e.g. transfer between current and deposit bank accounts)."
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: view:coda.bank.account:0
+#: view:coda.bank.statement:0
+#: view:coda.bank.statement.line:0
+msgid "Group By..."
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,awaiting_account:0
+msgid "Default Account for Unrecognized Movement"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:580
+#: code:addons/account_coda/wizard/account_coda_import.py:897
+#, python-format
+msgid ""
+"\n"
+"System Error : "
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_60
+msgid "Non-presented circular cheque"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,line_ids:0
+msgid "CODA Bank Statement lines"
+msgstr ""
+
+#. module: account_coda
+#: sql_constraint:account.coda:0
+msgid "This CODA has already been imported !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_19
+msgid "Documentary import credits"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:320
+#, python-format
+msgid ""
+"\n"
+"CODA parsing error on movement data record 2.2, seq nr %s!\n"
+"Please report this issue via your OpenERP support channel."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_001
+msgid "Data concerning the counterparty"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.comm.type:0
+msgid "CODA Structured Communication Type"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_07
+msgid "Contra-entry of a direct credit or of a discount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_55
+msgid "Interest term investment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_007
+#: model:account.coda.trans.code,description:account_coda.actcc_80_37
+msgid "Access right to database"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda_trans_type
+msgid "CODA transaction type"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,account_id:0
+msgid "Account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_37
+msgid "Costs relating to the payment of a foreign bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_13
+msgid "Eurocheque written out abroad"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_13_01
+msgid "Capital and/or interest (specified by the category)"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Glob. Am."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_17
+msgid "Charge for safe custody"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_102
+msgid ""
+"Credit transfer or cash payment with reconstituted structured format "
+"communication"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_86
+msgid "Payment after cession"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_14
+#: model:account.coda.trans.code,description:account_coda.actcc_47_14
+msgid "Warrant fallen due"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.actions.act_window,name:account_coda.action_imported_coda_files
+#: model:ir.ui.menu,name:account_coda.menu_imported_coda_files
+msgid "Imported CODA Files"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_29
+msgid "Charges collected for: - commercial information - sundry information"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_15
+msgid "In case of subscription before the interest due date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_43
+msgid "Foreign cheques"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_62
+msgid "Sale of gold/pieces under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_51
+msgid "The bank takes the initiative for crediting the customer’s account."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_13_05
+msgid "Full or partial reimbursement of a fixed advance at maturity date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_26
+msgid "Travel insurance premium"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_416
+msgid "Charges for the deposit of security"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_04
+msgid "At home as well as abroad"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:192
+#, python-format
+msgid ""
+"\n"
+"No matching CODA Bank Account Configuration record found !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_50
+msgid "Remittance of commercial paper - credit after collection"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+msgid "Search CODA Bank Statements"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_410
+msgid "Reclamation charges"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.actions.act_window,help:account_coda.action_coda_bank_statements
+msgid ""
+"The CODA Bank Statements contain the information encoded in their "
+"originating CODA file in a human readable format. The Bank Statements "
+"associated with a CODA contain the subset of the CODA Bank Statement data "
+"that is required for the creation of the Accounting Entries."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_114
+msgid "POS credit - individual transaction"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_70
+msgid "Settlement of discount bank acceptance"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_02
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_08
+msgid "Eurozone = countries which have the euro as their official currency"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_02
+msgid "The bank takes the initiative for debiting the customer’s account."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_58
+msgid "Reversal"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.account:0
+#: selection:coda.bank.account,state:0
+#: view:coda.bank.statement:0
+#: selection:coda.bank.statement,type:0
+msgid "Info"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_02
+msgid "Costs relating to electronic output"
+msgstr ""
+
+#. module: account_coda
+#: sql_constraint:account.coda.comm.type:0
+msgid "The Structured Communication Code must be unique !"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:57
+#, python-format
+msgid "Wizard in incorrect state. Please hit the Cancel button!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_418
+msgid "Endorsement commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_005
+msgid "Renting of letterbox"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_13
+msgid "Commission for renting a safe deposit box"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_39
+msgid "To be used for issued circular cheques given in consignment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_11
+msgid "Securities"
+msgstr ""
+
+#. module: account_coda
+#: selection:coda.bank.statement.line,type:0
+msgid "Free Communication"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_2
+msgid ""
+"Amount as totalised by the bank; e.g. : the total amount of a series of "
+"credit transfers with a structured communication As a matter of principle, "
+"this type will also be used when no detailed data (type 6 or 7) is following."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_37
+msgid "Cheque-related costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_033
+msgid "Charges for a foreign bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_13
+msgid "Cash withdrawal by your branch or agents"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_049
+msgid "Fiscal stamps/stamp duty"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_03_58
+msgid ""
+"Also for vouchers, postal orders, anything but bills of exchange, "
+"acquittances, promissory notes, etc."
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Select Your File :"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_06
+msgid "Damage relating to bills and cheques"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_09
+msgid "Unpaid voucher"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_13
+msgid "Unissued part (see 64)"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+#: model:ir.actions.act_window,name:account_coda.action_account_coda_import
+#: model:ir.actions.act_window,name:account_coda.wizard_account_coda_import_1
+#: model:ir.actions.act_window,name:account_coda.wizard_account_coda_import_2
+#: model:ir.model,name:account_coda.model_account_coda_import
+msgid "Import CODA File"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:289
+#: code:addons/account_coda/wizard/account_coda_import.py:481
+#, python-format
+msgid "Transaction Code unknown, please consult your bank."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_55
+msgid "Fixed advance – interest only"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.trans.type:0
+msgid "CODA Transaction Type"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,globalisation_level:0
+msgid "Globalisation Level"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_020
+msgid "Costs of physical delivery"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_60
+msgid "Sale of foreign bank notes"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.import,note:0
+msgid "Log"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+msgid "Search CODA Files"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_52
+msgid "Remittance of commercial paper - credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,active:0
+msgid ""
+"If the active field is set to False, it will allow you to hide the Bank "
+"Account without removing it."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_54
+msgid "Among other things advances or promissory notes"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_10
+msgid "Purchase of Smartcard"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:664
+#, python-format
+msgid ""
+"Transaction Type: %s - %s\n"
+"Transaction Family: %s - %s\n"
+"Transaction Code: %s - %s\n"
+"Transaction Category: %s - %s\n"
+"Structured Communication Type: %s - %s\n"
+"Communication: %s"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_208
+msgid "Commitment fee deferred payment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_005
+msgid "Data concerning the correspondent"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_66
+msgid "For professionals such as insurances and stockbrokers"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_19
+msgid ""
+"Collected for securities, gold, pass-books, etc. placed in safe custody"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_09_19
+msgid ""
+"Used in case of payments accepted under reserve of count, result of "
+"overcrediting"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:630
+#, python-format
+msgid ""
+"\n"
+"Configuration Error in journal %s!\n"
+"Please verify the Default Debit and Credit Account settings."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_09
+msgid "Agio on supplier's bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_213
+msgid "Financing fee"
+msgstr ""
+
+#. module: account_coda
+#: field:account.bank.statement.line.global,coda_statement_line_ids:0
+msgid "CODA Bank Statement Lines"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:170
+#, python-format
+msgid ""
+"\n"
+"Unsupported bank account structure !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_037
+msgid "Commission for handling charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_03
+msgid "Subscription to securities"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_425
+msgid "Foreign broker's commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_7
+msgid ""
+"Detail of 2. Simple account with detailed data The records in a separate "
+"application keep type 7."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_125
+#: model:account.coda.trans.code,description:account_coda.actcf_13
+#: view:coda.bank.statement.line:0
+msgid "Credit"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:155
+#, python-format
+msgid ""
+"\n"
+"Foreign bank accounts with BBAN structure are not supported !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_09
+msgid "Counter transactions"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_coda_bank_statement_line
+msgid "CODA Bank Statement Line"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_17
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_66
+msgid ""
+"In case of centralisation by the bank, type 2 will be allotted to this "
+"transaction. This total can be followed by the detailed movement."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_057
+msgid "Interest subsidy"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_41
+msgid "International credit transfers - non-SEPA credit transfers"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_03_87
+msgid "Overall amount, VAT included"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_01
+msgid "Payment of a foreign cheque"
+msgstr ""
+
+#. module: account_coda
+#: selection:coda.bank.statement.line,type:0
+msgid "General"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:856
+#, python-format
+msgid ""
+"\n"
+"Incorrect ending Balance in CODA Statement %s for Bank Account %s!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_04
+msgid "Issues"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_37
+msgid ""
+"If any, detail in the category (e.g. costs for presentation for acceptance, "
+"etc.)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_17
+msgid "Purchase of fiscal stamps"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_01
+#: model:account.coda.trans.code,description:account_coda.actcc_41_50
+msgid "Transfer"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "View Bank Statement(s)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_20
+msgid "Drawing up a certificate"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_013
+msgid "Payment commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_01
+msgid ""
+"Bills of exchange, acquittances, promissory notes; debit of the drawee"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "View CODA Bank Statement(s)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_15
+msgid "Your purchase bank cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_05
+msgid "Payment of voucher"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_68
+msgid "Documentary export credits"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,find_bbacom:0
+msgid "Lookup Invoice"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_03
+msgid "Cheques"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_56
+msgid "Unexecutable reimbursement"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_03
+msgid "Unpaid debt"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_52
+msgid ""
+"First credit of cheques, vouchers, luncheon vouchers, postal orders, credit "
+"under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_05
+msgid ""
+"Bill claimed back at the drawer's request (bill claimed back before maturity "
+"date)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_11
+msgid ""
+"Costs chargeable to clients who ask to have their correspondence kept at "
+"their disposal at the bank's counter"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_64
+msgid ""
+"Amount paid to the issuer by the bank in charge of the placement (firm "
+"underwriting or not); also used for the payment in full of partly-paid "
+"shares, see transaction 05"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_03_15
+msgid "Cheque drawn by the bank on itself, usually with charges."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_072
+msgid "Countervalue of commission to third party"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_01
+msgid "Individual transfer order"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:436
+#, python-format
+msgid ""
+"\n"
+"Movement data records of type 2.%s are not supported !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_02
+msgid "Payment by means of a payment card within the Eurozone"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_01
+msgid ""
+"Credit transfer given by the customer on paper or electronically, even if "
+"the execution date of this transfer is in the future. Domestic payments as "
+"well as euro payments meeting the requirements."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_35
+msgid "Closing (periodical settlements for interest, costs,…)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_51
+msgid "Unloading Proton"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_019
+msgid "Tax on physical delivery"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,statement_id:0
+msgid "Associated Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_08
+msgid ""
+"Debit of the remitter when the drawee pays in advance directly to the "
+"remitter (regards bank acceptances)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_103
+msgid "number (e.g. of the cheque, of the card, etc.)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_24
+msgid "Participation in and management of interest refund system"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: view:coda.bank.statement.line:0
+msgid "Glob. Amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_58
+msgid "Payment by your branch/agents"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_25
+#: model:account.coda.trans.code,description:account_coda.actcc_43_70
+msgid "Purchase of traveller’s cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_39
+msgid "Your issue circular cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_09
+msgid ""
+"For professionals (stockbrokers) only, whoever the issuer may be (Belgian or "
+"foreigner)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_33
+msgid ""
+"Costs not specified otherwise, often with a manual communication (e.g. for "
+"collecting, ordering funds). VAT excluded = type 0 VAT included = type 3 (at "
+"least 3 articles)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_023
+msgid "Exercising fee"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:934
+#, python-format
+msgid "Import CODA File result"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_111
+msgid "POS credit – Globalisation"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Search Bank Transactions"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:577
+#, python-format
+msgid ""
+"\n"
+"Application Error : "
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,description1:0
+#: help:coda.bank.account,description2:0
+msgid ""
+"The Primary or Secondary Account Description should match the corresponding "
+"Account Description in the CODA file."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_17
+msgid "Management fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_03
+msgid "Cash withdrawal by card (ATM)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_16
+msgid "Bank confirmation to revisor or accountant"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcf_04
+msgid "Cards"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Statement"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.trans.type:0
+#: model:ir.actions.act_window,name:account_coda.action_account_coda_trans_type_form
+#: model:ir.ui.menu,name:account_coda.menu_action_account_coda_trans_type_form
+msgid "CODA Transaction Types"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_50
+msgid "Credit after a payment at a terminal"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_02
+msgid "Long-term loan"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_05
+#: model:account.coda.trans.code,description:account_coda.actcc_30_54
+msgid "Capital and/or interest term investment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_68
+msgid "Credit of a payment via electronic purse"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_028
+msgid "Fidelity premium"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_39
+msgid "Provisionally unpaid due to other reason than manual presentation"
+msgstr ""
+
+#. module: account_coda
+#: constraint:coda.bank.account:0
+msgid ""
+"\n"
+"\n"
+"Configuration Error! \n"
+"The Bank Account Currency should match the Journal Currency !"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_35
+msgid ""
+"Costs charged for calculating the amount of the tax to be paid (e.g. "
+"Fiscomat)."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_014
+msgid "Collection commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_52
+msgid "Remittance of foreign cheque credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,counterparty_number:0
+msgid "Counterparty Number"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "_Import"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_03
+msgid "See annexe III : communication 124"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:420
+#, python-format
+msgid ""
+"\n"
+" Bank Statement '%s' line '%s':\n"
+" The bank account '%s' is not defined for the partner '%s'!\n"
+" Please correct the configuration and perform the import again or "
+"otherwise change the corresponding entry manually in the generated Bank "
+"Statement."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_113
+msgid "ATM/POS debit"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_30_03
+msgid "Forward purchase of foreign exchange"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_50
+msgid "Credit of a payment via terminal"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_52
+msgid "Credit provider"
+msgstr ""
+
+#. module: account_coda
+#: selection:account.coda.trans.code,type:0
+msgid "Transaction Family"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_68
+msgid "In case coupons attached to a purchased security are missing"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:57
+#: code:addons/account_coda/wizard/account_coda_import.py:325
+#: code:addons/account_coda/wizard/account_coda_import.py:337
+#: code:addons/account_coda/wizard/account_coda_import.py:362
+#: code:addons/account_coda/wizard/account_coda_import.py:513
+#: code:addons/account_coda/wizard/account_coda_import.py:524
+#, python-format
+msgid "Error!"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.statement,type:0
+msgid ""
+"No Bank Statements are associated with CODA Bank Statements of type 'Info'."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_09_58
+msgid ""
+"Takes priority over transaction 52 (hence a payment made by an agent in a "
+"night safe = 58 and not 52)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_121
+msgid "Commercial bills"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_11
+msgid "Costs for the safe custody of correspondence"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_041
+msgid "Credit card costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_56
+msgid "Subsidy"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_06
+msgid "Payment with tank card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_107
+msgid "Direct debit – DOM’80"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_60
+msgid "Reversal of voucher"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_00_87
+msgid "Costs refunded"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_17
+msgid "Financial centralisation (debit)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_02
+msgid "Payment to the bank on maturity date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_025
+msgid "Individual entry for exchange charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_004
+#: model:account.coda.trans.code,description:account_coda.actcc_80_09
+msgid "Postage"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_09_50
+msgid ""
+"For own account - the comment for the client is given in the communication; "
+"also for mixed payments (cash + cheques) - not to be communicated to the "
+"clients; for payments made by a third person: see family 01"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_09_68
+msgid ""
+"In case of payment accepted under reserve of count; result of undercrediting "
+"- see also transaction 19"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,bank_id:0
+msgid ""
+"Bank Account Number.\n"
+"The CODA import function will find its CODA processing parameters on this "
+"number."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_05
+msgid "Payment of wages, etc."
+msgstr ""
+
+#. module: account_coda
+#: sql_constraint:coda.bank.account:0
+msgid ""
+"The combination of Bank Account, Account Description and Currency must be "
+"unique !"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Debit"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_10
+msgid "Renewal of agreed maturity date"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_55
+msgid "Income from payments by GSM"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_19
+msgid "Regularisation costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_13
+#: model:account.coda.trans.code,description:account_coda.actcc_41_13
+msgid "Transfer from your account"
+msgstr ""
+
+#. module: account_coda
+#: sql_constraint:account.bank.statement.line.global:0
+msgid "The code must be unique !"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,currency:0
+#: help:coda.bank.statement,currency:0
+msgid "The currency of the CODA Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_07
+msgid "Collective transfers"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:116
+#, python-format
+msgid ""
+"\n"
+"CODA V%s statements are not supported, please contact your bank!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_427
+msgid "Belgian Stock Exchange tax"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_12
+msgid "Safe custody"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_001
+msgid "Interest received"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.ui.menu,name:account_coda.menu_account_coda_import
+msgid "Import CODA Files"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_105
+msgid "original amount of the transaction"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_09
+msgid "Your semi-standing order"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:508
+#, python-format
+msgid ""
+"\n"
+"CODA parsing error on information data record 3.2, seq nr %s!\n"
+"Please report this issue via your OpenERP support channel."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_09
+#: model:account.coda.trans.code,description:account_coda.actcc_11_70
+msgid "Settlement of securities"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_01
+msgid "Debit customer who is loading"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_047
+msgid "Charges extension bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_18
+msgid "Trade information"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.trans.code,comment:0
+msgid "Comment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_203
+msgid ""
+"Confirmation fee | Additional confirmation fee | Commitment fee | Flat fee | "
+"Confirmation reservation commission | Additional reservation commission"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_027
+msgid "Charges for unpaid bills"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_204
+msgid "Amendment fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_11
+msgid "Your semi-standing order – payment to employees"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.ui.menu,name:account_coda.menu_account_coda
+msgid "CODA Processing"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_11
+msgid "Your repayment mortgage loan"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_00_37
+#: model:account.coda.trans.code,description:account_coda.actcc_01_37
+#: model:account.coda.trans.code,description:account_coda.actcc_04_37
+#: model:account.coda.trans.code,description:account_coda.actcc_05_37
+#: model:account.coda.trans.code,description:account_coda.actcc_09_37
+#: model:account.coda.trans.code,description:account_coda.actcc_11_37
+#: model:account.coda.trans.code,description:account_coda.actcc_30_37
+#: model:account.coda.trans.code,description:account_coda.actcc_35_37
+#: model:account.coda.trans.code,description:account_coda.actcc_80_35
+msgid "Costs"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_050
+msgid "Capital term investment"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_03_05
+msgid "Payment of holiday pay, etc."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_25
+msgid ""
+"Commission for the renting of boxes put at the disposal for the "
+"correspondence"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_008
+#: model:account.coda.trans.code,description:account_coda.actcc_80_29
+msgid "Information charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_03
+msgid ""
+"Credit transfer for which the order has been given once and which is carried "
+"out again at regular intervals without any change."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_0
+msgid ""
+"Simple amount without detailed data; e.g. : an individual credit transfer "
+"(free of charges)."
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,find_partner:0
+msgid "Partner lookup via Bank Account Number."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_403
+msgid "Minimum discount rate"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_47_56
+msgid "Remittance of guaranteed foreign supplier's bill"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_02
+msgid "Tenders"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_43_07
+msgid "Unpaid foreign cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_11_03
+msgid ""
+"Bonds, shares, tap issues of CDs, with or without payment of interest, etc."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_09_66
+msgid "Repurchase of petrol coupons"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_058
+msgid "Capital premium"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_15
+#: model:account.coda.trans.code,description:account_coda.actcc_11_62
+msgid "Interim interest on subscription"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,counterparty_currency:0
+msgid "Counterparty Currency"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_202
+msgid "Advising commission | Additional advising commission"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,find_partner:0
+msgid "Lookup Partner"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: view:coda.bank.statement.line:0
+msgid "Glob. Id"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement:0
+#: view:coda.bank.statement.line:0
+#: model:ir.actions.act_window,name:account_coda.action_coda_bank_statement_line
+#: model:ir.ui.menu,name:account_coda.coda_bank_statement_line
+msgid "CODA Statement Lines"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,globalisation_amount:0
+msgid "Globalisation Amount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_01_13
+msgid ""
+"Transfer from one account to another account of the same customer at the "
+"bank's or the customer's initiative (intracompany)."
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:890
+#, python-format
+msgid ""
+"\n"
+"Error ! "
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda:0
+#: field:account.coda,user_id:0
+msgid "User"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda_trans_code
+msgid "CODA transaction code"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_05_52
+msgid "Credit under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:125
+#, python-format
+msgid ""
+"\n"
+"The CODA creation date doesn't fall within a defined Accounting Period!\n"
+"Please create the Accounting Period for date %s."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_04_50
+msgid "Except Proton"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_011
+msgid "Information pertaining to coupons"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_122
+msgid "Bills - calculation of interest"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.trans.code:0
+#: model:ir.actions.act_window,name:account_coda.action_account_coda_trans_code_form
+#: model:ir.ui.menu,name:account_coda.menu_action_account_coda_trans_code_form
+msgid "CODA Transaction Codes"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,state:0
+msgid ""
+"No Bank Statements will be generated for CODA Bank Statements from Bank "
+"Accounts of type 'Info'."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_49_03
+msgid "ATM withdrawal"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_012
+msgid "Exchange commission"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.account:0
+#: model:ir.actions.act_window,name:account_coda.action_coda_bank_account_form
+#: model:ir.model,name:account_coda.model_coda_bank_account
+#: model:ir.ui.menu,name:account_coda.menu_action_coda_bank_account_form
+msgid "CODA Bank Account Configuration"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.account,active:0
+msgid "Active"
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/wizard/account_coda_import.py:724
+#, python-format
+msgid ""
+"Partner name: %s \n"
+"Partner Account Number: %s\n"
+"Transaction Type: %s - %s\n"
+"Transaction Family: %s - %s\n"
+"Transaction Code: %s - %s\n"
+"Transaction Category: %s - %s\n"
+"Structured Communication Type: %s - %s\n"
+"Communication: %s"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_04
+msgid "Cash withdrawal from an ATM"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,balance_end:0
+msgid "Balance"
+msgstr ""
+
+#. module: account_coda
+#: field:account.bank.statement,coda_statement_id:0
+msgid "Associated CODA Bank Statement"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_13_37
+msgid "Credit-related costs"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.ui.menu,name:account_coda.menu_manage_coda
+msgid "CODA Configuration"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_07_39
+msgid "Debit of the drawer after credit under usual reserve or discount"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_66
+msgid "Financial centralisation (credit)"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_08
+msgid "Payment in advance"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Close"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_19
+msgid "Special charge for safe custody"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_01
+msgid "Payment of your cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_43_07
+msgid "Foreign cheque remitted for collection that returns unpaid"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_80_07
+msgid ""
+"- insurance costs of account holders against fatal accidents - passing-on of "
+"several insurance costs"
+msgstr ""
+
+#. module: account_coda
+#: help:coda.bank.account,awaiting_account:0
+msgid ""
+"Set here the default account that will be used if the partner cannot be "
+"unambiguously identified."
+msgstr ""
+
+#. module: account_coda
+#: code:addons/account_coda/account_coda.py:280
+#, python-format
+msgid "No CODA Bank Statement found for this Bank Statement!"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_07
+msgid "Definitely unpaid cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_04_08
+msgid "Payment by means of a payment card outside the Eurozone"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.comm.type,description:account_coda.acct_106
+msgid ""
+"Method of calculation (VAT, withholding tax on income, commission, etc.)"
+msgstr ""
+
+#. module: account_coda
+#: model:ir.model,name:account_coda.model_account_coda_comm_type
+msgid "CODA structured communication type"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_64
+msgid "Reversal of settlement of credit card"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_58
+msgid ""
+"Repayable securities from a deposit or delivered at the counter - credit "
+"under usual reserve"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.type,description:account_coda.actt_5
+msgid ""
+"Detail of 1. Standard procedure is no detailing. However, the customer may "
+"ask for detailed data to be included into his file after the overall record "
+"(type 1)."
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.comm.type,description:0
+#: field:account.coda.trans.category,description:0
+#: field:account.coda.trans.code,description:0
+#: field:account.coda.trans.type,description:0
+msgid "Description"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_07_01
+msgid "Payment commercial paper"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_419
+msgid "Bank service fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_41_37
+msgid "Costs relating to outgoing foreign transfers and non-SEPA transfers"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_03_17
+msgid "Your certified cheque"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_400
+msgid "Acceptance fee"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_11_68
+msgid "Compensation for missing coupon"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Debit Transactions."
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_33
+msgid "Miscellaneous fees and commissions"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_03
+#: model:account.coda.trans.code,description:account_coda.actcc_41_03
+msgid "Standing order"
+msgstr ""
+
+#. module: account_coda
+#: selection:coda.bank.statement.line,type:0
+msgid "Customer"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_49
+#: model:account.coda.trans.code,description:account_coda.actcc_01_99
+#: model:account.coda.trans.code,description:account_coda.actcc_03_49
+#: model:account.coda.trans.code,description:account_coda.actcc_03_99
+#: model:account.coda.trans.code,description:account_coda.actcc_04_49
+#: model:account.coda.trans.code,description:account_coda.actcc_04_99
+#: model:account.coda.trans.code,description:account_coda.actcc_05_49
+#: model:account.coda.trans.code,description:account_coda.actcc_05_99
+#: model:account.coda.trans.code,description:account_coda.actcc_07_49
+#: model:account.coda.trans.code,description:account_coda.actcc_07_99
+#: model:account.coda.trans.code,description:account_coda.actcc_09_49
+#: model:account.coda.trans.code,description:account_coda.actcc_09_99
+#: model:account.coda.trans.code,description:account_coda.actcc_11_49
+#: model:account.coda.trans.code,description:account_coda.actcc_11_99
+#: model:account.coda.trans.code,description:account_coda.actcc_13_49
+#: model:account.coda.trans.code,description:account_coda.actcc_13_99
+#: model:account.coda.trans.code,description:account_coda.actcc_30_49
+#: model:account.coda.trans.code,description:account_coda.actcc_30_99
+#: model:account.coda.trans.code,description:account_coda.actcc_35_49
+#: model:account.coda.trans.code,description:account_coda.actcc_35_99
+#: model:account.coda.trans.code,description:account_coda.actcc_41_49
+#: model:account.coda.trans.code,description:account_coda.actcc_41_99
+#: model:account.coda.trans.code,description:account_coda.actcc_43_49
+#: model:account.coda.trans.code,description:account_coda.actcc_43_99
+#: model:account.coda.trans.code,description:account_coda.actcc_47_49
+#: model:account.coda.trans.code,description:account_coda.actcc_47_99
+#: model:account.coda.trans.code,description:account_coda.actcc_80_49
+#: model:account.coda.trans.code,description:account_coda.actcc_80_99
+msgid "Cancellation or correction"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.account:0
+#: field:coda.bank.account,bank_id:0
+#: field:coda.bank.statement,coda_bank_account_id:0
+#: view:coda.bank.statement.line:0
+#: field:coda.bank.statement.line,coda_bank_account_id:0
+msgid "Bank Account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,comment:account_coda.actcc_13_56
+msgid "Interest or capital subsidy"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "Fin.Account"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_01_62
+msgid "Unpaid postal order"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_428
+msgid "Interest accrued"
+msgstr ""
+
+#. module: account_coda
+#: field:account.coda.comm.type,code:0
+msgid "Structured Communication Type"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_401
+msgid "Visa charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_210
+msgid "Commitment fee"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.trans.category:0
+#: model:ir.actions.act_window,name:account_coda.action_account_coda_trans_category_form
+#: model:ir.ui.menu,name:account_coda.menu_action_account_coda_trans_category_form
+msgid "CODA Transaction Categories"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement.line,sequence:0
+msgid "Sequence"
+msgstr ""
+
+#. module: account_coda
+#: view:account.coda.import:0
+msgid "Results :"
+msgstr ""
+
+#. module: account_coda
+#: field:coda.bank.statement,coda_id:0
+#: model:ir.actions.act_window,name:account_coda.act_coda_bank_statement_goto_account_coda
+msgid "CODA Data File"
+msgstr ""
+
+#. module: account_coda
+#: view:coda.bank.statement.line:0
+msgid "CODA Statement Line"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_073
+msgid "Costs of ATM abroad"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_018
+msgid "Tental guarantee charges"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.category,description:account_coda.actrca_430
+msgid "Recovery of foreign tax"
+msgstr ""
+
+#. module: account_coda
+#: model:account.coda.trans.code,description:account_coda.actcc_80_01
+msgid "Guarantee card charges"
+msgstr ""
diff --git a/addons/account_followup/__openerp__.py b/addons/account_followup/__openerp__.py
index 43b1c4b2859..87b04c18219 100644
--- a/addons/account_followup/__openerp__.py
+++ b/addons/account_followup/__openerp__.py
@@ -64,7 +64,6 @@ Note that if you want to check the follow-up level for a given partner/account e
],
'installable': True,
'auto_install': False,
- 'certificate': '0072481076453',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/__openerp__.py b/addons/account_payment/__openerp__.py
index dd08386b064..66d0201b2fe 100644
--- a/addons/account_payment/__openerp__.py
+++ b/addons/account_payment/__openerp__.py
@@ -65,6 +65,5 @@ have a new option to import payment orders as bank statement lines.
],
'installable': True,
'auto_install': False,
- 'certificate': '0061703998541',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_payment/wizard/account_payment_order.py b/addons/account_payment/wizard/account_payment_order.py
index 713784798fc..455475b0ae5 100644
--- a/addons/account_payment/wizard/account_payment_order.py
+++ b/addons/account_payment/wizard/account_payment_order.py
@@ -88,7 +88,7 @@ class payment_order_create(osv.osv_memory):
'partner_id': line.partner_id and line.partner_id.id or False,
'communication': line.ref or '/',
'date': date_to_pay,
- 'currency': line.invoice and line.invoice.currency_id.id or False,
+ 'currency': (line.invoice and line.invoice.currency_id.id) or line.journal_id.currency.id or line.journal_id.company_id.currency_id.id,
}, context=context)
return {'type': 'ir.actions.act_window_close'}
@@ -120,4 +120,4 @@ class payment_order_create(osv.osv_memory):
payment_order_create()
-# 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_sequence/__openerp__.py b/addons/account_sequence/__openerp__.py
index 16f13dc5178..2c4b157303f 100644
--- a/addons/account_sequence/__openerp__.py
+++ b/addons/account_sequence/__openerp__.py
@@ -49,7 +49,6 @@ You can customize the following attributes of the sequence:
'demo': [],
'installable': True,
'auto_install': False,
- 'certificate': '00475376442024623469',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py
index a6bb9dc5159..c0011c8b3c5 100644
--- a/addons/account_voucher/__openerp__.py
+++ b/addons/account_voucher/__openerp__.py
@@ -72,7 +72,6 @@ This module manages:
'test/case4_cad_chf.yml',
'test/case_eur_usd.yml',
],
- 'certificate': '0037580727101',
'auto_install': False,
'application': True,
'installable': True,
diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py
index c74ca5f833a..30358f701ef 100644
--- a/addons/account_voucher/account_voucher.py
+++ b/addons/account_voucher/account_voucher.py
@@ -32,11 +32,11 @@ class res_company(osv.osv):
_columns = {
'income_currency_exchange_account_id': fields.many2one(
'account.account',
- string="Income Currency Rate",
+ string="Gain Exchange Rate Account",
domain="[('type', '=', 'other')]",),
'expense_currency_exchange_account_id': fields.many2one(
'account.account',
- string="Expense Currency Rate",
+ string="Loss Exchange Rate Account",
domain="[('type', '=', 'other')]",),
}
@@ -782,9 +782,16 @@ class account_voucher(osv.osv):
vals[key].update(res[key])
return vals
+ def button_proforma_voucher(self, cr, uid, ids, context=None):
+ context = context or {}
+ wf_service = netsvc.LocalService("workflow")
+ for vid in ids:
+ wf_service.trg_validate(uid, 'account.voucher', vid, 'proforma_voucher', cr)
+ return {'type': 'ir.actions.act_window_close'}
+
def proforma_voucher(self, cr, uid, ids, context=None):
self.action_move_line_create(cr, uid, ids, context=context)
- return {'type': 'ir.actions.act_window_close'}
+ return True
def action_cancel_draft(self, cr, uid, ids, context=None):
wf_service = netsvc.LocalService("workflow")
@@ -950,11 +957,11 @@ class account_voucher(osv.osv):
if amount_residual > 0:
account_id = line.voucher_id.company_id.expense_currency_exchange_account_id
if not account_id:
- raise osv.except_osv(_('Warning!'),_("First you have to configure the 'Income Currency Rate' on the company, then create accounting entry for currency rate difference."))
+ raise osv.except_osv(_('Warning!'),_("First you have to configure the 'Expense Currency Rate' on the company, then create accounting entry for currency rate difference."))
else:
account_id = line.voucher_id.company_id.income_currency_exchange_account_id
if not account_id:
- raise osv.except_osv(_('Warning!'),_("First you have to configure the 'Expense Currency Rate' on the company, then create accounting entry for currency rate difference."))
+ raise osv.except_osv(_('Warning!'),_("First you have to configure the 'Income Currency Rate' on the company, then create accounting entry for currency rate difference."))
# Even if the amount_currency is never filled, we need to pass the foreign currency because otherwise
# the receivable/payable account may have a secondary currency, which render this field mandatory
account_currency_id = company_currency <> current_currency and current_currency or False
diff --git a/addons/account_voucher/account_voucher_data.xml b/addons/account_voucher/account_voucher_data.xml
index 656d2c2cd91..fd25fec9493 100644
--- a/addons/account_voucher/account_voucher_data.xml
+++ b/addons/account_voucher/account_voucher_data.xml
@@ -7,11 +7,11 @@
notificationeInvoicing & Payments application installed!
- OpenERP's electronic invoicing accelerates the creation of invoices and collection of customer payments. Invoices are created in a few clicks and your customers receive them by email. They can pay online and/or import them in their own system.
+
+
You can track customer payments easily and automate follow-ups. You get an overview of the discussion with your customers on each invoice for easier traceability. For advanced accounting features, you should install the "Accounting and Finance" module.
- The agenda is shared between employees and fully integrated with
+ The calendar is shared between employees and fully integrated with
other applications such as the employee holidays or the business
opportunities.
@@ -339,10 +334,10 @@
+ name="Calendar" action="action_crm_meeting"/>
-
diff --git a/addons/base_calendar/test/base_calendar_test.yml b/addons/base_calendar/test/base_calendar_test.yml
index 2f5ff7945ee..cc1b3c3b292 100644
--- a/addons/base_calendar/test/base_calendar_test.yml
+++ b/addons/base_calendar/test/base_calendar_test.yml
@@ -54,24 +54,3 @@
-
!python {model: calendar.event}: |
self.write(cr, uid, [ref("calendar_event_alldaytestevent0")], {'alarm_id': ref("res_alarm_daybeforeeventstarts0")})
--
- In order to assign attendee I will invite Demo user
--
- !record {model: base_calendar.invite.attendee, id: base_calendar_invite_attendee_0}:
- type: internal
- send_mail: False
- partner_id: base.res_partner_9 # Put bcz of problem in read
- user_ids:
- - base.user_demo
--
- Then I click on Invite Button
--
- !python {model: base_calendar.invite.attendee}: |
- self.do_invite(cr, uid, [ref("base_calendar_invite_attendee_0")], {'active_id': ref("calendar_event_alldaytestevent0"), 'model' : 'calendar.event', 'attendee_field':'attendee_ids'})
--
- Now I will Accept this invitation
--
- !python {model: calendar.attendee}: |
- ids = self.search(cr, uid, [('ref', '=', 'calendar.event' + ',' + str(ref("calendar_event_alldaytestevent0")))])
- if ids:
- self.do_accept(cr, uid, ids, context=context)
diff --git a/addons/base_calendar/wizard/base_calendar_invite_attendee.py b/addons/base_calendar/wizard/base_calendar_invite_attendee.py
deleted file mode 100644
index 344056eb585..00000000000
--- a/addons/base_calendar/wizard/base_calendar_invite_attendee.py
+++ /dev/null
@@ -1,170 +0,0 @@
-# -*- coding: utf-8 -*-
-##############################################################################
-#
-# OpenERP, Open Source Management Solution
-# Copyright (C) 2004-2009 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 .. import base_calendar
-from osv import fields, osv
-from tools.translate import _
-import tools
-
-
-class base_calendar_invite_attendee(osv.osv_memory):
- """
- Invite attendee.
- """
-
- _name = "base_calendar.invite.attendee"
- _description = "Invite Attendees"
-
- _columns = {
- 'type': fields.selection([('internal', 'Internal User'), \
- ('external', 'External Email'), \
- ('partner', 'Partner Contacts')], 'Type', required=True, help="Select whom you want to Invite"),
- 'user_ids': fields.many2many('res.users', 'invite_user_rel',
- 'invite_id', 'user_id', 'Users'),
- 'partner_id': fields.many2one('res.partner', 'Partner'),
- 'email': fields.char('Email', size=124, help="Provide external email address who will receive this invitation."),
- 'contact_ids': fields.many2many('res.partner', 'invite_contact_rel',
- 'invite_id', 'contact_id', 'Contacts'),
- 'send_mail': fields.boolean('Send mail?', help='Check this if you want to \
-send an Email to Invited Person')
- }
-
- _defaults = {
- 'type': 'internal',
- 'send_mail': True
- }
-
- def do_invite(self, cr, uid, ids, context=None):
- """
- Invites attendee for meeting..
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of base calendar invite attendee’s IDs.
- @param context: A standard dictionary for contextual values
- @return: Dictionary of {}.
- """
-
- if context is None:
- context = {}
-
- model = False
- context_id = context and context.get('active_id', False) or False
- if not context or not context.get('model'):
- return {'type': 'ir.actions.act_window_close'}
- else:
- model = context.get('model')
-
- model_field = context.get('attendee_field', False)
- obj = self.pool.get(model)
- res_obj = obj.browse(cr, uid, context_id, context=context)
- att_obj = self.pool.get('calendar.attendee')
- user_obj = self.pool.get('res.users')
- current_user = user_obj.browse(cr, uid, uid, context=context)
-
- for datas in self.read(cr, uid, ids, context=context):
- type = datas.get('type')
- vals = []
- mail_to = []
- attendees = []
- ref = {}
-
- if not model == 'calendar.attendee':
- if context_id:
- ref = {'ref': '%s,%s' % (model, base_calendar.base_calendar_id2real_id(context_id))}
- else:
- return {'type': 'ir.actions.act_window_close'}
- if type == 'internal':
-
- if not datas.get('user_ids'):
- raise osv.except_osv(_('Error!'), ("Please select any user."))
- for user_id in datas.get('user_ids'):
- user = user_obj.browse(cr, uid, user_id)
- res = {
- 'user_id': user_id,
- 'email': user.email
- }
- res.update(ref)
- vals.append(res)
- if user.email:
- mail_to.append(user.email)
-
- elif type == 'external' and datas.get('email'):
- res = {'email': datas['email']}
- res.update(ref)
- vals.append(res)
- mail_to.append(datas['email'])
-
- elif type == 'partner':
- add_obj = self.pool.get('res.partner')
- for contact in add_obj.browse(cr, uid, datas['contact_ids']):
- res = {
- 'partner_id': contact.id,
- 'email': contact.email
- }
- res.update(ref)
- vals.append(res)
- if contact.email:
- mail_to.append(contact.email)
-
- for att_val in vals:
- if model == 'calendar.attendee':
- att = att_obj.browse(cr, uid, context_id)
- att_val.update({
- 'parent_ids': [(4, att.id)],
- 'ref': att.ref and (att.ref._name + ',' +str(att.ref.id)) or False
- })
-
- attendees.append(att_obj.create(cr, uid, att_val))
- if model_field:
- for attendee in attendees:
- obj.write(cr, uid, res_obj.id, {model_field: [(4, attendee)]})
-
- if datas.get('send_mail'):
- if not mail_to:
- name = map(lambda x: x[1], filter(lambda x: type==x[0], \
- self._columns['type'].selection))
- raise osv.except_osv(_('Error!'), _("%s must have an email address to send mail.") %(name[0]))
- att_obj._send_mail(cr, uid, attendees, mail_to, \
- email_from = current_user.email or tools.config.get('email_from', False))
-
- return {'type': 'ir.actions.act_window_close'}
-
-
- def onchange_partner_id(self, cr, uid, ids, partner_id, *args, **argv):
- """
- Make entry on contact_ids on change of partner_id field.
- @param cr: the current row, from the database cursor,
- @param uid: the current user’s ID for security checks,
- @param ids: List of base calendar invite attendee’s IDs.
- @param partner_id: id of Partner
- @return: dictionary of value.
- """
-
- if not partner_id:
- return {'value': {'contact_ids': []}}
- cr.execute('SELECT id FROM res_partner \
- WHERE id=%s or parent_id =%s' , (partner_id,partner_id,))
- contacts = map(lambda x: x[0], cr.fetchall())
- return {'value': {'contact_ids': contacts}}
-
-base_calendar_invite_attendee()
-
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_calendar/wizard/base_calendar_invite_attendee_view.xml b/addons/base_calendar/wizard/base_calendar_invite_attendee_view.xml
deleted file mode 100644
index 5510259a7a7..00000000000
--- a/addons/base_calendar/wizard/base_calendar_invite_attendee_view.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
-
-
-
- Invite Attendees
- base_calendar.invite.attendee
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Invite Attendees
- ir.actions.act_window
- base_calendar.invite.attendee
- form
- form
- new
-
-
-
-
diff --git a/addons/base_crypt/__openerp__.py b/addons/base_crypt/__openerp__.py
index d0252f6810c..97f6c98aeb8 100644
--- a/addons/base_crypt/__openerp__.py
+++ b/addons/base_crypt/__openerp__.py
@@ -58,7 +58,6 @@ will disable LDAP authentication completely if installed at the same time.
'data': [],
'auto_install': False,
'installable': True,
- 'certificate': '00721290471310299725',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_iban/__openerp__.py b/addons/base_iban/__openerp__.py
index 76c397586c9..7f966255bbf 100644
--- a/addons/base_iban/__openerp__.py
+++ b/addons/base_iban/__openerp__.py
@@ -35,7 +35,6 @@ with a single statement.
'data': ['base_iban_data.xml' , 'base_iban_view.xml'],
'installable': True,
'auto_install': False,
- 'certificate': '0050014379549',
'images': ['images/base_iban1.jpeg'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_module_doc_rst/__openerp__.py b/addons/base_module_doc_rst/__openerp__.py
index 100a90dbd96..f1de13bc7f0 100644
--- a/addons/base_module_doc_rst/__openerp__.py
+++ b/addons/base_module_doc_rst/__openerp__.py
@@ -42,7 +42,6 @@ This module generates the Technical Guides of selected modules in Restructured T
],
'demo': [],
'installable': True,
- 'certificate': '001288481437217734509',
'images': ['images/base_module_doc_rst1.jpeg'],
}
diff --git a/addons/base_module_record/__openerp__.py b/addons/base_module_record/__openerp__.py
index 00af464b3ee..532dcfc932e 100644
--- a/addons/base_module_record/__openerp__.py
+++ b/addons/base_module_record/__openerp__.py
@@ -53,7 +53,6 @@ Select datetime criteria of recording and objects to be recorded and Record modu
],
'demo': [],
'installable': True,
- 'certificate': '0083134865813',
'images': ['images/base_module_record1.jpeg','images/base_module_record2.jpeg','images/base_module_record3.jpeg',]
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_report_designer/__openerp__.py b/addons/base_report_designer/__openerp__.py
index 3e0ca2152da..36e15c96877 100644
--- a/addons/base_report_designer/__openerp__.py
+++ b/addons/base_report_designer/__openerp__.py
@@ -38,7 +38,6 @@ Once you have modified it you can upload the report using the same wizard.
'demo': [],
'installable': True,
'auto_install': False,
- 'certificate': '0056379010493',
'images': ['images/base_report_designer1.jpeg','images/base_report_designer2.jpeg',],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_setup/__openerp__.py b/addons/base_setup/__openerp__.py
index cf69933c84a..de2d8236ece 100644
--- a/addons/base_setup/__openerp__.py
+++ b/addons/base_setup/__openerp__.py
@@ -43,7 +43,6 @@ Shows you a list of applications features to install from.
'demo': [],
'installable': True,
'auto_install': False,
- 'certificate': '0086711085869',
'images': ['images/base_setup1.jpeg','images/base_setup2.jpeg','images/base_setup3.jpeg','images/base_setup4.jpeg',],
'js': ['static/src/js/base_setup.js'],
'css': ['static/src/css/base_setup.css'],
diff --git a/addons/base_status/base_stage.py b/addons/base_status/base_stage.py
index 9db3ece7d8b..2cb5a4c1859 100644
--- a/addons/base_status/base_stage.py
+++ b/addons/base_status/base_stage.py
@@ -307,7 +307,7 @@ class base_stage(object):
destination=False)
def remind_user(self, cr, uid, ids, context=None, attach=False, destination=True):
- if 'message_post' in self:
+ if hasattr(self, 'message_post'):
for case in self.browse(cr, uid, ids, context=context):
if destination:
recipient_id = case.user_id.partner_id.id
diff --git a/addons/base_tools/__openerp__.py b/addons/base_tools/__openerp__.py
index 84f10e78959..71f6cbe549c 100644
--- a/addons/base_tools/__openerp__.py
+++ b/addons/base_tools/__openerp__.py
@@ -13,7 +13,6 @@ Creates menu link for Tools from where tools like survey, lunch, idea are access
""",
'data': ['tools_view.xml'],
'installable': True,
- 'certificate' : '00571588675379342237'
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/base_vat/__openerp__.py b/addons/base_vat/__openerp__.py
index dfa23bb54fe..3071ddf2f5a 100644
--- a/addons/base_vat/__openerp__.py
+++ b/addons/base_vat/__openerp__.py
@@ -58,7 +58,6 @@ only the country code will be validated.
'data': ['base_vat_view.xml'],
'installable': True,
'auto_install': False,
- 'certificate': '0084849360989',
'images': ['images/1_partner_vat.jpeg'],
}
diff --git a/addons/board/__openerp__.py b/addons/board/__openerp__.py
index 2690012f3b4..e699e091176 100644
--- a/addons/board/__openerp__.py
+++ b/addons/board/__openerp__.py
@@ -42,7 +42,6 @@ Allows users to create custom dashboard.
'qweb': ['static/src/xml/*.xml'],
'installable': True,
'auto_install': False,
- 'certificate': '0076912305725',
'images': ['images/1_dashboard_definition.jpeg','images/2_publish_note.jpeg','images/3_admin_dashboard.jpeg',],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/caldav/__openerp__.py b/addons/caldav/__openerp__.py
index 4d35b00bdb4..45edd6e659e 100644
--- a/addons/caldav/__openerp__.py
+++ b/addons/caldav/__openerp__.py
@@ -69,7 +69,6 @@ To access OpenERP Calendar using WebCal to remote site use the URL like:
],
'installable': True,
'auto_install': False,
- 'certificate': '00924841426645403741',
'images': ['images/calendar_collections.jpeg','images/calendars.jpeg','images/export_ics_file.jpeg'],
}
diff --git a/addons/claim_from_delivery/__openerp__.py b/addons/claim_from_delivery/__openerp__.py
index 9e3f7f59ca2..453312233f6 100644
--- a/addons/claim_from_delivery/__openerp__.py
+++ b/addons/claim_from_delivery/__openerp__.py
@@ -35,7 +35,6 @@ Adds a Claim link to the delivery order.
'claim_delivery_data.xml',],
'auto_install': False,
'installable': True,
- 'certificate' : '001101649349223746957',
'images': ['images/1_claim_link_delivery_order.jpeg'],
}
diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py
index 135f4237f1c..dd36aa19041 100644
--- a/addons/crm/__openerp__.py
+++ b/addons/crm/__openerp__.py
@@ -36,7 +36,7 @@ It manages key tasks such as communication, identification, prioritization, assi
OpenERP ensures that all cases are successfully tracked by users, customers and suppliers. It can automatically send reminders, escalate the request, trigger specific methods and many other actions based on your own enterprise rules.
-The greatest thing about this system is that users don't need to do anything special. The CRM module has an email gateway for the synchronization interface between mails and OpenERP. That way, users can just send emails to the request tracker.
+The greatest thing about this system is that users don't need to do anything special. The CRM module has an email gateway for the synchronization interface between mails and OpenERP. That way, users can just send emails to the request tracker.
OpenERP will take care of thanking them for their message, automatically routing it to the appropriate staff and make sure all future correspondence gets to the right place.
@@ -99,7 +99,7 @@ Dashboard for CRM will include:
'res_partner_view.xml',
'board_crm_view.xml',
-
+
'res_config_view.xml',
],
@@ -115,14 +115,14 @@ Dashboard for CRM will include:
'test/process/cancel_lead.yml',
'test/process/action_rule.yml',
'test/process/segmentation.yml',
+ 'test/process/phonecalls.yml',
'test/ui/crm_demo.yml',
'test/ui/duplicate_lead.yml',
- 'test/ui/delete_lead.yml'
+ 'test/ui/delete_lead.yml',
],
'installable': True,
'application': True,
'auto_install': False,
- 'certificate': '0079056041421',
'images': ['images/sale_crm_crm_dashboard.png', 'images/crm_dashboard.jpeg','images/leads.jpeg','images/meetings.jpeg','images/opportunities.jpeg','images/outbound_calls.jpeg','images/stages.jpeg'],
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/crm/crm.py b/addons/crm/crm.py
index 330bbb1fc9b..cca195a1539 100644
--- a/addons/crm/crm.py
+++ b/addons/crm/crm.py
@@ -102,6 +102,7 @@ class crm_case_section(osv.osv):
""" Model for sales teams. """
_name = "crm.case.section"
_inherits = {'mail.alias': 'alias_id'}
+ _inherit = "mail.thread"
_description = "Sales Teams"
_order = "complete_name"
diff --git a/addons/crm/crm_demo.xml b/addons/crm/crm_demo.xml
index 551e4e93fb8..dde3e63cc4a 100644
--- a/addons/crm/crm_demo.xml
+++ b/addons/crm/crm_demo.xml
@@ -1,46 +1,47 @@
-
+
+
-
+
-
- Meetings
- ir.ui.menu
-
-
-
+
+ Meetings
+ ir.ui.menu
+
+
+
-
+ Sales Marketing DepartmentSMD
-
-
+
+
-
+ Support DepartmentSPD
-
-
+
+
-
+ Direct MarketingDM
-
-
+
+
-
+ Online SupportOS
-
-
+
+
-
- OpenERP partners
- True
-
-
+
+ OpenERP partners
+ True
+
+
diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py
index fff47205582..d668ea710c1 100644
--- a/addons/crm/crm_lead.py
+++ b/addons/crm/crm_lead.py
@@ -277,6 +277,10 @@ class crm_lead(base_stage, format_address, osv.osv):
def create(self, cr, uid, vals, context=None):
obj_id = super(crm_lead, self).create(cr, uid, vals, context)
+ section_id = self.browse(cr, uid, obj_id, context=context).section_id
+ if section_id:
+ followers = [follow.id for follow in section_id.message_follower_ids]
+ self.message_subscribe(cr, uid, [obj_id], followers, context=context)
self.create_send_note(cr, uid, [obj_id], context=context)
return obj_id
@@ -294,12 +298,16 @@ class crm_lead(base_stage, format_address, osv.osv):
if partner_id:
partner = self.pool.get('res.partner').browse(cr, uid, partner_id, context=context)
values = {
- 'partner_name' : partner.name,
+ 'partner_name' : partner.name,
'street' : partner.street,
'street2' : partner.street2,
'city' : partner.city,
'state_id' : partner.state_id and partner.state_id.id or False,
'country_id' : partner.country_id and partner.country_id.id or False,
+ 'email_from' : partner.email,
+ 'phone' : partner.phone,
+ 'mobile' : partner.mobile,
+ 'fax' : partner.fax,
}
return {'value' : values}
@@ -487,7 +495,8 @@ class crm_lead(base_stage, format_address, osv.osv):
title = "%s : %s" % (merge_message, opportunity.name)
details.append(self._mail_body(cr, uid, opportunity, fields, title=title, context=context))
- subject = subject[0] + ", ".join(subject[1:])
+ # Chatter message's subject
+ subject = subject[0] + ": " + ", ".join(subject[1:])
details = "\n\n".join(details)
return self.message_post(cr, uid, [opportunity_id], body=details, subject=subject, context=context)
@@ -556,19 +565,18 @@ class crm_lead(base_stage, format_address, osv.osv):
data = self._merge_data(cr, uid, ids, oldest, fields, context=context)
- # merge data into first opportunity
- self.write(cr, uid, [first_opportunity.id], data, context=context)
-
- #copy message and attachements into the first opportunity
+ # Merge messages and attachements into the first opportunity
self._merge_opportunity_history(cr, uid, first_opportunity.id, tail_opportunities, context=context)
self._merge_opportunity_attachments(cr, uid, first_opportunity.id, tail_opportunities, context=context)
- #Notification about loss of information
+ # Merge notifications about loss of information
self._merge_notification(cr, uid, first_opportunity, opportunities, context=context)
- #delete tail opportunities
+ # Write merged data into first opportunity
+ self.write(cr, uid, [first_opportunity.id], data, context=context)
+ # Delete tail opportunities
self.unlink(cr, uid, [x.id for x in tail_opportunities], context=context)
- #open first opportunity
+ # Open first opportunity
self.case_open(cr, uid, [first_opportunity.id])
return first_opportunity.id
@@ -577,13 +585,16 @@ class crm_lead(base_stage, format_address, osv.osv):
contact_id = False
if customer:
contact_id = self.pool.get('res.partner').address_get(cr, uid, [customer.id])['default']
+
if not section_id:
section_id = lead.section_id and lead.section_id.id or False
+
if section_id:
stage_ids = crm_stage.search(cr, uid, [('sequence','>=',1), ('section_ids','=', section_id)])
else:
stage_ids = crm_stage.search(cr, uid, [('sequence','>=',1)])
stage_id = stage_ids and stage_ids[0] or False
+
return {
'planned_revenue': lead.planned_revenue,
'probability': lead.probability,
@@ -594,11 +605,12 @@ class crm_lead(base_stage, format_address, osv.osv):
'stage_id': stage_id or False,
'date_action': time.strftime('%Y-%m-%d %H:%M:%S'),
'date_open': time.strftime('%Y-%m-%d %H:%M:%S'),
+ 'email_from': customer and customer.email or lead.email_from,
+ 'phone': customer and customer.phone or lead.phone,
}
def convert_opportunity(self, cr, uid, ids, partner_id, user_ids=False, section_id=False, context=None):
partner = self.pool.get('res.partner')
- mail_message = self.pool.get('mail.message')
customer = False
if partner_id:
customer = partner.browse(cr, uid, partner_id, context=context)
@@ -784,7 +796,12 @@ class crm_lead(base_stage, format_address, osv.osv):
stage = self.pool.get('crm.case.stage').browse(cr, uid, vals['stage_id'], context=context)
if stage.on_change:
vals['probability'] = stage.probability
- return super(crm_lead,self).write(cr, uid, ids, vals, context)
+ if vals.get('section_id'):
+ section_id = self.pool.get('crm.case.section').browse(cr, uid, vals.get('section_id'), context=context)
+ if section_id:
+ vals.setdefault('message_follower_ids', [])
+ vals['message_follower_ids'] += [(4, follower.id) for follower in section_id.message_follower_ids]
+ return super(crm_lead,self).write(cr, uid, ids, vals, context)
# ----------------------------------------
# Mail Gateway
diff --git a/addons/crm/crm_lead_demo.xml b/addons/crm/crm_lead_demo.xml
index b3c00256b06..7849125282e 100644
--- a/addons/crm/crm_lead_demo.xml
+++ b/addons/crm/crm_lead_demo.xml
@@ -1,10 +1,8 @@
-
+
leadPlan to Attend a Training
@@ -26,9 +24,9 @@
Hello,
-I am Jason from Le Club SARL,
-I am intertested to attend Training organized in your company,
-Can you send details,
+I am Jason from Le Club SARL.
+I am intertested to attend a training organized in your company.
+Can you send me the details ?
@@ -110,7 +108,8 @@ Can you send details,
- Hi, Can you send a quotation for 20 Computers with speakers?
+ Hi,
+Can you send me a quotation for 20 computers with speakers?
Regards,
Carrie Helle,
Purchase Manager
@@ -215,8 +214,9 @@ Contact: +1 813 494 5005
- hi,
-I want to know specification and cost of laptops of your company.
+ Hi,
+I would like to know more about specification and cost of laptops of your company.
+
Thanks,
Andrew
@@ -260,25 +260,20 @@ Andrew
-
-
+
-
+
+
-
-
-
-
+
opportunityPlan to buy 60 keyboards and mouses
@@ -563,9 +558,9 @@ AndrewDear Customer,
Thanks for showing interest in our products.
We have attached the catalogue,
-We would like to know your interests, Let us know if we can call you for more details.
+We would like to know your interests, so let us know when we can call you for more details.
-Thanks
+Regards
@@ -600,9 +595,9 @@ Thanks
crm.leadHello,
-I am Jason from Le Club SARL,
-I am intertested to attend Training organized in your company,
-Can you send details,
+I am Jason from Le Club SARL.
+I am intertested to attend a training organized in your company.
+Can you send me the details ?
email
@@ -613,7 +608,7 @@ Can you send details,
comment
-
+
Click to create an unqualified lead.
- A lead is usually the first step in your sales cycle. It can be
- a contact with a new prospect, a company you target, a contact form
- filled in your website, etc.
+ Use leads if you need a qualification step before creating an
+ opportunity or a customer. It can be a business card you received,
+ a contact form filled in your website, or a file of unqualified
+ prospects you import, etc.
Once qualified, the lead can be converted into a business
- opportunity and a new customer in your address book.
+ opportunity and/or a new customer in your address book.
diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py
index 55cc0c95b2c..e43534476fd 100644
--- a/addons/crm/res_partner.py
+++ b/addons/crm/res_partner.py
@@ -26,12 +26,16 @@ class res_partner(osv.osv):
_inherit = 'res.partner'
def _opportunity_meeting_count(self, cr, uid, ids, field_name, arg, context=None):
- res = {}
- for partner in self.browse(cr, uid, ids, context):
- res[partner.id] = {
- 'opportunity_count': len(partner.opportunity_ids),
- 'meeting_count': len(partner.meeting_ids),
- }
+ res = dict(map(lambda x: (x,{'opportunity_count': 0, 'meeting_count': 0}), ids))
+ # the user may not have access rights for opportunities or meetings
+ try:
+ for partner in self.browse(cr, uid, ids, context):
+ res[partner.id] = {
+ 'opportunity_count': len(partner.opportunity_ids),
+ 'meeting_count': len(partner.meeting_ids),
+ }
+ except:
+ pass
return res
_columns = {
diff --git a/addons/crm/res_partner_view.xml b/addons/crm/res_partner_view.xml
index eae78de70a0..84a0bd4cf49 100644
--- a/addons/crm/res_partner_view.xml
+++ b/addons/crm/res_partner_view.xml
@@ -54,7 +54,7 @@
res.partnercrm.meetingcalendar,tree,form,gantt
- {'search_default_partner_ids': active_id}
+ {'default_partner_ids': [active_id]}
diff --git a/addons/crm/security/crm_security.xml b/addons/crm/security/crm_security.xml
index 3b382a072f4..9bb54441aa3 100644
--- a/addons/crm/security/crm_security.xml
+++ b/addons/crm/security/crm_security.xml
@@ -60,5 +60,18 @@
['|',('user_id','=',user.id),('show_as','=','busy')]
+
+ Personal Phone Calls
+
+ ['|',('user_id','=',user.id),('user_id','=',False)]
+
+
+
+ All Phones
+
+ [(1,'=',1)]
+
+
+
diff --git a/addons/crm/test/process/action_rule.yml b/addons/crm/test/process/action_rule.yml
index 9c869009906..f76e6c250bc 100644
--- a/addons/crm/test/process/action_rule.yml
+++ b/addons/crm/test/process/action_rule.yml
@@ -7,14 +7,14 @@
new_id = self.create(cr, uid, {'name': 'New Rule', 'model_id': model_ids[0], 'trg_user_id': ref('base.user_root'), 'trg_partner_id': ref('base.res_partner_1'), 'act_user_id': ref('base.user_demo') })
self._check(cr, uid)
-
- I create new lead to check record rule.
+ I create a new lead to check the record rule.
-
!record {model: crm.lead, id: crm_lead_test_rules_id}:
name: 'Test lead rules'
partner_id: base.res_partner_1
-
- I check record rule is apply and responsible is changed.
+ I check if the record rule is applied and the responsible is changed.
-
!python {model: crm.lead}: |
lead_user = self.browse(cr, uid, ref('crm_lead_test_rules_id'))
- assert lead_user.user_id.id == ref('base.user_demo'), "Responsible of lead is not changed."
+ assert lead_user.user_id.id == ref('base.user_demo'), "Responsible of lead is not changed."
diff --git a/addons/crm/test/process/cancel_lead.yml b/addons/crm/test/process/cancel_lead.yml
index 31c159c3fdf..edaf844952a 100644
--- a/addons/crm/test/process/cancel_lead.yml
+++ b/addons/crm/test/process/cancel_lead.yml
@@ -10,7 +10,7 @@
lead = self.browse(cr, uid, ref('crm_case_1'))
assert lead.stage_id.id == ref('crm.stage_lead7'), "Stage should be 'Dead' and is %s." % (lead.stage_id.name)
assert lead.state == 'cancel', "Opportunity is not in 'cancel' state."
- assert lead.probability == 0.0, 'Opportunity probability is wrong and should be 0.0.'
+ assert lead.probability == 0.0, 'Opportunity is probably wrong and should be 0.0.'
-
I reset cancelled lead into unqualified lead.
-
diff --git a/addons/crm/test/process/communication_with_customer.yml b/addons/crm/test/process/communication_with_customer.yml
index ec11528d15a..2137616ae3e 100644
--- a/addons/crm/test/process/communication_with_customer.yml
+++ b/addons/crm/test/process/communication_with_customer.yml
@@ -1,7 +1,7 @@
-
- Customer interested in our product. so he send request by email to get more details.
+ Customer interested in our product, so he sends request by email to get more details.
-
- Mail script will be fetched him request from mail server. so I process that mail after read EML file
+ Mail script will fetch his request from mail server. Then I process that mail after read EML file.
-
!python {model: mail.thread}: |
import addons
@@ -15,27 +15,27 @@
lead_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')])
assert lead_ids and len(lead_ids), "Lead is not created after getting request"
lead = self.browse(cr, uid, lead_ids[0], context=context)
- assert not lead.partner_id, "Customer should be a new"
+ assert not lead.partner_id, "Customer should be a new one"
assert lead.name == "Fournir votre devis avec le meilleur prix.", "Subject does not match"
-
- I reply him request with welcome message. TODO revert mail.mail to mail.compose.message (conversion to customer should be automatic).
+ I reply his request with welcome message. TODO revert mail.mail to mail.compose.message (conversion to customer should be automatic).
-
!python {model: mail.mail}: |
lead_ids = self.pool.get('crm.lead').search(cr, uid, [('email_from','=', 'Mr. John Right ')])
context.update({'active_model': 'crm.lead','active_id': lead_ids[0]})
- id = self.create(cr, uid, {'body': "Merci à l'intérêt pour notre produit.nous vous contacterons bientôt. Merci", 'email_from': 'sales@mycompany.com'}, context=context)
+ id = self.create(cr, uid, {'body': "Merci de votre intérêt pour notre produit, nous vous contacterons bientôt. Bien à vous", 'email_from': 'sales@mycompany.com'}, context=context)
try:
self.send_mail(cr, uid, [id], context=context)
except:
pass
-
- Now, I convert him into customer and put into regular customer list.
+ Now, I convert him into customer and put him into regular customer list.
-
!python {model: crm.lead}: |
lead_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right ')])
self.convert_partner(cr, uid, lead_ids, context=context)
-
- I convert one phonecall request as a customer and put into regular customer list.
+ I convert one phonecall request to a customer and put him into regular customer list.
-
!python {model: crm.phonecall2partner}: |
context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_phonecall_4")], 'active_id': ref("crm.crm_phonecall_4")})
@@ -48,5 +48,5 @@
partner_id = self.search(cr, uid, [('phonecall_ids', '=', ref('crm.crm_phonecall_4'))])
assert partner_id, "Customer is not found in regular customer list."
data = self.browse(cr, uid, partner_id, context=context)[0]
- assert data.user_id.id == ref("base.user_root"), "User not assign properly"
- assert data.name == "Wanted information about pricing of Laptops", "Bad partner name"
+ assert data.user_id.id == ref("base.user_root"), "User not assigned properly"
+ assert data.name == "Wanted information about pricing of laptops", "Bad partner name"
diff --git a/addons/crm/test/process/lead2opportunity2win.yml b/addons/crm/test/process/lead2opportunity2win.yml
index ed552421cf0..eadb46f0f55 100644
--- a/addons/crm/test/process/lead2opportunity2win.yml
+++ b/addons/crm/test/process/lead2opportunity2win.yml
@@ -1,17 +1,17 @@
-
- In order to test convert customer lead into opportunity,
+ In order to test convert customer lead into opportunity,
-
I open customer lead.
-
!python {model: crm.lead}: |
self.case_open(cr, uid, [ref("crm_case_4")])
--
- I check lead state is "Open".
+-
+ I check lead state is "Open".
-
!assert {model: crm.lead, id: crm.crm_case_4, string: Lead in open state}:
- state == "open"
-
- I create partner from lead.
+ I create partner from lead.
-
!record {model: crm.lead2partner, id: crm_lead2partner_id1, context: '{"active_model": "crm.lead", "active_ids": [ref("crm_case_4")]}'}:
-
@@ -24,7 +24,7 @@
!python {model: crm.lead}: |
self.convert_opportunity(cr, uid ,[ref("crm_case_4")], ref("base.res_partner_2"))
-
- I check details of converted opportunity.
+ I check details of converted opportunity.
-
!python {model: crm.lead}: |
lead = self.browse(cr, uid, ref('crm_case_4'))
@@ -37,15 +37,15 @@
!python {model: crm.opportunity2phonecall}: |
import time
context.update({'active_model': 'crm.lead', 'active_ids': [ref('crm_case_4')]})
- call_id = self.create(cr, uid, {'date': time.strftime('%Y-%m-%d %H:%M:%S'),
- 'name': "Bonjour M. Jean, Comment êtes-vous? J'ai obtenu votre demande. peut-on parler au sujet de ce pour quelques minutes?"}, context=context)
+ call_id = self.create(cr, uid, {'date': time.strftime('%Y-%m-%d %H:%M:%S'),
+ 'name': "Bonjour M. Jean, Comment allez-vous? J'ai bien reçu votre demande, pourrions-nous en parler quelques minutes?"}, context=context)
self.action_schedule(cr, uid, [call_id], context=context)
-
I check that phonecall is scheduled for that opportunity.
-
!python {model: crm.phonecall}: |
ids = self.search(cr, uid, [('opportunity_id', '=', ref('crm_case_4'))])
- assert len(ids), 'phonecall is not scheduled'
+ assert len(ids), 'Phonecall is not scheduled'
-
Now I schedule meeting with customer.
-
@@ -55,7 +55,7 @@
After communicated with customer, I put some notes with contract details.
-
!python {model: crm.lead}: |
- self.message_post(cr, uid, [ref('crm_case_4')], subject='Test note', body='ces détails envoyés par le client sur le FAX pour la qualité')
+ self.message_post(cr, uid, [ref('crm_case_4')], subject='Test note', body='Détails envoyés par le client sur le FAX pour la qualité')
-
I win this opportunity
-
@@ -73,7 +73,7 @@
I convert mass lead into opportunity customer.
-
!python {model: crm.lead2opportunity.partner.mass}: |
- context.update({'active_model': 'crm.lead', 'active_ids': [ref("crm_case_11"), ref("crm_case_2")], 'active_id': ref("crm_case_11")})
+ context.update({'active_model': 'crm.lead', 'active_ids': [ref("crm_case_11"), ref("crm_case_2")], 'active_id': ref("crm_case_11")})
id = self.create(cr, uid, {'user_ids': [ref('base.user_root')], 'section_id': ref('crm.section_sales_department')}, context=context)
self.mass_convert(cr, uid, [id], context=context)
-
@@ -111,7 +111,7 @@
I confirm review needs meeting.
-
!python {model: crm.meeting}: |
- context.update({'active_model': 'crm.meeting'})
+ context.update({'active_model': 'crm.meeting'})
self.case_open(cr, uid, [ref('base_calendar.crm_meeting_4')])
-
I invite a user for meeting.
diff --git a/addons/crm/test/process/merge_opportunity.yml b/addons/crm/test/process/merge_opportunity.yml
index 6d13278eded..155cd68274f 100644
--- a/addons/crm/test/process/merge_opportunity.yml
+++ b/addons/crm/test/process/merge_opportunity.yml
@@ -1,19 +1,19 @@
-
- I make direct opportunity for customer.
+ I make an opportunity from customer.
-
!python {model: crm.partner2opportunity}: |
context.update({'active_model': 'res.partner', 'active_ids': [ref("base.res_partner_9")]})
- res_id = self.create(cr, uid, {'name': "enquête pour l'achat de services"}, context=context)
+ res_id = self.create(cr, uid, {'name': "Enquête pour l'achat de services"}, context=context)
self.make_opportunity(cr, uid, [res_id], context=context)
-
- I make another opportunity from phonecall for same customer.
+ I make another opportunity from a phone call with the same customer.
-
!python {model: crm.phonecall2opportunity}: |
context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_phonecall_6")]})
- res_id = self.create(cr, uid, {'name': "Quoi de prix de votre autre service?", 'partner_id': ref("base.res_partner_9")}, context=context)
+ res_id = self.create(cr, uid, {'name': "À propos du prix de votre autre service", 'partner_id': ref("base.res_partner_9")}, context=context)
self.make_opportunity(cr, uid, [res_id], context=context)
-
- Now I merge all opportunities of customer.
+ Now I merge these opportunities.
-
!python {model: crm.lead}: |
opportunity_ids = self.search(cr, uid, [('partner_id','=', ref("base.res_partner_9"))])
@@ -24,7 +24,7 @@
!python {model: crm.merge.opportunity}: |
self.action_merge(cr, uid, [ref("opportunity_merge_id")], context=context)
-
- I check for merged opportunities for customer.
+ I check for merged opportunities for customer.
-
!python {model: crm.lead}: |
merge_id = self.search(cr, uid, [('partner_id','=', ref("base.res_partner_9"))])
@@ -32,55 +32,3 @@
merge_data = self.browse(cr, uid, merge_id)[0]
assert merge_data.type == 'opportunity', 'Merged opportunity type not change!'
assert merge_data.partner_id.id == ref("base.res_partner_9"), 'Partner missmatch!'
--
- Now I schedule another phonecall to customer after merged.
--
- !python {model: crm.phonecall2phonecall}: |
- context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_phonecall_6")], 'active_id': ref("crm.crm_phonecall_6")})
- res_id = self.create(cr, uid, {'name': "vos chances sont fusionnés en un seul"}, context=context)
- self.action_schedule(cr, uid, [res_id], context=context)
--
- I schedule meeting on this phonecall.
--
- !python {model: crm.phonecall}: |
- self.action_make_meeting(cr, uid, [ref("crm.crm_phonecall_6")])
--
- I set phone call to not held.
--
- !python {model: crm.phonecall}: |
- self.case_pending(cr, uid, [ref("crm.crm_phonecall_6")])
--
- I check that the phone call is in 'Not Held' state.
--
- !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call held.}:
- - state == "pending"
--
- I cancelled the phone call.
--
- !python {model: crm.phonecall}: |
- self.case_cancel(cr, uid, [ref("crm.crm_phonecall_6")])
--
- I check that the phone call is in 'Cancelled' state.
--
- !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call is not cancelled.}:
- - state == "cancel"
--
- I reset the phone call.
--
- !python {model: crm.phonecall}: |
- self.case_reset(cr, uid, [ref("crm.crm_phonecall_6")])
--
- I check that the phone call is reset or not.
--
- !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call is not reset.}:
- - state == "open"
--
- I set phone call to held (done).
--
- !python {model: crm.phonecall}: |
- self.case_close(cr, uid, [ref("crm.crm_phonecall_6")])
--
- I check that the phone call is in 'Held' state.
--
- !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call is not held.}:
- - state == "done"
diff --git a/addons/crm/test/process/phonecalls.yml b/addons/crm/test/process/phonecalls.yml
new file mode 100644
index 00000000000..51a933f3223
--- /dev/null
+++ b/addons/crm/test/process/phonecalls.yml
@@ -0,0 +1,52 @@
+-
+ I schedule a phone call with a customer.
+-
+ !python {model: crm.phonecall2phonecall}: |
+ context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_phonecall_6")], 'active_id': ref("crm.crm_phonecall_6")})
+ res_id = self.create(cr, uid, {'name': "Proposition de réduction"}, context=context)
+ self.action_schedule(cr, uid, [res_id], context=context)
+-
+ I schedule a meeting based on this phone call.
+-
+ !python {model: crm.phonecall}: |
+ self.action_make_meeting(cr, uid, [ref("crm.crm_phonecall_6")])
+-
+ I set the phone call to not held.
+-
+ !python {model: crm.phonecall}: |
+ self.case_pending(cr, uid, [ref("crm.crm_phonecall_6")])
+-
+ I check that the phone call is in 'Not Held' state.
+-
+ !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call held.}:
+ - state == "pending"
+-
+ I cancel the phone call.
+-
+ !python {model: crm.phonecall}: |
+ self.case_cancel(cr, uid, [ref("crm.crm_phonecall_6")])
+-
+ I check that the phone call is in 'Cancelled' state.
+-
+ !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call is not cancelled.}:
+ - state == "cancel"
+-
+ I reset the phone call.
+-
+ !python {model: crm.phonecall}: |
+ self.case_reset(cr, uid, [ref("crm.crm_phonecall_6")])
+-
+ I check that the phone call is reset.
+-
+ !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call is not reset.}:
+ - state == "open"
+-
+ I set phone call to held (done).
+-
+ !python {model: crm.phonecall}: |
+ self.case_close(cr, uid, [ref("crm.crm_phonecall_6")])
+-
+ I check that the phone call is in 'Held' state.
+-
+ !assert {model: crm.phonecall, id: crm.crm_phonecall_6, string: Phone call is not held.}:
+ - state == "done"
diff --git a/addons/crm/wizard/crm_lead_to_opportunity.py b/addons/crm/wizard/crm_lead_to_opportunity.py
index 44ce73c23fe..2473a83206c 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity.py
+++ b/addons/crm/wizard/crm_lead_to_opportunity.py
@@ -34,15 +34,17 @@ class crm_lead2opportunity_partner(osv.osv_memory):
('create', 'Create a new customer'), \
('nothing', 'Do not link to a customer')], \
'Related Customer', required=True),
- 'name': fields.selection([('convert', 'Convert to Opportunities'), ('merge', 'Merge with existing Opportunities')], 'Conversion Action', required=True),
+ 'name': fields.selection([('convert', 'Convert to opportunity'), \
+ ('merge', 'Merge with existing opportunities')], \
+ 'Conversion Action', required=True),
'opportunity_ids': fields.many2many('crm.lead', string='Opportunities', domain=[('type', '=', 'opportunity')]),
}
def default_get(self, cr, uid, fields, context=None):
"""
- Default get for name, opportunity_ids
- if there is an exisitng partner link to the lead, find all existing opportunity link with this partnet to merge
- all information together
+ Default get for name, opportunity_ids.
+ If there is an exisitng partner link to the lead, find all existing
+ opportunities links with this partner to merge all information together
"""
lead_obj = self.pool.get('crm.lead')
@@ -62,12 +64,13 @@ class crm_lead2opportunity_partner(osv.osv_memory):
ids = []
if partner_id:
+ # Search for opportunities that have the same partner and that arent done or cancelled
ids = lead_obj.search(cr, uid, [('partner_id', '=', partner_id), ('type', '=', 'opportunity'), '!', ('state', 'in', ['done', 'cancel'])])
if ids:
opportunities.append(ids[0])
if not partner_id:
if email:
- # Find email of existing opportunity matches the email_from of the lead
+ # Find email of existing opportunity matching the email_from of the lead
cr.execute("""select id from crm_lead where type='opportunity' and
substring(email_from from '([^ ,<@]+@[^> ,]+)') in (%s)""" % (','.join(email)))
ids = map(lambda x:x[0], cr.fetchall())
@@ -83,12 +86,11 @@ class crm_lead2opportunity_partner(osv.osv_memory):
if 'opportunity_ids' in fields:
res.update({'opportunity_ids': opportunities})
-
return res
def view_init(self, cr, uid, fields, context=None):
"""
- This function checks for precondition before wizard executes
+ Check some preconditions before the wizard executes.
"""
if context is None:
context = {}
@@ -110,7 +112,7 @@ class crm_lead2opportunity_partner(osv.osv_memory):
partner_id = partner_ids_map.get(lead_id, False)
# FIXME: cannot pass user_ids as the salesman allocation only works in batch
res = lead.convert_opportunity(cr, uid, [lead_id], partner_id, [], team_id, context=context)
- # FIXME: must perform salesman allocation in batch separately here
+ # FIXME: must perform salesman allocation in batch separately here
user_ids = vals.get('user_ids', False)
if user_ids:
lead.allocate_salesman(cr, uid, lead_ids, user_ids, team_id=team_id, context=context)
@@ -136,9 +138,10 @@ class crm_lead2opportunity_partner(osv.osv_memory):
def action_apply(self, cr, uid, ids, context=None):
"""
- This converts lead to opportunity and opens Opportunity view
+ Convert lead to opportunity or merge lead and opportunity and open
+ the freshly created opportunity view.
"""
- if not context:
+ if context is None:
context = {}
lead = self.pool.get('crm.lead')
lead_ids = context.get('active_ids', [])
diff --git a/addons/crm/wizard/crm_lead_to_opportunity_view.xml b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
index ef8acf95b58..3390ad8f547 100644
--- a/addons/crm/wizard/crm_lead_to_opportunity_view.xml
+++ b/addons/crm/wizard/crm_lead_to_opportunity_view.xml
@@ -7,15 +7,9 @@
crm.lead2opportunity.partner