当记录具有“ x”状态时,我试图在树视图中放置不可见的整行,但事实是,我可以通过在每个字段中放置{invisible}属性来使其不可见,但这不是事实我想要,因为这使我可以选择记录,如下图所示:
这是我在树状视图中的代码:
<record id="dues_control_tree" model="ir.ui.view">
<field name="name">dues.control.tree</field>
<field name="model">dues.control</field>
<field name="arch" type="xml">
<tree string="Listado De Pagos" decoration-info ="status==2" decoration-danger ="status==1">
<field name="re_customer" attrs="{'invisible':[('status', '=', 2)]}" />
<field name="n_invoice" attrs="{'invisible':[('status', '=', 2)]}" />
<field name="amount_total" attrs="{'invisible':[('status', '=', 2)]}" />
<field name="number_dues" attrs="{'invisible':[('status', '=', 2)]}" />
<field name="amount_dues" attrs="{'invisible':[('status', '=', 2)]}" />
<field name="pay_amount_dues" attrs="{'invisible':[('status', '=', 2)]}"/>
<field name="status" attrs="{'invisible':[('status', '=', 2)]}"/>
</tree>
</field>
</record>
问题是我希望它不被显示,并且当您具有X状态时,无法选择整行。
答案 0 :(得分:1)
您不必使所有行都不可见,而应使用domain。 这有帮助
<record model="ir.actions.act_window" id="your_action_id">
<field name="name">dues.control.action</field>
<field name="res_model">dues.control</field>
<field name="view_mode">tree,form</field>
<field name="domain">
[('status', '!=', 2)]
</field>
</record>
答案 1 :(得分:0)
您正在尝试为此树视图实现记录规则。 最好的方法是使用ir.actions.server而不是ir.actions.window。 (当有人单击菜单项时触发并显示此树视图的操作) 您可以在该操作服务器上设置域并限制要显示的行。 在动作服务器的代码字段中,您可以提及一个函数,当客户端单击相关菜单项时,该函数可以运行并在显示行时设置域。 在该函数上将域设置为不显示状态为X的记录。 This is a solution sample 我敢肯定,这将解决您的问题,尽力而为。