Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/280.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 获取在Odoo/OpenERP中没有ID或uid的当前公司_Python_Openerp_Openerp 7 - Fatal编程技术网

Python 获取在Odoo/OpenERP中没有ID或uid的当前公司

Python 获取在Odoo/OpenERP中没有ID或uid的当前公司,python,openerp,openerp-7,Python,Openerp,Openerp 7,我需要创建一个接受默认值的函数,该值对于每个公司都是不同的 问题是,我不能使用uid,因为用户在任何公司都可以这样做,而且我也没有对象要求ids,因为它是一个默认字段 有没有办法不使用ids或uid获取当前公司 提前谢谢。我不确定我是否完全理解你的问题 用户可以在任何公司做一些事情,这取决于他们允许的公司列表,但用户一次只能在一家公司做一些事情 任何用户都可以将其当前公司更改为允许的公司之一,但当他们这样做时,用户记录上的公司id会更改,因此如果您使用UID浏览res.users,您将始终获得用

我需要创建一个接受默认值的函数,该值对于每个公司都是不同的

问题是,我不能使用
uid
,因为用户在任何公司都可以这样做,而且我也没有对象要求
ids
,因为它是一个默认字段

有没有办法不使用
ids
uid
获取当前公司


提前谢谢。

我不确定我是否完全理解你的问题

用户可以在任何公司做一些事情,这取决于他们允许的公司列表,但用户一次只能在一家公司做一些事情

任何用户都可以将其当前公司更改为允许的公司之一,但当他们这样做时,用户记录上的公司id会更改,因此如果您使用UID浏览res.users,您将始终获得用户的当前公司


我能想到的唯一例外是,如果你给用户一个允许他们查看的公司列表,并给他们一个按钮或复选框来对该公司进行操作。在这种情况下,您的屏幕需要有一个模型作为背景,您可以在那里查看他们选择了哪家公司,通过浏览查看哪个记录设置了复选框,或者如果您在树状视图上放置按钮或操作,该方法将获得所选记录的ID。

是的,您可以通过以下代码来执行此操作:

self.env['res.company']._company_default_get('your.module')
那么,试想一下:用户“U”可以访问2个公司“A”和“B”,该用户的公司id是属于公司“B”的公司id,现在,用户去创建一张凭证,该凭证的默认值对于每个公司都是不同的。如果我使用UID,当我创建凭证时,即使im在公司“A”中,它也会带来默认值“B”,因为它使用用户的公司id。我没有按钮或复选框来获取活动的\u ID,因此我无法从那里获取它们。