Specifikace podmínky pro zdroj dat source-filter
Nastavuje omezení použitelných zdrojových instancí při jejich výběru ve formuláři dokumentu.
{logical-expression}
Účelem toto atributu je usnadnění nebo zabezpečení správného výběru zdrojové instance dokumentu v právě používaném výběrovém uzlu v instanci editovaného dokumentu. Vlastnost source-filter má účinnost, pouze s atributy source, kde je uvedeno klíčové slovo foreign, lexicon nebo initial. Do atributu source-filter se zadává textový řetězec s logickým výrazem, který má za úkol roztřídit zdrojové dokumenty.
Pokud bychom například v kontaktech (dokument kontakt) měli v oblasti ostatni zaškrtávající pole, zda tento kontakt je naším klientem (je_klientem). Tento údaj bychom "vyvedli" do služby inicialy a my bychom v našem systému flexideo vytvářeli faktury, pak bychom na faktuře mohli mít oblast klient. Tato oblast by využívala služby inicialy dokumentu kontakt. Abychom obsluze usnadnili výběr (a zabezpečili, že bude fakturováno pouze klientům), zvolíme pro oblast klienta na faktuře následující definici vstupního filtru:
source-filter="::/inicialy/jeklientem == true"
Definice celé oblasti na faktuře by pak vypadala následovně:
<area name="klient" source="foreign:kontakt:/inicialy" source-filter="::/jeklientem == true">
<element name="nazev"/>
<area name="fakturacni_adresa"/>
<element name="ic"/>
<element name="dic"/>
</area>
Obsluha pak při vystavování faktury bude mít možnost výběru pouze z klientů a ostatní kontakty jí zůstanou skryty.
Zásady pro vytváření filtru
Vzhledem k tomu, že se jedná o využití SQL jazyka pro dotazování, do kterého se výrazy filtru překládají, je třeba využívat pouze funkce, které tento jazyk podporuje, pokud jejími argumenty (přímými či vnořenými) je odkaz do cizího, filtrovaného dokumentu. Pokud argumenty přebírají pouze hodnoty, nebo odkazy do místního dokumentu, které jsou v momentu dotazu převedeny na konkrétní hodnoty dokumentu z nějž se dotazujete, mohou být využity všechny funkce označené kategorií script (dostupné funkce a jejich kategorie viz. příloha "Přehled použitelných funkcí").
Více o zápisech source-filter naleznete také v popisu výrazů pro filtry.
Potenciální vlastnické uzly
Vlastnost source-filter je možné uvést u následujících uzlů:
element - prvek (segment uvnitř definice);
area - oblast (segment uvnitř definice);
Vlastnost source-filter
Nastavuje omezení použitelných zdrojových instancí při jejich výběru ve formuláři dokumentu.
{logical-expression}