1. Funkce pro data

    Article: AN0002149Updated:
    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.

     

×