Custom scripty

Top  Previous  Next

Custom skripty jsou uživatelem psané skripty, které umožňují definovaní vlastních formulářů pro editaci či přidání záznamu, gridu pro výpis záznamů nebo akcí před/po přidání, aktualizací či smazání záznamů. Máte k dispozici vše, co Kevis nabízí - funkce na práci se záznamy či informace o přihlášeném uživateli a jeho přístupových právech - a vlastním PHP skriptem můžete customizovat, co je potřeba a co Kevis vzhledem ke své obecnosti neumožňuje. Snadno tak změníte grafickou podobu formuáře, přidáte Javascript na kontrolu odesílaného formuláře nebo po odeslání zavoláte uloženou proceduru či dopočítáte některou z položek.

 

Je nutné nejprve skripty vytvořit (znalost HTML a PHP je podmínkou) a následně je fyzicky zkopírovat do podadresáře ./usr/custom/. Poté je možné custom skripty přiřadit k tabulce při jejím přidávání nebo editaci (viz Přidání tabulky). Je možno přiřadit maximálně jeden skript pro každou z šesti akcí (výpis záznamů, editace záznamu formulář/akce, přidání záznamu formulář/akce, smazání záznamu). Po přiřazení bude v uživatelské části (ve výpisu, editaci nebo přidání záznamu v dané tabulce) přidáno tlačítko umožňující přepnutí na příslušný custom skript. Pokud je custom skript k tabulce přiřazený, bude vždy zvolen přednostně; na standardní skript Kevisu bude možné kdykoliv přepnout, pokud to není taktéž v administraci tabulky checkboxem zakázáno.

 

Nemá cenu psát sáhodlouhý postup vytváření custom skriptů, které se navíc mohou každých několik let lehce měnit v závislosti na rozvoji KEVISu. Přesto bych rád upřesnil princip jejich nejčastějšího používání.

Custom skripty pro formuláře (add, edit)

Obvykle se použije část KEVISovského skriptu pro přidání či editaci záznamu a modifikuje se některá z položek. Typickým případem je (ne)zobrazení nějaké položky ve formuláři na základě komplikované podmínky, která zahrnuje třeba přihlášeného uživatele.

Custom skripty pro databázové akce (insert, update, delete)

Nejjednodušší a nejtypičtější používání. Je třeba přenastavit nebo vypočítat hodnotu některého sloupečku. PHP skript obvykle obsahuje pouze práci s polem $params["values"], ve kterém přicházejí data z formuláře. Další možné využití je zavolání nějaké uložení procedury. Fantazii se meze nekladou.

Custom skripty pro crony

Do adresáře /usr/cron/ lze nakopírovat PHP skripty, které využívají funkce KEVISu a lze je spouštět jako naplánované úlohy. Skript pro jednoduchou kontrolu dat či odeslání notifikačního emailu pak je zprovozněný obvykle během pár hodin. Lze takto spouštět i některé z interních funkcí KEVISu, např. replikaci z EOSu nebo import dat z aplikací třetích stran. Několik ukázkových skriptů je součástí instalace KEVISu.

Custom skripty pro RTF sestavy

Další novinkou v KEVIS 5 je možnost vlastního zpracování RTF šablony. Je-li vyplněno přemapování ve webové konfiguraci (direktiva CFG_CUSTOM_RTF), lze RTF šablonu místo kevisovského skriptu zpracovávat vlastním skriptem, který je umístěn (stejně jako většina ostatních custom skriptů) v adresáři /usr/custom/. Příchozím parametrem je pak obvykle $params["SYS_Klic"] - klíč exportovaného záznamu, s jehož pomocí lze načíst data včetně třeba i komplikovaných joinů.

Custom skripty pro běžné akce KEVISu

Nedoporučovanou, avšak možnou záležitostí je varianta nahrazení jakékoliv sekce KEVISu vlastním skriptem. Toto je třeba provádět pouze ve spolupráci s autory, aby nedošlo k ohrožení dat. Nastavení funguje tak, že se vezme příslušný skript KEVISu z adresáře inc/ a zkopíruje se do adresáře /usr/custom/inc/, kde se pak může dál libovolně upravovat. Nic dalšího není třeba nastavovat.