diff --git a/addons/l10n_fr_rib/__openerp__.py b/addons/l10n_fr_rib/__openerp__.py index 8c87e8c0a3b..16ae81fb431 100644 --- a/addons/l10n_fr_rib/__openerp__.py +++ b/addons/l10n_fr_rib/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'French RIB Bank Details', 'version': '1.0', - 'category': 'Localization/Account Charts', + 'category': 'Hidden', 'description': ''' This module installs the base for RIB bank accounts (French standard for bank accounts). To make it easier to enter RIB data, it will also allow to search for banks by code.''', diff --git a/addons/l10n_fr_rib/bank.py b/addons/l10n_fr_rib/bank.py index ccd868d0da2..d0dc0571899 100644 --- a/addons/l10n_fr_rib/bank.py +++ b/addons/l10n_fr_rib/bank.py @@ -24,6 +24,7 @@ import unicodedata import netsvc from osv import fields, osv +from tools.translate import _ class res_partner_bank(osv.osv): """Add fields and behavior for French RIB""" @@ -36,8 +37,8 @@ class res_partner_bank(osv.osv): if bank_acc.state !='rib': continue # Fail if the needed values are empty of too short - if (not bank_acc.bank or not bank_acc.bank.code - or len(bank_acc.bank.code) != 5 + if (not bank_acc.bank_code + or len(bank_acc.bank_code) != 5 or not bank_acc.office or len(bank_acc.office) != 5 or not bank_acc.acc_number or len(bank_acc.acc_number) != 11 or not bank_acc.key or len(bank_acc.key) != 2): @@ -80,27 +81,51 @@ class res_partner_bank(osv.osv): limit, order, context=context, count=count) return res + def onchange_bank_id(self, cr, uid, ids, bank_id, context=None): + """Change the bank code""" + result = super(res_partner_bank, self).onchange_bank_id(cr, uid, ids, bank_id, + context=context) + if bank_id: + bank = self.pool.get('res.bank').browse(cr, uid, bank_id, + context=context) + result['bank_code'] = bank.code + return {'value': result} + _columns = { - 'office': fields.char('Office Code', size=5, readonly=True, - help="Office Code"), + 'bank_code': fields.char('Bank Code', size=64, readonly=True,), + 'office': fields.char('Office Code', size=5, readonly=True,), 'key': fields.char('Key', size=2, readonly=True, help="The key is a number allowing to check the " "correctness of the other codes."), } + def _construct_constraint_msg(self, cr, uid, ids, context=None): + """Quote the data in the warning message""" + # Only process the first id + if type(ids) not in (int, long): + id = ids[0] + rib = self.browse(cr, uid, id, context=context) + if rib: + return (_("\nThe RIB key %s does not correspond to the other " + "codes: %s %s %s.") % + (rib.key, + rib.bank_code, + rib.office, + rib.acc_number) ) + _constraints = [(_check_key, - "The RIB key does not correspond to the other codes.", + _construct_constraint_msg, ["key"])] res_partner_bank() -# overload the name_search method on banks to make it easier to enter RIB data class res_bank(osv.osv): + """Add the bank code to make it easier to enter RIB data""" _inherit = 'res.bank' - # allow a search by code def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): + """Search by bank code""" if args is None: args = [] ids = [] @@ -111,15 +136,10 @@ class res_bank(osv.osv): ids = self.search(cr, user, [('code', operator, name)] + args, limit=limit, context=context) return self.name_get(cr, user, ids, context) - - # show the code before the name - def name_get(self, cr, uid, ids, context=None): - result = [] - for bank in self.browse(cr, uid, ids, context): - result.append((bank.id, - (bank.code and (bank.code + ' - ') or '') + bank.name)) - return result - + + _columns = { + 'rib_code': fields.char('RIB Bank Code', size=64), + } res_bank() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_fr_rib/bank_data.xml b/addons/l10n_fr_rib/bank_data.xml index 40d57851912..1dc9f4c88fd 100644 --- a/addons/l10n_fr_rib/bank_data.xml +++ b/addons/l10n_fr_rib/bank_data.xml @@ -3,14 +3,15 @@ RIB Bank Details rib - - bank + + + bank_code @@ -34,5 +35,10 @@ + + bank_bic + + + diff --git a/addons/l10n_fr_rib/bank_view.xml b/addons/l10n_fr_rib/bank_view.xml index c30f3233a23..56eb8393aef 100644 --- a/addons/l10n_fr_rib/bank_view.xml +++ b/addons/l10n_fr_rib/bank_view.xml @@ -2,15 +2,6 @@ - - res.partner.form.rib0.inherit - res.partner - - form - - - - res.partner.form.rib1.inherit res.partner @@ -19,7 +10,7 @@ - + @@ -36,55 +27,18 @@ - + + res.bank.form.rib.inherit + res.bank + form - - - - - + + - - res.partner.bank.form.rib2.inherit - res.partner.bank - - form - - - - - - - - - res.partner.bank.tree.rib1.inherit - res.partner.bank - - tree - - - - - - - - - res.partner.bank.tree.rib2.inherit - res.partner.bank - - tree - - - - - - --> diff --git a/addons/l10n_fr_rib/i18n/fr.po b/addons/l10n_fr_rib/i18n/fr.po new file mode 100644 index 00000000000..4057dafb803 --- /dev/null +++ b/addons/l10n_fr_rib/i18n/fr.po @@ -0,0 +1,116 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * l10n_fr_rib +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 6.1beta\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-11-21 12:37+0000\n" +"PO-Revision-Date: 2011-11-21 12:37+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: l10n_fr_rib +#: constraint:res.partner.bank:0 +msgid "\n" +"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments" +msgstr "\n" +"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_partner_bank +msgid "Bank Accounts" +msgstr "Comptes bancaires" + +#. module: l10n_fr_rib +#: field:res.partner.bank,bank_code:0 +msgid "Bank Code" +msgstr "Code banque" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bic_field +msgid "bank_bic" +msgstr "bank_bic" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_office_field +msgid "office" +msgstr "Agence" + +#. module: l10n_fr_rib +#: field:res.bank,rib_code:0 +msgid "RIB Bank Code" +msgstr "Code banque RIB" + +#. module: l10n_fr_rib +#: model:ir.module.module,description:l10n_fr_rib.module_meta_information +msgid "\n" +"This module installs the base for RIB bank accounts (French standard for bank accounts). \n" +"To make it easier to enter RIB data, it will also allow to search for banks by code." +msgstr "\n" +"Ce module installe la base pour les comptes bancaires RIB (norme française pour les n° de compte). \n" +"Pour faciliter la saisie des RIBs, il permet aussi de chercher les banques par code." + +#. module: l10n_fr_rib +#: field:res.partner.bank,office:0 +msgid "Office Code" +msgstr "Code agence" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type,name:l10n_fr_rib.bank_rib +msgid "RIB Bank Details" +msgstr "Relevé d'identité bancaire (RIB)" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_code_field +msgid "bank_code" +msgstr "bank_code" + +#. module: l10n_fr_rib +#: code:addons/l10n_fr_rib/bank.py:109 +#, python-format +msgid "\n" +"The RIB key %s does not correspond to the other codes: %s %s %s." +msgstr "\n" +"La clé RIB %s ne correspond pas aux autres codes : %s %s %s." + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field +msgid "key" +msgstr "key" + +#. module: l10n_fr_rib +#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information +msgid "French RIB Bank Details" +msgstr "Relevés d'identité bancaire français (RIB)" + +#. module: l10n_fr_rib +#: help:res.partner.bank,key:0 +msgid "The key is a number allowing to check the correctness of the other codes." +msgstr "La clé est un nombre permettant de vérifier que les autres codes sont corrects." + +#. module: l10n_fr_rib +#: field:res.partner.bank,key:0 +msgid "Key" +msgstr "Clé" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type,format_layout:l10n_fr_rib.bank_rib +msgid "%(bank_name)s: %(acc_number)s" +msgstr "%(bank_name)s: %(acc_number)s" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_bank +msgid "Bank" +msgstr "Banque" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.bank_acc_number_field +msgid "acc_number" +msgstr "acc_number" + diff --git a/addons/l10n_fr_rib/i18n/fr_FR.po b/addons/l10n_fr_rib/i18n/fr_FR.po deleted file mode 100644 index ba6ea1b4b33..00000000000 --- a/addons/l10n_fr_rib/i18n/fr_FR.po +++ /dev/null @@ -1,81 +0,0 @@ -# Translation of OpenERP Server. -# This file contains the translation of the following modules: -# * l10n_fr_rib -# -msgid "" -msgstr "" -"Project-Id-Version: OpenERP Server 5.0.1\n" -"Report-Msgid-Bugs-To: support@openerp.com\n" -"POT-Creation-Date: 2009-06-16 14:15:16+0000\n" -"PO-Revision-Date: 2009-06-16 14:15:16+0000\n" -"Last-Translator: <>\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Plural-Forms: \n" - -#. module: l10n_fr_rib -#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field -msgid "key" -msgstr "key" - -#. module: l10n_fr_rib -#: constraint:ir.ui.view:0 -msgid "Invalid XML for View Architecture!" -msgstr "XML non valide pour l'architecture de la vue" - -#. module: l10n_fr_rib -#: model:ir.module.module,description:l10n_fr_rib.module_meta_information -msgid "\n" -"This module install the base for RIB bank accounts (French standard for bank accounts). \n" -"To make it easier to enter RIB data, it will also allow to search for banks by code.\n" -"\n" -" " -msgstr "\n" -"Ce module configure la base pour la saisie des RIB (Relevés d'Identité Bancaires) standards français. \n" -"Pour faciliter la saisie des RIB, il permet également une recherche des banques par code.\n" -"\n" -" " - -#. module: l10n_fr_rib -#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_office_field -msgid "office" -msgstr "Agence" - -#. module: l10n_fr_rib -#: field:res.partner.bank,office:0 -#: help:res.partner.bank,office:0 -msgid "Office Code" -msgstr "Code agence" - -#. module: l10n_fr_rib -#: model:res.partner.bank.type,name:l10n_fr_rib.bank_rib -msgid "RIB Bank Details" -msgstr "Relevé d'identité bancaire (RIB)" - -#. module: l10n_fr_rib -#: help:res.partner.bank,key:0 -msgid "The key is a number allowing to check the correctness of the other codes." -msgstr "La clé est un nombre permettant de vérifier que les autres codes sont corrects." - -#. module: l10n_fr_rib -#: field:res.partner.bank,key:0 -msgid "Key" -msgstr "Clé" - -#. module: l10n_fr_rib -#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information -msgid "RIB" -msgstr "RIB" - -#. module: l10n_fr_rib -#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_field -msgid "bank" -msgstr "bank" - -#. module: l10n_fr_rib -#: model:res.partner.bank.type.field,name:l10n_fr_rib.bank_acc_number_field -msgid "acc_number" -msgstr "acc_number" - diff --git a/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot b/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot index 8d73c6c3cd0..5db922fe20f 100644 --- a/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot +++ b/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot @@ -4,10 +4,10 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 5.0.1\n" -"Report-Msgid-Bugs-To: support@openerp.com\n" -"POT-Creation-Date: 2009-06-19 11:39:18+0000\n" -"PO-Revision-Date: 2009-06-19 11:39:18+0000\n" +"Project-Id-Version: OpenERP Server 6.1beta\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-11-21 12:36+0000\n" +"PO-Revision-Date: 2011-11-21 12:36+0000\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -16,22 +16,24 @@ msgstr "" "Plural-Forms: \n" #. module: l10n_fr_rib -#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field -msgid "key" -msgstr "" - -#. module: l10n_fr_rib -#: constraint:ir.ui.view:0 -msgid "Invalid XML for View Architecture!" -msgstr "" - -#. module: l10n_fr_rib -#: model:ir.module.module,description:l10n_fr_rib.module_meta_information +#: constraint:res.partner.bank:0 msgid "\n" -"This module install the base for RIB bank accounts (French standard for bank accounts). \n" -"To make it easier to enter RIB data, it will also allow to search for banks by code.\n" -"\n" -" " +"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_partner_bank +msgid "Bank Accounts" +msgstr "" + +#. module: l10n_fr_rib +#: field:res.partner.bank,bank_code:0 +msgid "Bank Code" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bic_field +msgid "bank_bic" msgstr "" #. module: l10n_fr_rib @@ -39,9 +41,20 @@ msgstr "" msgid "office" msgstr "" +#. module: l10n_fr_rib +#: field:res.bank,rib_code:0 +msgid "RIB Bank Code" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.module.module,description:l10n_fr_rib.module_meta_information +msgid "\n" +"This module installs the base for RIB bank accounts (French standard for bank accounts). \n" +"To make it easier to enter RIB data, it will also allow to search for banks by code." +msgstr "" + #. module: l10n_fr_rib #: field:res.partner.bank,office:0 -#: help:res.partner.bank,office:0 msgid "Office Code" msgstr "" @@ -50,6 +63,28 @@ msgstr "" msgid "RIB Bank Details" msgstr "" +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_code_field +msgid "bank_code" +msgstr "" + +#. module: l10n_fr_rib +#: code:addons/l10n_fr_rib/bank.py:109 +#, python-format +msgid "\n" +"The RIB key %s does not correspond to the other codes: %s %s %s." +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field +msgid "key" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information +msgid "French RIB Bank Details" +msgstr "" + #. module: l10n_fr_rib #: help:res.partner.bank,key:0 msgid "The key is a number allowing to check the correctness of the other codes." @@ -61,13 +96,13 @@ msgid "Key" msgstr "" #. module: l10n_fr_rib -#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information -msgid "RIB" +#: model:res.partner.bank.type,format_layout:l10n_fr_rib.bank_rib +msgid "%(bank_name)s: %(acc_number)s" msgstr "" #. module: l10n_fr_rib -#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_field -msgid "bank" +#: model:ir.model,name:l10n_fr_rib.model_res_bank +msgid "Bank" msgstr "" #. module: l10n_fr_rib