Publikováno 15. 12. 2015
Dotazy
Dokument popisuje jak vytvořit a najít existující dotazy.
Obsah:
Princip
Dotaz reprezentuje filtr, který předepisuje vlastnosti, které musí splňovat hledané příspěvky, aby byly nalezeny. Hledat dotazem lze tedy pouze příspěvky.
Dotaz může být parametrizován a vracet různá data na základě kontextu, ve kterém je spuštěn:
-
Je-li ve složce, může být parametrizován údaji uživatele, který jej spouští.
-
Je-li použit v příspěvku, může být parametrizován daty tohoto příspěvku.
V případě dotazu, který je použit složkou dále platí, že:
-
Dotaz může obsahovat i předpis toho, jak mají být uživateli data publikována, jestliže na složku klikne.
-
Dotaz může využívat i formulář, který se v případě kliknutí na složku zobrazí a umožní dodavateli vložit ručně nějaké parametry, které se pro
spuštění dotazu využijí.
-
Výsledek dotazu, byl-li již uživatelem proveden, je automaticky aktualizován a obsahuje změny, které provádí jiní uživatelé.
Vytváření nového dotazu
V galerii Nový příspěvek v pásu karet na záložce Pracoviště klikněte na ikonu Dotaz.
Zobrazí se následující formulář.
Význam kolonek
Jedinečné jméno
Nepřekládané, jedinečné v rámci týmu a dotazů.
Překládané jméno
Uživatelský název příspěvku.
Definice
Obsahuje xml, které definuje zejména:
-
nuggetTypes – Obsahuje jeden či více id typů příspěvků (šablony), kterého mají být hledané příspěvky.
-
attributes – Popisuje způsob, jak mají být nalezeny atributy, zobrazené u vyhovujících příspěvků. Možnosti jsou:
-
* - všechny,
-
onlyDefined,
-
simple.
-
sqlVariables – Inicializace dotazu. Zde mohou být různé výpočty, definice proměnných apod., které dotaz následně použije.
-
sql – Vlastní dotaz. Dotaz může používat proměnnou @nug_id, která obsahuje id příspěvku primárního kontextu, je-li dotaz použit ve formuláři.
-
presentation – Obsahuje xaml předpis typu kontrolu, který může vizualizovat data v případě, že je dotaz použit například ve složce publikující data
v pravém horním rámečku.
-
sqlParameters – Parametry. Používá se pouze v případě, že je dotaz použit v kontextu typu formuláře. Parametr získává svoji hodnotu z kolonky
formuláře respektive z atributu, který kolonka používá.
Formulář s parametry
[DOPSAT]
Pouze s úkolem
Typ přiřazení (přímo, skupinový, zástup) nehraje roli.
Jak psát dotazy
Obrázek databázového schématu.
Význam tabulek je:
-
Nuggets – Centrální tabulka příspěvků. Každý příspěvek je zde.
-
Values_nuget_keys – Cizí klič příspěvku.
Příklady
select
*
from
nuggets
where
nug_typ_id = 100695
and deleted = 0
<query version="1" type="sql">
<nuggetTypes>
<nuggetTypeId value="100698" />
</nuggetTypes>
<attributes value="*" />
<sqlVariables>
-- initialization goes here
</sqlVariables>
<sql>
select * from nuggets where nug_typ_id = 100698 and deleted = 0
</sql>
<sqlParameters />
Publikování dotazu do katalogu rolí, týmů a osob
Publikování dotazu je stejné ve všech třech případech. Detail publikování dotazu naleznete v následujícím odkazu.
[Zde vložit link na dokument Role kapitola formuláře]
Použití dotazu při návrhu formuláře
[DOPSAT]
Hledání dotazů
Pomocí složky Dle typu příspěvku a zvolit XCR – template Query
V pravém horním panelu se zobrazí všechny příspěvky hledaného typu Dotaz.