- cron_suggest (every 30min): warm AI suggestions for unreconciled lines that don't have a recent pending one - cron_pattern_refresh (daily 02:00): recompute fusion.reconcile.pattern for each (company, partner) pair with precedents - cron_mv_refresh (every 5min): REFRESH MATERIALIZED VIEW CONCURRENTLY using a dedicated autocommit cursor (REFRESH CONCURRENTLY can't run inside a regular Odoo transaction) V19 note: ir.cron dropped the numbercall field, so the data XML omits it (cron now repeats indefinitely as long as active=True). Tests: 5 new TestFusionBankRecCron tests pass; full module suite is 0 failed / 0 errors of 123 logical tests on westin-v19. Made-with: Cursor
36 lines
1.6 KiB
XML
36 lines
1.6 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<odoo noupdate="1">
|
|
|
|
<record id="cron_fusion_bank_rec_suggest" model="ir.cron">
|
|
<field name="name">Fusion Bank Rec — Warm AI Suggestions</field>
|
|
<field name="model_id" ref="model_fusion_bank_rec_cron"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_suggest_pending()</field>
|
|
<field name="interval_number">30</field>
|
|
<field name="interval_type">minutes</field>
|
|
<field name="active" eval="True"/>
|
|
</record>
|
|
|
|
<record id="cron_fusion_bank_rec_pattern_refresh" model="ir.cron">
|
|
<field name="name">Fusion Bank Rec — Refresh Partner Patterns</field>
|
|
<field name="model_id" ref="model_fusion_bank_rec_cron"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_refresh_patterns()</field>
|
|
<field name="interval_number">1</field>
|
|
<field name="interval_type">days</field>
|
|
<field name="nextcall" eval="(DateTime.now().replace(hour=2, minute=0, second=0) + timedelta(days=1)).strftime('%Y-%m-%d %H:%M:%S')"/>
|
|
<field name="active" eval="True"/>
|
|
</record>
|
|
|
|
<record id="cron_fusion_bank_rec_mv_refresh" model="ir.cron">
|
|
<field name="name">Fusion Bank Rec — Refresh Unreconciled MV</field>
|
|
<field name="model_id" ref="model_fusion_bank_rec_cron"/>
|
|
<field name="state">code</field>
|
|
<field name="code">model._cron_refresh_mv()</field>
|
|
<field name="interval_number">5</field>
|
|
<field name="interval_type">minutes</field>
|
|
<field name="active" eval="True"/>
|
|
</record>
|
|
|
|
</odoo>
|