_name = "res.partner.bank"
_rec_name = "state"
_description = __doc__
+ _order = 'sequence'
def _bank_type_get(self, cr, uid, context=None):
bank_type_obj = self.pool.get('res.partner.bank.type')
result.append((bank_type.code, bank_type.name))
return result
+ def _default_value(self, cursor, user, field, context=None):
+ if not context.get('address', False):
+ return
+ value = ''
+ for ham, spam, address in context['address']:
+ if address['type'] == 'default':
+ return address[field]
+ elif not address['type']:
+ value = address[field]
+ return value
+
_columns = {
'name': fields.char('Description', size=128),
'acc_number': fields.char('Account number', size=64, required=False),
ondelete='cascade', select=True),
'state': fields.selection(_bank_type_get, 'Bank type', required=True,
change_default=True),
+ 'sequence': fields.integer('Sequence'),
+ 'state_id': fields.many2one('res.country.state', 'State',
+ domain="[('country_id', '=', country_id)]"),
+ }
+ _defaults = {
+ 'owner_name': lambda obj, cursor, user, context: obj._default_value(
+ cursor, user, 'name', context=context),
+ 'street': lambda obj, cursor, user, context: obj._default_value(
+ cursor, user, 'street', context=context),
+ 'city': lambda obj, cursor, user, context: obj._default_value(
+ cursor, user, 'city', context=context),
+ 'zip': lambda obj, cursor, user, context: obj._default_value(
+ cursor, user, 'zip', context=context),
+ 'country_id': lambda obj, cursor, user, context: obj._default_value(
+ cursor, user, 'country_id', context=context),
+ 'state_id': lambda obj, cursor, user, context: obj._default_value(
+ cursor, user, 'state_id', context=context),
}
def fields_get(self, cr, uid, fields=None, context=None):
<field name="parent_id"/>
<field name="website" widget="url"/>
<field name="date" select="2"/>
- <field name="bank_ids" colspan="4" nolabel="1">
+ <field name="bank_ids" colspan="4" nolabel="1"
+ context="address=address">
<form string="Bank account">
<field name="state" select="2"/>
- <field name="name" select="2"/>
<newline/>
<field name="acc_number" select="1"/>
<newline/>
<field name="bank"/>
<newline/>
+ <field name="sequence"/>
+ <field name="name" select="2" colspan="4"/>
<separator string="Bank account owner" colspan="4"/>
<field name="owner_name" colspan="4"/>
<field name="street" colspan="4"/>
<newline/>
<field name="bank"/>
<newline/>
+ <field name="sequence"/>
+ <field name="name" colspan="4"/>
<separator string="Bank account owner" colspan="4"/>
<field name="owner_name" colspan="4" select="2"/>
<field name="street" colspan="4"/>
<field name="city"/>
<field name="zip"/>
<field name="country_id" select="2" completion="1"/>
+ <field name="state_id" select="2"/>
</form>
</field>
</record>