Search code examples
odoo-14

indicating a related field in a xml file


I have this xml fragment and it works

    <record id="expiry_alert" model="base.automation">
        <field name="name">XmlSend</field>
        <field name="model_id" ref="model_project_task"/>
        <field name="trigger">on_time</field>
        <field name="active" eval="True"/>
        <field name="trg_date_id" search="[('model','=','project.task'),('name','=','date_deadline')]" />
        <field name="filter_domain">['&amp;',['date_deadline', '!=', False], ['stage_id.fold','=', False]]</field>
        <field name="state">code</field>
        <field name="code">record.expirations()</field>
        <field name="trg_date_range">5</field>
        <field name="trg_date_range_type">minutes</field>
    </record>

I say it works because it does insert a record in the base.automation model and such record does what I expected

Now, this version doesn't work

    <record id="expiry_alert" model="base.automation">
        <field name="name">XmlSend</field>
        <field name="model_id" ref="model_project_task"/>
        <field name="trigger">on_time</field>
        <field name="active" eval="True"/>
        <field name="trg_date_id" ref="date_deadline" />       <-- PLEASE NOTE THIS LINE !!
        <field name="filter_domain">['&amp;',['date_deadline', '!=', False], ['stage_id.fold','=', False]]</field>
        <field name="state">code</field>
        <field name="code">record.expirations()</field>
        <field name="trg_date_range">5</field>
        <field name="trg_date_range_type">minutes</field>
    </record>

I tried with several variants of <field name="trg_date_id" ref="date_deadline" />,

like <field name="trg_date_id" ref="project_task.date_deadline" />

But I couldn't find a variant that works

Is it me ? Is ref supported ? How am I supposed to use it ?


Solution

  • To get the XML ID of the filed, activate developer mode and go to settings -> technical -> fields and filter per Task model and search for date_deadline field, open it and from debug icon select view Metadata

    The XML ID for date_deadline is project.field_project_task__date_deadline

    So you can use it as below:

    <field name="trg_date_id" ref="project.field_project_task__date_deadline" />