次のような Odoo 10 cron xml があります。
<record forcecreate="True" id="saas_portal_suspend_expired" model="ir.cron">
<field name="name">Saas portal - suspend expired clients</field>
<field eval="True" name="active" />
<field name="user_id" ref="base.user_root"/>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="numbercall">-1</field>
<field name="doall" eval="False"/>
<field name="model">saas_portal.client</field>
<field name="function">_cron_suspend_expired_clients</field>
<field name="args">()</field>
</record>
これは正常に機能しました。Odoo v11 に従ってコードを変更したので、次のようになります。
<record forcecreate="True" id="saas_portal_suspend_expired" model="ir.cron">
<field name="name">Saas portal - suspend expired clients</field>
<field eval="True" name="active" />
<field name="user_id" ref="base.user_root"/>
<field name="interval_number">1</field>
<field name="interval_type">days</field>
<field name="numbercall">-1</field>
<field name="doall" eval="False"/>
<field name="model_id" ref="saas_portal.client"/>
<field name="function">_cron_suspend_expired_clients</field>
<field name="args">()</field>
</record>
ご覧のとおり、フィールド モデルを model_id に変更しました。しかし、何らかの理由でエラーが発生しています:
odoo.tools.convert.ParseError: "システムに外部 ID が見つかりません: saas_portal.client"
モジュール自体はsaas_portalと呼ばれ、参照しているモデルには_name = 'saas_portal.client'があり、使用しようとしまし<field name="model_id" ref="saas_portal.saas_portal.client"/>
たが成功しませんでした。足りないものはありますか?