【问题标题】:invisible/hide many2one record value when changing condition更改条件时不可见/隐藏 many2one 记录值
【发布时间】:2022-11-12 05:53:09
【问题描述】:

如何在更改 company_id 时将字段记录设置为从字段 bank_from_journal_id 不可见。

bank_from_journal_id = fields.Many2one('account.journal', domain="[('type', 'in', ('bank', 'cash'))]",string="Bank From", tracking=True)
company_id = fields.Many2one('res.company', string='Company', tracking=True,default=lambdaself: self.env.company.id)

例如,我为“特斯拉公司”创建了“银行 xxx”,然后我想在更改为另一家公司时使银行 xxx 不可见/隐藏。因此,银行记录仅在公司与创建银行记录的位置相同时出现,而在更改为另一家公司时隐藏。

谢谢

【问题讨论】:

  • 帐户日志中有一个 company_id 字段,您可以在 bank_from_journal_id 域 (XML) 中使用它
  • @Kenly 不需要使用装饰器?只在 xml 上使用域?

标签: odoo odoo-14


【解决方案1】:

您需要基于 company_id 字段的 bank_from_journal_id 域。 为了实现这一目标,您有两种选择。

第一个选项:

为 bank_from_journal_id 字段定义视图中的域。

<field name="company_id" />
<field name="bank_from_journal_id" domain="[('company_id','=',company_id)]" />

第二种选择:

当 company_id 更改时更新域。

笔记:从 odoo 15.0 开始不推荐使用

@api.onchange('company_id')
def _onchange_company_id(self):
  self.ensure_one()
  return {'domain': {'bank_from_journal_id': [('company_id','=', self.company_id)]}}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-02
    • 1970-01-01
    • 1970-01-01
    • 2014-05-02
    • 2023-04-05
    • 2018-05-17
    • 1970-01-01
    相关资源
    最近更新 更多