Bỏ qua để đến Nội dung
Menu
Câu hỏi này đã bị gắn cờ
1 Trả lời
3150 Lượt xem

Good afternoon,

I'm trying to make a column not visible according to a condition, but I don't know why the change does not take effect.

odoo11

* I have no error of any kind. is updated correctly.

Steps:

1-create in the model res_company a new field called: 

    tipo_envio = fields.Selection(selection=[("0","0 - P"),("3","3 - E")])

2-from the invoice view (account_invoice), filter the value according to the new field created in res_company.

current value in res_company.shipment_type = 0

<record model="ir.ui.view" id="des.view_account_invoice_mobile">
  <field name="name">Cambios</field>
  <field name="model">account.invoice</field>
  <field name="inherit_id" ref="account.invoice_form"/>
  <field name="arch" type="xml">
  <field name="invoice_line_ids" position="inside">
     <form>
        <group>
<field name="company_id" invisible="1"/>
<field name="otros" attrs="{'invisible':[('company_id.tipo_envio','not in',['3'])]}"/>  
        </group>
      </form>
    </field>
   </field>
</record>

Also try creating a new field in the account_invoice_line model

related_tipo_envio = fields.Selection(related="company_id.tipo_envio",store=True)

but it doesn't work either.

<field name="otros_cargos_items" attrs="{'invisible':[('related_tipo_envio','!=','3')]}"/>

<field name="factor_isc" attrs="{'invisible': [('related_tipo_envio','in',('0','1','2'))]}"/>

thanks,

Ảnh đại diện
Huỷ bỏ
Câu trả lời hay nhất

Hi Gianca,

You need to make sure the conditional field is showed on the view too
<field name="related_tipo_envio" invisible="1"/>
<field name="otros_cargos_items" attrs="{'invisible':[('related_tipo_envio','!=','3')]}"/>
<field name="factor_isc" attrs="{'invisible': [('related_tipo_envio','in',('0','1','2'))]}"/>

Regards,
Ivan

Ảnh đại diện
Huỷ bỏ
Tác giả

Hello, thanks for the answer. I also tried that option. but I read I'm reading and it seems that in the tree view, you can't make a hill invisible like that. I still can't figure out how to do it.

If it is on tree view, it is impossible to hide the field for certain record

If you wish to hide, it will apply to all record in tree view

Tác giả

thanks for your support. I want to hide the entire column of the account_invoice_line, on the invoice.

for example the price field.

It only works when I make it invisible = "1", but not when it depends on another value.