Using XML :
<!-- Set Multi Companies and Multi Currencies by default for admin user
Note : This XMl code will be useful for only admin user alone.If you want to set it for all the users you can use py below code. -->
<record model="res.groups" id="base.group_multi_company">
<field name="name">Multi Companies</field>
<field name="category_id" ref="base.module_category_extra" />
<field name="implied_ids" eval="[(4, ref('base.group_light_multi_company'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
<record model="res.groups" id="base.group_multi_currency">
<field name="name">Multi Currencies</field>
<field name="category_id" ref="base.module_category_extra" />
<field name="implied_ids" eval="[(4, ref('base.group_light_multi_company'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
<!-- End -->
Using PY
class ResUsers(models.Model):
_inherit = "res.users"
groups_id = fields.Many2many('res.groups', 'res_groups_users_rel', 'uid', 'gid', 'Groups', default=_get_group)
# Purpose : Set 'Multi Companies' and 'Multi Currencies' by default for res user - Added by Nivas
@api.model
def _get_group(self):
dataobj = self.pool['ir.model.data']
result = []
try:
dummy,group_id = dataobj.get_object_reference(self._cr, self._uid, 'base', 'group_user')
result.append(group_id)
# Purpose : Set 'Multi Companies' group as default
dummy,group_id = dataobj.get_object_reference(self._cr, SUPERUSER_ID, 'base', 'group_multi_company')
result.append(group_id)
# Purpose : Set 'Multi Currencies' group as default
dummy,group_id = dataobj.get_object_reference(self._cr, SUPERUSER_ID, 'base', 'group_multi_currency')
result.append(group_id)
# End
dummy,group_id = dataobj.get_object_reference(self._cr, SUPERUSER_ID, 'base', 'group_partner_manager')
result.append(group_id)
except ValueError:
# If these groups does not exists anymore
pass
return result
In Old API(odoo 8 and 7 you can use the following code)
class res_users(osv.osv):
_inherit = "res.users"
def _get_group(self,cr, uid, context=None):
dataobj = self.pool.get('ir.model.data')
result = []
try:
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_user')
result.append(group_id)
# Purpose : Set 'Multi Companies' group as default
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_multi_company')
result.append(group_id)
# Purpose : Set 'Multi Currencies' group as default
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_multi_currency')
result.append(group_id)
# End
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_partner_manager')
result.append(group_id)
except ValueError:
# If these groups does not exists anymore
pass
return result
_defaults = {
'groups_id': _get_group,
}
<!-- Set Multi Companies and Multi Currencies by default for admin user
Note : This XMl code will be useful for only admin user alone.If you want to set it for all the users you can use py below code. -->
<record model="res.groups" id="base.group_multi_company">
<field name="name">Multi Companies</field>
<field name="category_id" ref="base.module_category_extra" />
<field name="implied_ids" eval="[(4, ref('base.group_light_multi_company'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
<record model="res.groups" id="base.group_multi_currency">
<field name="name">Multi Currencies</field>
<field name="category_id" ref="base.module_category_extra" />
<field name="implied_ids" eval="[(4, ref('base.group_light_multi_company'))]"/>
<field name="users" eval="[(4, ref('base.user_root'))]"/>
</record>
<!-- End -->
Using PY
class ResUsers(models.Model):
_inherit = "res.users"
groups_id = fields.Many2many('res.groups', 'res_groups_users_rel', 'uid', 'gid', 'Groups', default=_get_group)
# Purpose : Set 'Multi Companies' and 'Multi Currencies' by default for res user - Added by Nivas
@api.model
def _get_group(self):
dataobj = self.pool['ir.model.data']
result = []
try:
dummy,group_id = dataobj.get_object_reference(self._cr, self._uid, 'base', 'group_user')
result.append(group_id)
# Purpose : Set 'Multi Companies' group as default
dummy,group_id = dataobj.get_object_reference(self._cr, SUPERUSER_ID, 'base', 'group_multi_company')
result.append(group_id)
# Purpose : Set 'Multi Currencies' group as default
dummy,group_id = dataobj.get_object_reference(self._cr, SUPERUSER_ID, 'base', 'group_multi_currency')
result.append(group_id)
# End
dummy,group_id = dataobj.get_object_reference(self._cr, SUPERUSER_ID, 'base', 'group_partner_manager')
result.append(group_id)
except ValueError:
# If these groups does not exists anymore
pass
return result
In Old API(odoo 8 and 7 you can use the following code)
class res_users(osv.osv):
_inherit = "res.users"
def _get_group(self,cr, uid, context=None):
dataobj = self.pool.get('ir.model.data')
result = []
try:
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_user')
result.append(group_id)
# Purpose : Set 'Multi Companies' group as default
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_multi_company')
result.append(group_id)
# Purpose : Set 'Multi Currencies' group as default
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_multi_currency')
result.append(group_id)
# End
dummy,group_id = dataobj.get_object_reference(cr, SUPERUSER_ID, 'base', 'group_partner_manager')
result.append(group_id)
except ValueError:
# If these groups does not exists anymore
pass
return result
_defaults = {
'groups_id': _get_group,
}