Obsah
Úvod
Nastavení dotazů
Tabulka MainItems
Tabulka Stat1
Tabulka Stat2
Tabulka Stat3
Tabulka TreeItems
Tabulky GridDataPer...
Úvod
Kompletní
nastavení Dashboardu je k
dispozici v
Evoliu:
- menu Nastavení -> Kompletní
nastavení karet.
Tam můžete najít
karty pojmenované
Dashboard (v databázi jde
o tabulky začínající
zKarta… a tabulku
zDotazySQL). Každá karta
musí mít jedinečné
pojmenování, např.
Dashboard1. Počet karet
Dashboardu není omezen,
tzn. můžete přidávat nové
- projeví se v číselníku
vlevo nahoře (nyní
pojmenovaný jako
Oblast.
Obsah Dashboardů
je zcela v rukách Vaší
fantazie - obecně existují
čtyři základní
pohledy:
- Analýza dle ročníků spisů
- Analýza dle oprávněných
- Analýza dle zaměstnanců
- Analýza financí úřadu
Nedejte se
uvedeným výčtem omezovat -
Dashboard může zobrazovat
i zcela specifické věci,
např. vytížení serveru,
analýzu lustrací, dražby
apod.
Nastavení dotazů
- Nastavení dotazů je nejdůležitější
součástí nastavení.
- Vždy platí, že dotazy musí mít pevný
počet sloupců a jejich názvy ani
pořadí se nesmí měnit.
- Každá sekce Dashboardu má svůj/svoje
dotazy.
Tabulka MainItems
- Slouží pro zobrazení hlavního seznamu
pojmenovaného jako Oblast.
- Povinné sloupce:
- Name - jméno položky
- ID - ID položky (používá se
pro filtraci v podřízených
dotazech)
- Caption - Popisek
- Region - je umístěn jako
zaškrtávací box nad seznamem
položek, nesmí jich být
moc
- Picture - název obrázku, který
se má zobrazit ve čtverečku
položky (nutné správné
nastavení webserveru a složky
s obrázky)
- Name - jméno položky
- Příklad:
SELECT'20' + RIGHT(číslo_smlouvy, 2) AS Name,'20' + RIGHT(číslo_smlouvy, 2) AS ID,'Počet spisů: ' + Cast(Count(*) as nvarchar(20)) AS Caption,'CZ' AS Region,'AVESoft_logo_117' AS PictureFROM SmlouvyProduktWHERE (PRODUKT = 'Exekucni_spis') AND (Číslo_smlouvy IS NOT NULL)GROUP BY '20' + RIGHT(číslo_smlouvy, 2), 'Ročník 20' + RIGHT(číslo_smlouvy, 2)ORDER BY Name
Tabulka Stat1
- Slouží pro zobrazení první statistiky
- koláčového grafu.
- Povinné sloupce:
- Name - jméno položky
- Total - počet jednotek -
slouží jako hodnota pro
koláčový graf
- Name - jméno položky
- Příklad: POZOR!!! V dotazu musí být v
podmínce
parametr @P0,
který se odkazuje na nadřazenou
položku ID (pokud na parametr
zapomenete, nebude se koláčový graf
měnit)
SELECTIsNull(IsNull((SELECT PoleText1FROM zCiselnikSysWHERE (TypCiselniku = 'ExekucniSpis') AND (NazevCiselniku = 'Stav') AND (HodnotaTxt = exStav)), exStav),'<nezadáno>') as Name,Count(*) AS TotalFROM SmlouvyProduktWHERE (PRODUKT = 'Exekucni_spis') AND ('20' + RIGHT(číslo_smlouvy, 2))=@P0GROUP BY exStavORDER BY 1
Tabulka Stat2
- Slouží pro zobrazení druhé statistiky
- grafu vývoje v čase.
- Povinné sloupce:
- Year - rok
- Month - měsíc
- Total - první číselná řada -
obvykle větší hodnoty (např.
všechny přijaté platby v daném
měsíci)
- TotalItem - druhá číselná řada
- obvykle menší hodnoty (např.
přijaté platby od oprávněného
v daném měsíci)
- Year - rok
- Příklad: POZOR!!! V dotazu musí být v
podmínce
parametr @P0,
který se odkazuje na nadřazenou
položku ID (pokud na parametr
zapomenete, nebude se koláčový graf
měnit)
SELECTPrichozi.Year,Prichozi.Month,Prichozi.SumaPrichozi as Total,Odchozi.SumaOdchozi as TotalItemFROM(SELECT YEAR(fplDatumPlatby) AS Year, MONTH(fplDatumPlatby) AS Month, SUM(fplCastka) AS SumaPrichoziFROM FinancePlatbyWHERE (CAST(YEAR(fplDatumPlatby) AS nvarchar(5)) = @P0)GROUP BY YEAR(fplDatumPlatby), MONTH(fplDatumPlatby)) AS Prichozi INNER JOIN(SELECT YEAR(DatumSplatnosti) AS Year, MONTH(DatumSplatnosti) AS Month, SUM(CastkaCelkova) AS SumaOdchoziFROM FinancePlatbaOdchoziWHERE (CAST(YEAR(DatumSplatnosti) AS nvarchar(5)) = @P0)GROUP BY YEAR(DatumSplatnosti), MONTH(DatumSplatnosti)) AS Odchozi ON Prichozi.Year = Odchozi.Year AND Prichozi.Month = Odchozi.Month
Tabulka Stat3
- Slouží pro zobrazení třetí statistiky
- budíkového ukazatele (v některé z
budoucích verzí bude nahrazen jiným
typem grafu).
- Povinné sloupce:
- Total - obvykle větší hodnota
(např. počet všech
spisů)
- TotalItem - obvykle menší
hodnota (např. počet spisů od
oprávněného)
- Total - obvykle větší hodnota
(např. počet všech
spisů)
- Příklad: POZOR!!! V dotazu musí být v
podmínce
parametr @P0,
který se odkazuje na nadřazenou
položku ID (pokud na parametr
zapomenete, nebude se koláčový graf
měnit)
SELECTCount(*) AS Total,Sum(CASE WHEN ('20' + RIGHT(číslo_smlouvy, 2)) = @P0 THEN 1 ELSE 0 END) as TotalItemFROM SmlouvyProduktWHERE (PRODUKT = 'Exekucni_spis')
Tabulka TreeItems
- Slouží pro zobrazení stromu položek
vlevo dole
- Toto stromové zobrazení umožňuje
zobrazovat upřesňující informace
- Strom je vždy tvořen dvěma úrovněmi -
kategoriemi a podřízenými
položkami
- Povinné sloupce:
- Category - název kategorie,
která tvoří hlavní uzly
stromu
- CategoryID - ID kategorie,
která tvoří hlavní uzly
stromu
- ID - ID položky, která tvoří
první úroveň zanoření stromu
(je zobrazena pod svou
kategorií)
- Name - název položky, která
tvoří první úroveň zanoření
stromu
- Category - název kategorie,
která tvoří hlavní uzly
stromu
- Příklad: POZOR!!! V dotazu musí být v
podmínce
parametr @P0,
který se odkazuje na nadřazenou
položku ID (pokud na parametr
zapomenete, nebude se koláčový graf
měnit)
SELECTexZodpovida AS Category,exZodpovida AS CategoryID,IsNull(exStav,'<nezadáno>') as ID,IsNull(IsNull((SELECT PoleText1FROM zCiselnikSysWHERE (TypCiselniku = 'ExekucniSpis') AND (NazevCiselniku = 'Stav') AND (HodnotaTxt = exStav)), exStav),'<nezadáno>') + ' (' + cast(count(*) as nvarchar(20)) + ')' AS NameFROM SmlouvyProduktWHERE (PRODUKT = 'Exekucni_spis') AND exZodpovida is not null AND ('20' + RIGHT(číslo_smlouvy, 2)) = @P0GROUP BY exZodpovida, exStavORDER BY 1,2
Tabulky GridDataPer...
- Slouží pro zobrazení dat v tabulce
(gridu) vlevo dole
- Tento grid slouží jako malá Knihovna
filtrů
- Povinné sloupce nejsou, doporučujeme
omezit je na 5 až 7, aby zůstala
zachována přehlednost
- Zobrazení dat v grigu je interaktivní - záleží na tom, jakou položku uživatel označí:
- Oblast - výběrem hlavní
položky Dashboardu se spustí
dotaz GridDataPerMainItem s
parametrem @P0 (ID
hlavní položky)
- Oblast - výběrem hlavního uzlu
stromu (kategorie) se spustí
dotaz GridDataPerCategory s
parametrem @P0 (ID
hlavní položky)
a @P1 (ID
kategorie)
- Oblast - výběrem podřízeného
uzlu stromu se spustí
dotaz GridDataPerTreeItem s
parametrem @P0 (ID
hlavní
položky), @P1 (ID
kategorie)
a @P2 (ID
položky stromu)
- Oblast - výběrem hlavní
položky Dashboardu se spustí
dotaz GridDataPerMainItem s
parametrem @P0 (ID
hlavní položky)
- POZOR!!! Každý dotaz může zobrazovat
zcela jiné data - pro kategorii to
může být statistika, ale pro
podřízenou položku stromu např.
jmenovitý seznam spisů
- Příklad:
SELECT TOP 500číslo_smlouvy as Spis,Round((FinancePrehled.fsmOprJistina_Narok),0) AS Jistina,Round((FinancePrehled.fsmOprNakladySR_Narok + FinancePrehled.fsmOprNakladyExOpr_Narok),0) AS Nákl. nalézacího řízení,Round((FinancePrehled.fsmOprUroky_Narok + FinancePrehled.fsmOprPoplatekProd_Narok + FinancePrehled.fsmOprUrokyProd_Narok + FinancePrehled.fsmOprSmlPokuta_Narok),0) AS Úroky a spol.,Round((FinancePrehled.fsmOprCelkem_Narok),0) AS Celkem pohledávka,Round((FinancePrehled.fsmOprCelkem_Uhrazeno),0) AS Plnění vymožené,Round((FinancePrehled.fsmOprCelkem_PrevNaUcet),0) AS Plnění vyplacené opr.,Round((FinancePrehled.fsmOprCelkem_ZustavaPrevest),0) AS Plnění nevyplacenéFROM SmlouvyProdukt INNER JOIN FinancePrehled ON FinancePrehled.fsID = SmlouvyProdukt.IDWHERE (PRODUKT = 'Exekucni_spis') AND ('20' + RIGHT(číslo_smlouvy, 2))=@P0 AND exZodpovida = @P1 AND IsNull(exStav,'<nezadáno>') = @P2ORDER BY 1,2