Přístup k některým nastavením

Upravit obsah stránky

Někdy je třeba mít v rámci šablony přístup k zadaným proměnným (tj. k hodnotám dodatečných zadání) použítých v dotazu, jehož výsledky šablona připravuje. Přístup k těmto a některým dalším je možný díky struktuře podkladového XML:
 <sql-query-result> 
 <result type="typ_dokumentu"> 
 <row pdk="123" vtype="" E10000123="" E10000456="..." /> 
 </result> 
 <variables> 
 <variable d-type="date" value="'2011-05-31'" dropdown="" name="var_1001" label="Datum vytvoření ( = )" init="'2011-05-31'"/> 
 </variables> 
 <view type="users" filter="" choosing="true" create-head="false" no-sorting="true" no-of-displayed="20"> 
 <sorting> 
 <xsl:sort data-type="text" order="ascending" select="@E10000123" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"/> 
 </sorting> 
 <sumary>...</sumary> 
 <subtotals>...</subtotals> 

 </view> 
 </sql-query-result> 
V tomto XML jsou samozřejmě především data, na které se šablona aplikuje - tedy potomek result s typem dokumentu, na kterém je přehled založen. Pokud je v rámci dalších nastavení u skládaného přehledu nastaven uživatelský vzhled a zároveň volba "netřídit", pak se jednotlivá data pomocných tabulek neskládají do tabulky hlavní, ale zůstávají v samostatných uzlech result, jež mají atribut type obsahující prefix "t-" následovaný číslem pomocné tabulky (toto číslo naleznete v závorce za položkou v seznamu pomocných tabulek v bodu B) nastavení přehledu). Dalším potomkem je právě uzel variables obsahující seznam proměnných, tedy seznam prázdných uzlů variable s atributy. Atributy mají následující význam:
bullet

d-type - určuje základní datový typ proměnné dle definovaných datových typů - zde je vždy uvedeno pouze základní slovo skládající se ze 4 znaků; v příkladu je uveden typ pro datum;

bullet

value - hodnota aktuálního zadání uživatelem; v příkladu je uvedeno zadání data, které je v atributu vždy naformátováno YYYY-MM-DD; čísla a bool hodnoty nejsou uváděny v apostrofech, jako texty, data a časy; desetiná čísla jsou uváděny s tečkou, nikoli čárkou a to bez oddělovačů tisíců; logické hodnoty ano/ne (bool) jsou uváděny ve formě 1/0, která odpovídá použití v SQL serveru;

bullet

dropdown - pokud jde o výběrovou kolonku, je zde uvedeno identifikační jméno použitého výběru tak, jak je definováno v tagu select v definici výběrové kolonky;

bullet

name - jednoznačné jméno v seznamu proměnných generované při nastavování přehledu; není před nastavením přehledu známo;

bullet

label - název proměnné zadávaný uživatelem v nastaveních přehledů u kolonky dodatečného zadání;

bullet

init - příp. výchozí hodnota dodatečného zadání, která je dána nastavením dodatečného zadání v přehledu;

Dalším uzlem v podkladovém XML je uzel s nastaveními zobrazení pod názvem view. Tento má jednak atributy a jednak také potomky. Atributy mají následující význam:
bullet

type - obsahuje jedno z klíčových slov users, items nebo specl, které říká, zda jde o běžný přehled, přehled s uživatelskou šablonou či přehled speciální;

bullet

filter - obsahuje uživatelovo zadání univerzálního textového filtru v hlavičce přehledu;

bullet

choosing - obsahuje volbu, zda mají být v přehledu prováděny výběry (viz. další nastavení přehledů);

bullet

create-head - obsahuje volbu, zda má být tvořena standardní hlavička (viz. další nastavení přehledů);

bullet

no-sorting - zpřístupňuje nastavení "netřídit" - true/false v uživatelském vzhledu (viz. další nastavení přehledů);

bullet

no-of-displayed - říká, kolik by na jedné listovací stránce mělo být zobrazováno položek;

Vedle atributů jsou v tagu view ještě dostupné následující uzly jako přímí potomci:
bullet

sorting - obshuje aktuální XSL instrukci o řazení v přehledu, jejíž obsah je řídící využitelný i v uživatelských vzhledech; zde se promítá i aktuální kliknutí uživatgele na hlavičku přehledu, je-li tvořena;

bullet

sumary - pokud tento tag sumary obsahuje potomky, pak jsou vyžadovány sumáře za celý přehled (obsahem je právě jejich (x)html);

bullet

subtotals - pokud tento tag subtotals obsahuje potomky, pak jsou vyžadovány mezisoučty za skupinu (obsahem je právě jejich (x)html);

Dle těchto obsahů je pak možno v okrajových případech zajistit repsektování aktuálních voleb uživatele v konkrétním přehledu, kde je uživatelský vzhled použit. Praxí však je, že většinu těchto rysů má uživatelský vzhled pevně dánu svým charakterem, pro nějž byl navržen.