Az ütemező: sablonok, példányok, öngyógyítás és jogosultság

Az egyetlen ütemező adatmodellje, a sablon- és példány-sorok viszonya, a támogatott feladattípusok, a mentés és a sor-műveletek szabályai, az öngyógyítás és a tartalmi hatókör.

A rendszernek egyetlen ütemezője van. Az ütemező-sor sablon-sorai (is_template = 1) a MIKOR-t írják le egy cégre, cégcsoportra vagy a rendszerre; a catalog worker (masterdata/cronqueue.run) az esedékes sablonokból példány-sorokat (is_template = 0) szúr és feldolgoz. Az időzítést a közös ütemezés-számoló (perc, óra, nap, hét, hónap; Europe/Budapest) adja.

Adatmodell

A táblanevek a telepítés saját előtagjával állnak az adatbázisban.

TáblaSzerepFő mezők
cron_queuesablonok és példányokjob_type, company_id, cégcsoport, is_template, next_run, státusz, payload (pl. email_task_id, check_code)
cron_healthöngyógyítás nyitott hibáijob-típus, hiba, állapot
companycélcégolvasás

Mentés és sor-műveletek

  1. A form job-típusai: taxaccount, missingtaxreturn, email, email_commands, email_ai, taskdigest, taskrecurring, nav_invoice_query, nav_invoice_sync, nav_invoice_data, email_task, integrity_check, content_translate.
  2. Cél: cég, cégcsoport, vagy a rendszer-jobokra (email*, taskdigest, integrity_check) a rendszer. Paraméteres jobok: email_task (a cég és az időzítés a taskból jön), integrity_check (az ellenőrzés kódja).
  3. Opcionális eredmény-levél (mail_notify 0–2, csatorna és sablon a levelezés modulból a client szerint).
  4. Mentés után a következő futás kiszámítása, a sor visszaolvasása, a levél-beállítás mentése. Példány-sornál csak a next_run módosítható.
  5. runnow: azonnali példány-sor(ok), csoportnál tagcégenként; a sablon next_run-ja változatlan. stopselected: sablon → inaktiválás, példány → törlés. delete: fizikai törlés, a levél-modulbeállítás inaktiválása.
  6. Minden művelet a cron naplócsatornára ír.
  7. enqueueDue(): a futtató-híd publikus metódusa; esedékes sablonokból sorokat szúr és lépteti a next_run-t; jog: edit.

Öngyógyítás

A health végpont ugyanazt futtatja, amit a worker 10 percenként: megszakadt önfenntartó láncok pótlása, 60 percnél régebben futó sorok visszaállítása, elcsúszott e-mail-task ütemezések javítása, árva sablonok és törölt céges sorok takarítása. Jelenti a 3 kísérlet után halott sorokat, a 6 óránál régebben várakozókat és az ismeretlen job-típusokat. Válasz: javított és nyitott tételek száma. A szolgáltatás-könyvtár maga ír SQL-t. A tábla hiánya: error_health_schema.

Hibák

error_job_type, error_target, error_object, error_object_no_company, error_duplicate_template, error_mail_template, error_save_not_created, error_next_run.

Jogosultság

KulcsBesorolásVégpontok
listbesorolás nélküllista, cég-választó
addnincs katalógus-sor, ezért az edit döntmentés új sorral (canSave)
editnincs a seedekbenform, runnow, enable, disable, levél-opciók
deletenincs a seedekbendelete; stop és stopselected delete vagy edit joggal
statusdeleteBASEa seed felveszi, de nincs végpontja; működés nem állapítható meg
healthcsak a jogosultsági bemenetbenöngyógyítás
debugnincs a seedekbenlista-SQL

Tartalmi hatókör: a lista a filter_allowed_ids szerint szűr; az írási végpontok idsInScope és scheduleInScope szerint; a rendszer-szintű sort nem fő rendszergazda nem kezelheti.

Kapcsolódó témák: ütemezés háttérfeladat tartalmi jog