我正在使用 Odoo 14, 我在我的项目中添加了任务:
facture = fields.Many2many('account.move', string='Situation', domain = [('move_type', 'in', ('out_invoice', 'out_refund'))])
因此,每个任务都可以有一个或多个发票(发票可以已经创建,或者用户可以从 project.task 的表单视图创建一个)
我不希望它成为时间表发票,我希望用户可以从发票菜单中创建发票。
我在任务的表单视图中添加了这个:
<page name="situation" string="Situation">
<field name="facture">
<tree editable="top" create="true">
<field name="name" />
<field name="campaign_id" string="Source"/>
<field name="invoice_partner_display_name" string="Client"/>
<field name="invoice_date" string="Date"/>
<field name="amount_total_signed" string="Total"/>
<field name="amount_residual_signed" string="Reste" />
<field name="payment_state" string="Statut"/>
</tree>
</field>
</page>
到目前为止一切正常。
当我点击添加一行时我得到了
如果我点击创建而不是选择我得到:
相反,我想要发票的正常形式视图
我试过
facture = fields.Many2many('account.invoice', string='Situation')
代替
facture = fields.Many2many('account.move', string='Situation', domain = [('move_type', 'in', ('out_invoice', 'out_refund'))])
但是没用
Odoo 将在移动类型设置为 entry 时隐藏发票行选项卡,这是 default value
以下错误:
Error: While parsing modifiers for field invoice_date: for modifier "readonly": Unknown field state in domain
在Odoo评估字段修饰符(
One2many
字段,可编辑集)时显示。
invoice_date 使用
state
属性中的 states
字段。要修复错误,请在 state
中添加
tree
字段