Одоо. Я хотел бы сделать невидимой запись в виде дерева, в зависимости от значения одного поля

Openerp, Одоо вопрос. Я хотел бы скрыть строку в дереве в зависимости от одного поля (например, товара нет на складе).

Может быть, мне нужно поместить это где-нибудь в tree_view.xml:

attrs="{'невидимый': [('in_stock','=', 0)]}"

Было бы хорошо, если бы это работало, как флаг res_partner 'Active'. Когда поле 'Active' имеет значение False, вся запись исчезает.

Любой совет будет принят во внимание!


person VígJAni    schedule 10.08.2017    source источник


Ответы (2)


Если вы хотите полностью скрыть запись, используйте этот домен в действии окна. Чтобы показать только те записи, которые соответствуют домену.

       <field name="domain">[('in_stock', '=', 0)]</field>
person Charif DZ    schedule 11.08.2017

Вы можете скрыть, используя следующий синтаксис:

<field name="flag" invisible="1"/>
<field name="x" attrs="{'invisible': [('flag','=', False)]}"/>

Здесь флаг должен быть вычисляемым полем, которое вычисляет запас текущего товара. поэтому в сценарии просто сделайте поле следующим:

flag = fields.Boolean("String", compute="get_stock_status")

def get_stock_status(self):
    # do your computation and change values of flag accordingly
    self.flag = False
person Hilar AK    schedule 11.08.2017