Caught and fixed by running an actual install on a throwaway DB:
- Strip 29 # comment lines from ir.model.access.csv (Odoo CSV loader treats
them as malformed rows → IndexError); 79 data rows preserved
- Remove obsolete ir.cron.numbercall field (removed in Odoo 17+) from 4 cron
records in fl_deadline_rules.xml
- Rename <tree>→<list> across 26 sites; inside x2many inline views Odoo 18 no
longer recognizes <tree>, which made it fall back to the outer model and
reject inner fields ("Field 'partner_id' does not exist in model 'fl.case'")
- Add store=True to non-stored computed fields referenced by search filters,
which Odoo 18 now rejects as unsearchable:
- fl.case: overdue_deadline_count, next_deadline_label
- fl.deposition: notice_valid
Module loads cleanly: 31 fl.* models registered, no errors.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
59 lines
3.0 KiB
XML
59 lines
3.0 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo>
|
|
<data noupdate="1">
|
|
|
|
<!-- ══════════════════════════════════════════════════════
|
|
SCHEDULED ACTIONS (ir.cron)
|
|
══════════════════════════════════════════════════════ -->
|
|
|
|
<!-- Daily: Send deadline alerts at 7, 3, 1 days and on overdue -->
|
|
<record id="cron_fl_deadline_alerts" model="ir.cron">
|
|
<field name="name">FL Family Law: Daily Deadline Alerts</field>
|
|
<field name="model_id" ref="model_fl_deadline"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_deadline_alerts()</field>
|
|
<field name="interval_number">1</field>
|
|
<field name="interval_type">days</field>
|
|
<field name="active">True</field>
|
|
<field name="user_id" ref="base.user_root"/>
|
|
</record>
|
|
|
|
<!-- Daily: Check for default judgment triggers (FL 12.922) -->
|
|
<record id="cron_fl_default_judgment" model="ir.cron">
|
|
<field name="name">FL Family Law: Check Default Judgment Triggers (FL 12.922)</field>
|
|
<field name="model_id" ref="model_fl_deadline"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_check_default_judgment()</field>
|
|
<field name="interval_number">1</field>
|
|
<field name="interval_type">days</field>
|
|
<field name="active">True</field>
|
|
<field name="user_id" ref="base.user_root"/>
|
|
</record>
|
|
|
|
<!-- Daily: Check child emancipation approaching (90-day window) -->
|
|
<record id="cron_fl_emancipation_alerts" model="ir.cron">
|
|
<field name="name">FL Family Law: Child Emancipation Approaching Alerts</field>
|
|
<field name="model_id" ref="model_fl_child"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_emancipation_alerts()</field>
|
|
<field name="interval_number">1</field>
|
|
<field name="interval_type">days</field>
|
|
<field name="active">True</field>
|
|
<field name="user_id" ref="base.user_root"/>
|
|
</record>
|
|
|
|
<!-- Daily: Check for overdue discovery responses and deemed admissions (FL 1.370) -->
|
|
<record id="cron_fl_discovery_overdue" model="ir.cron">
|
|
<field name="name">FL Family Law: Discovery Overdue Alerts (FL 1.370 / 1.380)</field>
|
|
<field name="model_id" ref="model_fl_discovery"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_discovery_overdue_alerts()</field>
|
|
<field name="interval_number">1</field>
|
|
<field name="interval_type">days</field>
|
|
<field name="active">True</field>
|
|
<field name="user_id" ref="base.user_root"/>
|
|
</record>
|
|
|
|
</data>
|
|
</odoo>
|