Parametrické dotazy

Nahoru  Předchozí  Další

Parametrické dotazy jsou speciální dotazy, které před spuštěním zobrazí předdefinovaný filtrační formulář. Po vyplnění filtrační podmínky se zobrazí výsledek dotazu. Tento typ dotazu je tedy uživatelsky přívětivější a jeho používání ze strany uživatele nepotřebuje žádné speciální dovednosti (na rozdíl od jeho vytvoření).

 

Vlastní parametrické dotazy

Poznámka: Tato funkce programu DENTIST+ určená pro velmi pokročilé uživatele a psaní vlastních dotazů vyžaduje znalosti nejen znalosti SQL, ale i kombinaci XML a pseudojazyka pro vytvoření generického filtračního formuláře.

 

Ukázka

Tento dotaz před spuštěním zobrazí formulář pro výběr data. Výsledkem je seznam pacientů, kteří mají v daný datum narozeniny. V menu Služby > Dotazy klikněte na ikonu +_m a zkopírujte tento dotaz. Spuštění dotazu provedete ikonou run nebo klávesou F5. Tento dotaz si můžete uložit do seznamu dotazů a pro příští použití.

 

Dotaz:

/*

<prompt caption="Narozeniny" text="Vyberte datum narozenin (rok se ignoruje)." />

<param name="@nar" type="datetime" text="Datum" default="{Today}" />

*/

declare @mesic int

select @mesic = DATEPART(MONTH, @nar)

 

declare @den int

select @den = DATEPART(DAY, @nar)

 

SELECT

 Titul,

 Priezvisko + ' ' + Meno as 'Příjmení Jméno',        

 DatumNarodenia as 'Datum narození',

 STUFF(

                 (SELECT ',' + Kontakt

                         FROM TKontakt

                         WHERE

                                 Kod_CDruhKontaktu = 'Mobil' AND

                                 GUID_Owner = TOsoba.GUID

                         FOR XML PATH ('')

                 ), 1, 1, ''

         ) as 'Mobil'

FROM TOsoba

WHERE

 DATEPART(MONTH, datumNarodenia) = @mesic AND

 DATEPART(DAY, datumNarodenia) = @den