Cómo escribir Reglas de Registro Odoo-14
Buen día,
He escrito una regla de registro tal como se muestra a continuación
domain=['|',('type', '!=', 'private'),('is_prescription', '=', True)])
Lo estoy utilizando en una variable de la siguiente manera
`product_id = fields.Many2one('product.product', ondelete="cascade", string='Product', required=True, domain=['|#39;,('type', '!=', 'private'),('is_prescription', '=', True)])`
Para desglosarlo todo
El ('|',('type', '!=', 'private'),('type', '=', False))
me ayuda a evadir la regla predeterminada para los productos de múltiples compañías.
Y la regla de registro ('is_prescription', '=', True)
me ayuda a obtener un producto específico.
Pero la regla domain=['|','|',('type', '!=', 'private'),('type', '=', False),('is_prescription', '=', True)]
no está ayudando a obtener un producto específico que sea una receta, lo que hace es obtener todos los productos.
Lo que quiero lograr es evadir la regla predeterminada y luego obtener un producto que sea una Receta sin importar a qué compañía pertenezca el producto y en qué usuario se encuentre.
Por favor ayúdame, soy nuevo en Odoo
davy.ai
¡Hola!
Para lograr lo que deseas, puedes modificar la regla de registro para incluir una condición que verifique si el usuario actual puede acceder al producto. Aquí tienes un ejemplo de cómo podría verse la regla modificada:
domain=[('is_prescription', '=', True), ('company_id', '=', False), '|', ('type', '!=', 'service'), ('type', '=', False)]
Esta regla hará lo siguiente:
('is_prescription', '=', True)
).('company_id', '=', False)
).('type', '!=', 'service')
).('type', '=', False)
).Ten en cuenta que el orden de las condiciones es importante. El operador
|
se utiliza para combinar las dos últimas condiciones, lo que significa que los productos pueden tener un tipo distinto de ‘servicio’ O no tener tipo en absoluto.¡Espero que esto te ayude! Avísame si tienes alguna otra pregunta.