Název funkce a parametry |
Popis funkce |
IsDeletedRecord() |
Funkce vrací True, pokud je záznam smazaný. (Návratovou hodnotou je datový typ boolean.)
Příklad:
Column('order') >= 10 && (!IsDeletedRecord())
Uvedený výraz nabývá hodnoty True, pokud ve sloupci order je hodnota, která se rovná nebo je vyšší než 10, a zároveň se nejedná o smazaný záznam. |
IsNewRecord() |
Funkce vrací True, pokud je jde o nový záznam (ještě nebyl uložen). (Návratovou hodnotou je datový typ boolean.) |
IsOverRelationCount('classlink', only_active_records, max_number)
IsOverRelationCount('classlink', only_active_records, 'column_with_max_number') |
Funkce řeší kardinalitu relací.
Funkce se používá v kontextu určité třídy – prostřednictvím použití v pravidlech.
Parametr 'classlink' je název třídy, s níž má daná třída relaci, jejíž kardinalitu chceme řešit.
Parametr only_active_records stanoví, zda se mají brát v úvahu pouze aktivní (logicky nesmazané) záznamy nebo všechny záznamy (parametr může nabývat hodnot true/false).
V prvním tvaru funkce obsahuje třetí parametr max_number, který udává max. počet relací (odkazovaných záznamů) dané třídy s třídou v parametru classlink.
Takto lze nastavit jednu hodnotu platnou pro všechny záznamy z třídy classlink.
Ve druhém tvaru funkce obsahuje třetí parametr 'column_with_max_number', který obsahuje název sloupce ze třídy v parametru 'classlink', který obsahuje hodnotu s max. počtem relací. Takto lze nastavit individuální hodnotu max. počtu relací pro každý záznam ze třídy classlink zvlášť.
(Návratovou hodnotou je datový typ boolean.) |
GetRelationCount(‘columncode’, only_active) |
Funkce počet odkazů na zadávanou hodnotu ze sloupce dle prvního parametru. Pokud se použije v pravidle aplikovaném před uložením záznamu, bere v úvahu i hodnotu ukládaného záznamu.
Druhý parametr určuje, zda mají být brány v potaz pouze nesmazané záznamy nebo i logicky smazané záznamy.
(Návratovou hodnotou je datový typ integer.) |
IsNull(p1, p2) |
Funkce vrací první parametr, pokud tento parametr není null. Pokud je první parametr null, vrátí druhý parametr:
Příklad:
IsNull(Column('specialvalue'), column('defaultvalue')) |
AddLink(column(’code1’), column(’code2’)) |
Funkce vezme hodnoty ze sloupce dle druhého parametru a vloží do sloupce dle prvního parametru ty, které ještě v tomto sloupci nejsou. Oba sloupce musí být typu odkaz na třídu nebo oba typu odkaz na uživatele. Sloupec dle prvního parametru musí být násobný – odkaz na N záznamů.
Příklad:
AddLink(Column(’teammembers’), column(’manager’))
Funkce přidá uživatele ze sloupce manager mezi uživatele ve sloupci teammembers. Tím je dosaženo to, že manager je vždy považován i za člena týmu. |
Column('code') |
Vrátí hodnotu ze sloupce zadaného kódu. Funkce se používá v kontextu konkrétní třídy a konkrétního záznamu.
Poznámka:
Funkci Column('code') při porovnávání s textovým řetězcem vždy vložte do funkce IsNull(p1, p2) jako parameter p1. V případě, že hodnota ve sloupci code bude Null, bude tak možné porovnání vyhodnotit.
Příklad:
IsNull(Column('code'), ‘XXXX’) = ‘retezec‘ |
Column('code', ‘id’)
Column('code', ‘text’)
Column('code', ‘count’) |
V případě sloupců typu číselníková hodnota použijeme funkci se dvěmi parametry. Pod prvním parametrem uvedeme kód sloupce typu číselníková hodnota. Pod druhým parametrem uvedeme požadovaný typ návratové hodnoty:
id – vrátí Id odkazovaného záznamu (jen pro jednoduché odkazy)
text – vrátí krátký popis odkazovaného záznamu (jen pro jednoduché odkazy)
count – vrátí počet záznamů v odkazu |
ForeignColumn(‘class_code‘,‘column_code‘,record_id) |
Funkce vrací hodnotu třídy daného kódu, sloupce daného kódu a záznamu daného Id.
Funkci je možné použít např. v pravidlech pro řešení kardinality relací (spolu s funkcemi Column a IsOverRelationCount nebo GetRelationCount), kdy počet možných relací na jednotlivé záznamy určité třídy je uveden ve zvláštním sloupci této třídy. |