【问题标题】:Odoo: I can't validate invoices from Accounting(admin user only)Odoo:我无法验证来自会计的发票(仅限管理员用户)
【发布时间】:2016-11-29 21:53:59
【问题描述】:

我正在尝试使用管理员用户验证来自会计的发票,但它给了我一个错误:

字段company_id 因约束条件失败:帐户和期间必须属于同一公司。

帐户和期间属于同一公司,如果我使用其他用户登录,我可以验证发票,但由于某种原因我不能使用管理员。我什至试图复制用户管理员,它可以工作,但真正的却不行。

我现在正在搞乱访问权限,但目前我什么都没有。 有什么想法吗?

感谢您的宝贵时间

【问题讨论】:

  • 这个问题很难回答。是否没有足够的信息(示例值)或者还有另一个问题:您是否安装了自定义模块?如果没有编程上下文,这个问题不属于 SO。也许使用 Odoo 的帮助论坛。
  • 请参阅我更新了可能对您有所帮助的答案。最近我遇到了这个问题,所以我在这里更新了结论。

标签: openerp odoo-8


【解决方案1】:

当您验证发票时,它会为该发票创建帐户移动条目,其中以下内容将受到影响并且其中任何人属于不同的公司,那么它将不允许您验证发票。这种情况仅发生在管理员用户身上,因为管理员有权访问所有公司记录,并且记录规则正在通过管理员。对于普通用户,其他公司数据将被规则隐藏(多公司规则)。

所有这些记录必须属于同一家公司。

  • 产品帐户 => 通常在您选择产品时自动设置。
  • => 发票行中的税(在大多数情况下,选择其他公司的管理员用户税,因为管理员 可以访问所有公司。并且会在产品 onchange 触发时自动设置税费。)

  • 债务人帐户/日记帐帐户 =>客户应收帐户或发票日记帐的借方/贷方帐户。

如果以上所有情况都正确,那么您只需要验证一件事,即会计期间。该发票中选择的帐户期间和帐户日记帐中的帐户(借方和贷方)都不属于同一公司。有理由在发票中选择另一家公司的帐户期间,因为 ADMIN 用户可以访问所有公司。因此,将在发票中选择第一期(如果用户是管理员,它将永远不会检查公司),如果用户不是管理员,则不会加载其他公司的记录,这就是为什么它总是为普通用户工作而不是管理员(因为管理员用户的访问规则是绕过的)。

【讨论】:

  • 非常有趣。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-12-11
相关资源
最近更新 更多