openerp-dev-web team mailing list archive
-
openerp-dev-web team
-
Mailing list archive
-
Message #06700
lp:~openerp-dev/openobject-server/trunk-configuration-rework-company-imp-rpa into lp:~openerp-dev/openobject-server/trunk-configuration-rework
Rucha (Open ERP) has proposed merging lp:~openerp-dev/openobject-server/trunk-configuration-rework-company-imp-rpa into lp:~openerp-dev/openobject-server/trunk-configuration-rework.
Requested reviews:
qdp (OpenERP) (qdp)
For more details, see:
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-configuration-rework-company-imp-rpa/+merge/60784
Improvement in company view, Added function fields for address information
--
https://code.launchpad.net/~openerp-dev/openobject-server/trunk-configuration-rework-company-imp-rpa/+merge/60784
Your team OpenERP R&D Team is subscribed to branch lp:~openerp-dev/openobject-server/trunk-configuration-rework.
=== modified file 'openerp/addons/base/base_update.xml'
--- openerp/addons/base/base_update.xml 2011-04-13 10:49:07 +0000
+++ openerp/addons/base/base_update.xml 2011-05-12 13:44:07 +0000
@@ -199,6 +199,16 @@
</group>
<notebook colspan="4">
<page string="General Information">
+ <separator string="Address Information" colspan="4"/>
+ <field name="street"/>
+ <field name="street2"/>
+ <field name="zip"/>
+ <field name="city"/>
+ <!--field name="country_id"/>
+ <!NOT WORKING field name="state_id"/-->
+ <field name="phone"/>
+ <field name="email"/>
+ <separator string="Reporting Information" colspan="4"/>
<field name="rml_header1" colspan="4"/>
<field name="rml_footer1" colspan="4"/>
<field name="rml_footer2" colspan="4"/>
=== modified file 'openerp/addons/base/res/res_company.py'
--- openerp/addons/base/res/res_company.py 2011-04-13 10:49:07 +0000
+++ openerp/addons/base/res/res_company.py 2011-05-12 13:44:07 +0000
@@ -72,6 +72,26 @@
_name = "res.company"
_description = 'Companies'
_order = 'name'
+
+ def _get_address_data(self, cr, uid, ids, name, arg, context=None):
+ result = {}
+ name = name[0]
+ for company in self.browse(cr, uid, ids, context=context):
+ result[company.id] = {}
+ if company.partner_id and company.partner_id.address:
+ address = company.partner_id.address[0]
+ result[company.id][name] = address[name] or False
+ else:
+ result[company.id][name] = False
+ return result
+
+ def _set_address_data(self, cr, uid, company_id, name, value, arg, context=None):
+ company = self.browse(cr, uid, company_id, context=context)
+ address = company.partner_id and company.partner_id.address and company.partner_id.address[0].id
+ address_obj = self.pool.get('res.partner.address')
+ address_obj.write(cr, uid, [address], {name: value or False})
+ return True
+
_columns = {
'name': fields.char('Company Name', size=64, required=True),
'parent_id': fields.many2one('res.company', 'Parent Company', select=True),
@@ -88,6 +108,14 @@
'currency_ids': fields.one2many('res.currency', 'company_id', 'Currency'),
'user_ids': fields.many2many('res.users', 'res_company_users_rel', 'cid', 'user_id', 'Accepted Users'),
'account_no':fields.char('Account No.', size=64),
+ 'street' : fields.function(_get_address_data, fnct_inv=_set_address_data, size=128, type='char', method=True, string="Street", multi='street'),
+ 'street2' : fields.function(_get_address_data, fnct_inv=_set_address_data, size=128, type='char', method=True, string="Street2", multi='street2'),
+ 'zip' : fields.function(_get_address_data, fnct_inv=_set_address_data, size=24, type='char', method=True, string="Zip", multi='zip'),
+ 'city' : fields.function(_get_address_data, fnct_inv=_set_address_data, size=24, type='char', method=True, string="City", multi='city'),
+# 'state_id' : fields.function(_get_address_data, fnct_inv=_set_address_data, type='many2one', method=True, string="State", multi='state_id'),
+# 'country_id' : fields.function(_get_address_data, fnct_inv=_set_address_data, type='many2one', method=True, string="Country", multi='country_id'),
+ 'email' : fields.function(_get_address_data, fnct_inv=_set_address_data, size=64, type='char', method=True, string="Email", multi='email'),
+ 'phone' : fields.function(_get_address_data, fnct_inv=_set_address_data, size=64, type='char', method=True, string="Phone", multi='phone'),
}
def _search(self, cr, uid, args, offset=0, limit=None, order=None,
Follow ups