es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo ocultar condicionalmente filas en un tree de campo One2Many en una vista de formulario?

Tengo una vista de formulario que contiene una pestaña en una página de cuaderno de notas. Los modelos están personalizados.

Este es el código de ejemplo.

<page string="Pack">
     <field name="packing_quantity">
         <tree create="false" editable="bottom">
             <field name="ps" invisible="1"></field>
             <field name="product"></field>
             <field name="pack"></field>
             <field name="pack_qty"></field>
         </tree>
     </field>
 </page>

El campo One2Many packing_quantity se muestra como un árbol dentro de la vista de formulario. Sin embargo, necesito filtrar/ocultar algunos registros de forma condicional. La condición es mostrar solo aquellos que tienen pack_qty > 0.

Intenté poner un dominio en el campo packing_quantity y en el árbol. No funciona.

Field Domain not working

Busqué este problema en particular en todas partes, pero solo encontré la solución utilizando el dominio de la ventana de acción, que en este caso no puedo usar ya que está en una vista de formulario.

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para filtrar/ocultar registros condicionalmente en un campo One2Many en forma de árbol dentro de una vista de formulario en Odoo, utiliza el atributo attrs con el dominio en la definición del campo.

    En el ejemplo dado, modifica la definición del campo packing_quantity de la siguiente manera:

    <field name="packing_quantity" attrs="{'invisible': [('pack_qty', '<=', 0)]}">
         <tree create="false" editable="bottom">
             <field name="ps" invisible="1"></field>
             <field name="product"></field>
             <field name="pack"></field>
             <field name="pack_qty"></field>
         </tree>
     </field>
    

    Esto ocultará los registros donde pack_qty sea menor o igual a cero.

Comments are closed.