[IMP] base: change the res.partner field is_company into a boolean field
bzr revid: rco@openerp.com-20120307151942-t73orqjvgu5jwybw
This commit is contained in:
@@ -161,7 +161,7 @@ class res_partner(osv.osv):
|
||||
'fax': fields.char('Fax', size=64),
|
||||
'mobile': fields.char('Mobile', size=64),
|
||||
'birthdate': fields.char('Birthdate', size=64),
|
||||
'is_company': fields.selection( [ ('contact','Person'),('partner','Company') ],'Contact Type', help="Select if the partner is a company or person"),
|
||||
'is_company': fields.boolean('Company', help="Check if the contact is a company, otherwise it is a person"),
|
||||
'use_parent_address': fields.boolean('Use Company Address', help="Check to use the company's address"),
|
||||
'photo': fields.binary('Photo'),
|
||||
'company_id': fields.many2one('res.company', 'Company', select=1),
|
||||
@@ -175,9 +175,11 @@ class res_partner(osv.osv):
|
||||
return False
|
||||
|
||||
def _get_photo(self, cr, uid, is_company, context=None):
|
||||
if is_company == 'contact':
|
||||
return open(os.path.join( tools.config['root_path'], 'addons', 'base', 'res', 'photo.png'), 'rb') .read().encode('base64')
|
||||
return open(os.path.join( tools.config['root_path'], 'addons', 'base', 'res', 'company_icon.png'), 'rb') .read().encode('base64')
|
||||
if is_company:
|
||||
path = os.path.join( tools.config['root_path'], 'addons', 'base', 'res', 'company_icon.png')
|
||||
else:
|
||||
path = os.path.join( tools.config['root_path'], 'addons', 'base', 'res', 'photo.png')
|
||||
return open(path, 'rb').read().encode('base64')
|
||||
|
||||
_defaults = {
|
||||
'active': True,
|
||||
@@ -185,10 +187,10 @@ class res_partner(osv.osv):
|
||||
'category_id': _default_category,
|
||||
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'res.partner', context=c),
|
||||
'color': 0,
|
||||
'is_company': 'contact',
|
||||
'is_company': False,
|
||||
'type': 'default',
|
||||
'use_parent_address':True,
|
||||
'photo': _get_photo,
|
||||
'use_parent_address': True,
|
||||
'photo': lambda self, cr, uid, context: self._get_photo(cr, uid, False, context)
|
||||
}
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
@@ -198,19 +200,16 @@ class res_partner(osv.osv):
|
||||
default.update({'name': _('%s (copy)')%(name), 'events':[]})
|
||||
return super(res_partner, self).copy(cr, uid, id, default, context)
|
||||
|
||||
def onchange_type(self, cr, uid, ids, is_company, title, child_ids, photo,context=None):
|
||||
value = {'value': {'is_comapny': '', 'title': '','photo':''}}
|
||||
if is_company == 'contact':
|
||||
value['value'] = {'is_company': is_company,
|
||||
'title': '','child_ids':[(5,)],
|
||||
'photo': self._get_photo(cr, uid, is_company, context)}
|
||||
elif is_company == 'partner':
|
||||
value['value'] = {'is_company': is_company,
|
||||
'title': '',
|
||||
'parent_id':False,
|
||||
'photo': self._get_photo(cr, uid, is_company, context)}
|
||||
return value
|
||||
|
||||
def onchange_type(self, cr, uid, ids, is_company, context=None):
|
||||
value = {'title': False,
|
||||
'photo': self._get_photo(cr, uid, is_company, context)}
|
||||
if is_company:
|
||||
value['parent_id'] = False
|
||||
domain = {'title': [('domain', '=', 'partner')]}
|
||||
else:
|
||||
value['child_ids'] = [(5,)]
|
||||
domain = {'title': [('domain', '=', 'contact')]}
|
||||
return {'value': value, 'domain': domain}
|
||||
|
||||
def onchange_address(self, cr, uid, ids, use_parent_address, parent_id, context=None):
|
||||
vals = {'value':{}}
|
||||
@@ -248,44 +247,37 @@ class res_partner(osv.osv):
|
||||
return False
|
||||
return True
|
||||
|
||||
# _constraints = [(_check_ean_key, 'Error: Invalid ean code', ['ean13'])]
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
# Update the all child and parent_id record
|
||||
update_ids=False
|
||||
# Update all children and parent_id records
|
||||
if isinstance(ids, (int, long)):
|
||||
ids = [ids]
|
||||
for partner_id in self.browse(cr, uid, ids, context=context):
|
||||
is_company=partner_id.is_company
|
||||
parent_id=partner_id.parent_id.id
|
||||
if is_company == 'contact' and parent_id:
|
||||
update_ids= self.search(cr, uid, [('parent_id', '=', parent_id),('use_parent_address','=',True)], context=context)
|
||||
if parent_id not in update_ids:
|
||||
update_ids.append(parent_id)
|
||||
elif is_company == 'partner':
|
||||
update_ids= self.search(cr, uid, [('parent_id', '=', partner_id.id),('use_parent_address','=',True)], context=context)
|
||||
if update_ids:
|
||||
self.udpate_address(cr,uid,update_ids,False,vals,context)
|
||||
for partner in self.browse(cr, uid, ids, context=context):
|
||||
is_company = partner.is_company
|
||||
parent_id = partner.parent_id.id
|
||||
if is_company:
|
||||
update_ids = self.search(cr, uid, [('parent_id', '=', partner.id), ('use_parent_address','=',True)], context=context)
|
||||
elif not is_company and parent_id:
|
||||
update_ids = [parent_id] + self.search(cr, uid, [('parent_id', '=', parent_id), ('use_parent_address','=',True)], context=context)
|
||||
else:
|
||||
update_ids = []
|
||||
self.update_address(cr, uid, update_ids, vals, context)
|
||||
return super(res_partner,self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
def create(self, cr, uid, vals, context=None):
|
||||
if vals.get('parent_id') and vals.get('use_parent_address'):
|
||||
update_ids= self.search(cr, uid, [('parent_id', '=', vals.get('parent_id')),('use_parent_address','=',True)], context=context)
|
||||
update_ids.append(vals.get('parent_id'))
|
||||
self.udpate_address(cr,uid,False,update_ids,vals)
|
||||
update_ids = [vals['parent_id']] + \
|
||||
self.search(cr, uid, [('parent_id', '=', vals['parent_id']),('use_parent_address','=',True)], context=context)
|
||||
self.update_address(cr, uid, update_ids, vals)
|
||||
return super(res_partner,self).create(cr, uid, vals, context=context)
|
||||
|
||||
|
||||
def udpate_address(self,cr,uid,update_ids,parent_id,vals, context=None):
|
||||
def update_address(self, cr, uid, ids, vals, context=None):
|
||||
addr_vals = {}
|
||||
for key, data in vals.iteritems():
|
||||
if key in ('street','street2','zip','city','state_id','country_id','email','phone','fax','mobile','website','ref','lang') and data :
|
||||
update_list=update_ids or parent_id
|
||||
if update_list :
|
||||
sql = """UPDATE res_partner SET %(field)s = %%(value)s
|
||||
WHERE id in %%(id)s"""%{'field' : key,}
|
||||
cr.execute(sql, {'value': data or '',
|
||||
'id':tuple(update_list)})
|
||||
return True
|
||||
# _constraints = [(_check_ean_key, 'Error: Invalid ean code', ['ean13'])]
|
||||
if key in ('street','street2','zip','city','state_id','country_id','email','phone','fax','mobile','website','ref','lang') and data:
|
||||
addr_vals[key] = data
|
||||
return super(res_partner, self).write(cr, uid, ids, addr_vals, context)
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
if context is None:
|
||||
@@ -401,7 +393,7 @@ class res_partner(osv.osv):
|
||||
('name','=','main_partner')])[0],
|
||||
).res_id
|
||||
|
||||
def _display_address(self, cr, uid, address,type ,context=None):
|
||||
def _display_address(self, cr, uid, address, type, context=None):
|
||||
'''
|
||||
The purpose of this function is to build and return an address formatted accordingly to the
|
||||
standards of the country where it belongs.
|
||||
@@ -413,10 +405,10 @@ class res_partner(osv.osv):
|
||||
'''
|
||||
|
||||
if type:
|
||||
if address.is_company=='partner' and address.child_ids:
|
||||
if address.is_company and address.child_ids:
|
||||
for child_id in address.child_ids:
|
||||
if child_id.type==type:
|
||||
address=child_id
|
||||
if child_id.type == type:
|
||||
address = child_id
|
||||
|
||||
# get the information that will be injected into the display format
|
||||
# get the address format
|
||||
@@ -435,14 +427,9 @@ class res_partner(osv.osv):
|
||||
|
||||
return address_format % args
|
||||
|
||||
def default_get(self, cr, uid, fields, context=None):
|
||||
res = super(res_partner, self).default_get( cr, uid, fields, context)
|
||||
if 'is_company' in res:
|
||||
res.update({'photo': self._get_photo(cr, uid, res.get('is_company', 'contact'), context)})
|
||||
return res
|
||||
|
||||
|
||||
#This feature is Deprecated for backward Compability only
|
||||
# res.partner.address is deprecated; it is still there for backward compability only
|
||||
class res_partner_address(osv.osv):
|
||||
_table = "res_partner"
|
||||
_name = 'res.partner.address'
|
||||
@@ -478,4 +465,5 @@ class res_partner_address(osv.osv):
|
||||
def create(self, cr, uid, vals, context=None):
|
||||
logging.getLogger('res.partner').warning("Deprecated, use of res.partner.address and used res.partner")
|
||||
return super(res_partner_address,self).create(cr, uid, vals, context=context)
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
@@ -93,56 +93,56 @@
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field eval="0" name="customer"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.asustek.com</field>
|
||||
</record>
|
||||
<record id="res_partner_agrolait" model="res.partner">
|
||||
<field name="name">Agrolait</field>
|
||||
<field eval="[(6, 0, [ref('base.res_partner_category_0')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.agrolait.com</field>
|
||||
</record>
|
||||
<record id="res_partner_c2c" model="res.partner">
|
||||
<field name="name">Camptocamp</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_10'), ref('res_partner_category_5')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.camptocamp.com</field>
|
||||
</record>
|
||||
<record id="res_partner_sednacom" model="res.partner">
|
||||
<field name="website">www.syleam.fr</field>
|
||||
<field name="name">Syleam</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_5')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_thymbra" model="res.partner">
|
||||
<field name="name">SmartBusiness</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_4')])]" name="category_id"/>
|
||||
</record>
|
||||
<record id="res_partner_desertic_hispafuentes" model="res.partner">
|
||||
<field name="name">Axelor</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_4')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.axelor.com/</field>
|
||||
</record>
|
||||
<record id="res_partner_tinyatwork" model="res.partner">
|
||||
<field name="name">Tiny AT Work</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_5'), ref('res_partner_category_10')])]" name="category_id"/>
|
||||
<field name="website">www.tinyatwork.com/</field>
|
||||
</record>
|
||||
<record id="res_partner_2" model="res.partner">
|
||||
<field name="name">Bank Wealthy and sons</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.wealthyandsons.com/</field>
|
||||
</record>
|
||||
<record id="res_partner_3" model="res.partner">
|
||||
<field name="name">China Export</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.chinaexport.com/</field>
|
||||
</record>
|
||||
<record id="res_partner_4" model="res.partner">
|
||||
@@ -150,13 +150,13 @@
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field eval="0" name="customer"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.distribpc.com/</field>
|
||||
</record>
|
||||
<record id="res_partner_5" model="res.partner">
|
||||
<field name="name">Ecole de Commerce de Liege</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_1')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">www.eci-liege.info//</field>
|
||||
</record>
|
||||
<record id="res_partner_6" model="res.partner">
|
||||
@@ -164,7 +164,7 @@
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field eval="0" name="customer"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_maxtor" model="res.partner">
|
||||
<field name="name">Maxtor</field>
|
||||
@@ -172,20 +172,20 @@
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field eval="0" name="customer"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_seagate" model="res.partner">
|
||||
<field name="name">Seagate</field>
|
||||
<field eval="5000.00" name="credit_limit"/>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_8" model="res.partner">
|
||||
<field name="website">http://mediapole.net</field>
|
||||
<field name="name">Mediapole SPRL</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_1')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_9" model="res.partner">
|
||||
<field name="website">www.balmerinc.com</field>
|
||||
@@ -193,38 +193,38 @@
|
||||
<field eval="12000.00" name="credit_limit"/>
|
||||
<field name="ref">or</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_1')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_10" model="res.partner">
|
||||
<field name="name">Tecsas</field>
|
||||
<field name="ean13">3020170000003</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_11" model="res.partner">
|
||||
<field name="name">Leclerc</field>
|
||||
<field eval="1200.00" name="credit_limit"/>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_0')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_14" model="res.partner">
|
||||
<field name="name">Centrale d'achats BML</field>
|
||||
<field name="ean13">3020178572427</field>
|
||||
<field eval="15000.00" name="credit_limit"/>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_11')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_15" model="res.partner">
|
||||
<field name="name">Magazin BML 1</field>
|
||||
<field name="ean13">3020178570171</field>
|
||||
<field eval="1500.00" name="credit_limit"/>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_11')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
<record id="res_partner_accent" model="res.partner">
|
||||
<field name="name">Université de Liège</field>
|
||||
<field eval="[(6, 0, [ref('res_partner_category_9')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">http://www.ulg.ac.be/</field>
|
||||
</record>
|
||||
|
||||
@@ -235,7 +235,7 @@
|
||||
<record id="res_partner_duboissprl0" model="res.partner">
|
||||
<field eval="'Sprl Dubois would like to sell our bookshelves but they have no storage location, so it would be exclusively on order'" name="comment"/>
|
||||
<field name="name">Dubois sprl</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">http://www.dubois.be/</field>
|
||||
</record>
|
||||
|
||||
@@ -266,7 +266,7 @@
|
||||
<record id="res_partner_theshelvehouse0" model="res.partner">
|
||||
<field name="name">The Shelve House</field>
|
||||
<field eval="[(6,0,[ref('res_partner_category_retailers0')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
</record>
|
||||
|
||||
<record id="res_partner_vickingdirect0" model="res.partner">
|
||||
@@ -274,7 +274,7 @@
|
||||
<field eval="[(6,0,[ref('res_partner_category_miscellaneoussuppliers0')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field name="customer">0</field>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">vicking-direct.be</field>
|
||||
</record>
|
||||
|
||||
@@ -283,14 +283,14 @@
|
||||
<field eval="[(6,0,[ref('res_partner_category_woodsuppliers0')])]" name="category_id"/>
|
||||
<field name="supplier">1</field>
|
||||
<field eval="0" name="customer"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">woodywoodpecker.com</field>
|
||||
</record>
|
||||
|
||||
<record id="res_partner_zerooneinc0" model="res.partner">
|
||||
<field name="name">ZeroOne Inc</field>
|
||||
<field eval="[(6,0,[ref('res_partner_category_consumers0')])]" name="category_id"/>
|
||||
<field name="is_company">partner</field>
|
||||
<field name="is_company">1</field>
|
||||
<field name="website">http://www.zerooneinc.com/</field>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -327,14 +327,17 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="Partners">
|
||||
<group col="8" colspan="4">
|
||||
<group col="2">
|
||||
<field name="is_company" on_change="onchange_type(is_company, title,child_ids,photo)" required="1"/>
|
||||
<field name="function" attrs="{'invisible': [('is_company','=', 'partner')]}" colspan="2"/>
|
||||
<field name="title" size="0" groups="base.group_extended" domain="[('domain', '=', is_company)]"/>
|
||||
<group col="4" colspan="4">
|
||||
<field name="name" required="1"/>
|
||||
<field name="title" size="0" groups="base.group_extended" domain="[('domain', '=', 'contact')]"/>
|
||||
<newline/>
|
||||
<field name="function" attrs="{'invisible': [('is_company', '=', True)]}"/>
|
||||
<field name="parent_id" string="Company" attrs="{'invisible': [('is_company','=', True)]}"
|
||||
domain="[('is_company', '=', True)]" context="{'default_is_company': True}"
|
||||
on_change="onchange_address(use_parent_address, parent_id)"/>
|
||||
</group>
|
||||
<group col="2">
|
||||
<field name="name" required="1"/>
|
||||
<field name="parent_id" string="Company" attrs="{'invisible': [('is_company','=', 'partner')]}" domain="[('is_company', '=', 'partner')]" context="{'default_is_company': 'partner'}" on_change="onchange_address(use_parent_address, parent_id)"/>
|
||||
<field name="is_company" on_change="onchange_type(is_company)"/>
|
||||
</group>
|
||||
<group col="2">
|
||||
<field name="customer"/>
|
||||
@@ -348,9 +351,10 @@
|
||||
<page string="General">
|
||||
<group colspan="2">
|
||||
<separator string="Address" colspan="4"/>
|
||||
<field name="type" string="Type" attrs="{'invisible': [('is_company','=', True)]}"/>
|
||||
<group colspan="2">
|
||||
<field name="type" string="Type" attrs="{'invisible': [('is_company','=', 'partner')]}"/>
|
||||
<field name="use_parent_address" attrs="{'invisible': ['|', ('is_company','=', 'partner'), ('parent_id', '=', False)]}" on_change="onchange_address(use_parent_address, parent_id)"/>
|
||||
<field name="use_parent_address" attrs="{'invisible': [('parent_id', '=', False)]}"
|
||||
on_change="onchange_address(use_parent_address, parent_id)"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<field name="street" colspan="4"/>
|
||||
@@ -370,18 +374,20 @@
|
||||
<field name="website" widget="url" colspan="4"/>
|
||||
<field name="ref" groups="base.group_extended" colspan="4"/>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible': [('is_company','!=', 'partner')]}">
|
||||
<group colspan="4" attrs="{'invisible': [('is_company','=', False)]}">
|
||||
<field name="child_ids" context="{'default_parent_id': active_id}" nolabel="1">
|
||||
<form string="Partners">
|
||||
<group col="8" colspan="4">
|
||||
<group col="2">
|
||||
<field name="is_company" on_change="onchange_type(is_company, title,child_ids,photo)" required="1" domain="[('is_company', '=', 'partner')]"/>
|
||||
<field name="function" attrs="{'invisible': [('is_company','=', 'partner')]}" colspan="2"/>
|
||||
<field name="is_company" on_change="onchange_type(is_company)" domain="[('is_company', '=', 'partner')]"/>
|
||||
<field name="function" attrs="{'invisible': [('is_company','=', True)]}" colspan="2"/>
|
||||
<field name="title" size="0" groups="base.group_extended" domain="[('domain', '=', is_company)]"/>
|
||||
</group>
|
||||
<group col="2">
|
||||
<field name="name" required="1"/>
|
||||
<field name="parent_id" string="Company" attrs="{'invisible': [('is_company','=', 'partner')]}" domain="[('is_company', '=', 'partner')]" context="{'default_is_company': 'partner'}" on_change="onchange_address(use_parent_address, parent_id)" invisible="1"/>
|
||||
<field name="parent_id" string="Company" attrs="{'invisible': [('is_company','=', True)]}"
|
||||
domain="[('is_company', '=', True)]" context="{'default_is_company': True}"
|
||||
on_change="onchange_address(use_parent_address, parent_id)" invisible="1"/>
|
||||
</group>
|
||||
<group col="2">
|
||||
<field name="customer"/>
|
||||
@@ -396,8 +402,8 @@
|
||||
<group colspan="2">
|
||||
<separator string="Address" colspan="4"/>
|
||||
<group colspan="2">
|
||||
<field name="type" string="Type" attrs="{'invisible': [('is_company','=', 'partner')]}"/>
|
||||
<field name="use_parent_address" attrs="{'invisible': [('is_company','=', 'partner')]}" on_change="onchange_address(use_parent_address, parent_id)"/>
|
||||
<field name="type" string="Type" attrs="{'invisible': [('is_company','=', True)]}"/>
|
||||
<field name="use_parent_address" attrs="{'invisible': [('is_company','=', True)]}" on_change="onchange_address(use_parent_address, parent_id)"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<field name="street" colspan="4"/>
|
||||
@@ -417,7 +423,7 @@
|
||||
<field name="website" widget="url" colspan="4"/>
|
||||
<field name="ref" groups="base.group_extended" colspan="4"/>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible': [('is_company','!=', 'partner')]}">
|
||||
<group colspan="4" attrs="{'invisible': [('is_company','=', False)]}">
|
||||
<field name="child_ids" domain="[('id','!=',parent_id.id)]" nolabel="1"/>
|
||||
</group>
|
||||
</page>
|
||||
@@ -470,6 +476,9 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Partner">
|
||||
<group col='10' colspan='4'>
|
||||
<filter string="Persons" name="type_person" icon="terp-personal" domain="[('is_company','=',0)]"/>
|
||||
<filter string="Companies" name="type_company" icon="terp-partner" domain="[('is_company','=',1)]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Customers" name="customer" icon="terp-personal" domain="[('customer','=',1)]" help="Customer Partners"/>
|
||||
<filter string="Suppliers" name="supplier" icon="terp-personal" domain="[('supplier','=',1)]" help="Supplier Partners"/>
|
||||
<separator orientation="vertical"/>
|
||||
@@ -534,7 +543,7 @@
|
||||
<field name="email"/><br/></div><div t-if="record.mobile.raw_value">
|
||||
<span>+91</span><field name="mobile"/><br/></div></i>
|
||||
</td>
|
||||
<td t-if="record.is_company.raw_value == 'contact'" valign="top" align="right">
|
||||
<td t-if="record.is_company.raw_value" valign="top" align="right">
|
||||
<!--img t-att-src="kanban_image('res.partner', 'photo', record.id.value)" class="oe_kanban_gravatar"/-->
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
Reference in New Issue
Block a user