Verschillen
Dit geeft de verschillen weer tussen de geselecteerde revisie en de huidige revisie van de pagina.
Beide kanten vorige revisie Vorige revisie Volgende revisie | Vorige revisie | ||
openwave:1.32:applicatiebeheer:instellen_inrichten:grafieken [2024/11/26 06:07] – verwijderd - Externe bewerking (Ongeldige datum) 127.0.0.1 | openwave:1.32:applicatiebeheer:instellen_inrichten:grafieken [2024/12/11 14:05] (huidige) – Kars Gottschal | ||
---|---|---|---|
Regel 1: | Regel 1: | ||
+ | ===== Grafieken ===== | ||
+ | {{tag> | ||
+ | OpenWave heeft de open source library charts.js geïmporteerd, | ||
+ | |||
+ | Dit kan vooralsnog alleen op een tegel. \\ | ||
+ | In plaats van een tegel live te vullen met tekst op basis van een query (zie getTileContent op [[openwave: | ||
+ | |||
+ | De uitkomst van die query moet een JSON-string zijn met daarin opgenomen labels en metadata en data van het diagram, zoals de charts.js library deze voorschrijft. Zie https:// | ||
+ | |||
+ | ==== Staafdiagram over alle zaken==== | ||
+ | <adm example Aantallen zaken per jaar> | ||
+ | {{openwave: | ||
+ | |||
+ | Bovenstaande tegel toont de aantallen zaken van de afgelopen 4 jaar in een staafdiagram.\\ | ||
+ | Daartoe moet: | ||
+ | * de tegelcontent verwijzen naar getflexChart() met een querynaam als parameter | ||
+ | * en moet een passende query gedefinieerd worden onder deze querynaam. | ||
+ | |||
+ | **getFlexChart()**\\ | ||
+ | Op het detailscherm van de tegeldefinitie (beheerportaal: | ||
+ | De functie getFlexChart evalueert de query en geeft het resultaat met het gewenste diagramtype door aan de chart.js, die de informatie rendert naar een diagram.\\ | ||
+ | De diagramsoort kan zijn: pie, bar, of line. In bovenstaand voorbeeld is dat bar.\\ | ||
+ | Dus de waarde van de kolom dvgettilecontent in de tegeldefinitie van bovenstaand voorbeeld is // | ||
+ | |||
+ | **query**\\ | ||
+ | De char.js library verwacht een JSON-string met daarin metadata (zoals labels en kleuren) en data (aantallen). Bij een bar (staafdiagram) ziet zo'n JSON-string er (naar bovenstaand voorbeeld) zo uit: | ||
+ | <code sql> | ||
+ | |||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }] | ||
+ | } | ||
+ | </ | ||
+ | De uitkomst van de query moet dus bovenstaande string opleveren waarbij de labels berekend moeten worden (de laatste 4 jaar) en waarbij per jaar de aantallen zaken (de data) opgehaald moeten worden uit de database. | ||
+ | <code sql> | ||
+ | select '{ | ||
+ | " | ||
+ | | ||
+ | extract(' | ||
+ | extract(' | ||
+ | || '], | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | || '] | ||
+ | }] | ||
+ | | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ==== Taartdiagram over openstaande omgevingzaken==== | ||
+ | <adm example Verdeling openstaande zaken over zaaktypes > | ||
+ | {{openwave: | ||
+ | |||
+ | Bovenstaande tegel toont de de verdeling van de openstaande omgevingzaken per soort (dvsoortproc van tbsoortomgzaak).\\ | ||
+ | Daartoe moet: | ||
+ | * de tegelcontent verwijzen naar getflexChart() | ||
+ | * en moet een passende query gedefinieerd worden. | ||
+ | |||
+ | **getFlexChart()**\\ | ||
+ | De waarde van de kolom dvgettilecontent in bovenstaand voorbeeld is // | ||
+ | |||
+ | **query**\\ | ||
+ | De char.js library verwacht een JSON-string met daarin metadata (zoals labels en kleuren) en data (aantallen). Bij een pie (taart-diagram) ziet zo'n JSON-string er (naar bovenstaand voorbeeld) zo uit (lijkt eigenlijk erg veel op staafdiagram, | ||
+ | Vanwege de beperking in de breedte van de tegel zijn in bovenstaand voorbeeld de labelnamen afgekort. \\ | ||
+ | <code sql> | ||
+ | { | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | }] | ||
+ | } | ||
+ | </ | ||
+ | De uitkomst van de query moet dus bovenstaande string opleveren waarbij de aantallen zaken (de data) opgehaald moeten worden uit tbomgvergunning verzameld op | ||
+ | * Verzk (verzoeken): | ||
+ | * Tzcht (toezicht): (tbsoortomgverg.dvsoortproc = C of T of H) | ||
+ | * Klcht (klacht): (tbsoortomgverg.dvsoortproc = K) | ||
+ | * Mldng (melding): (tbsoortomgverg.dvsoortproc = M) | ||
+ | * Cncpt (conceptverzoek/ | ||
+ | * Overig: (tbsoortomgverg.dvsoortproc is ongelijk aan bovenstaande) | ||
+ | <code sql> | ||
+ | select '{ | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | (select count(*) from tbomgvergunning a inner join tbsoortomgverg b on (a.dnkeysoortomgverg = b.dnkey) | ||
+ | (select count(*) from tbomgvergunning a inner join tbsoortomgverg b on (a.dnkeysoortomgverg = b.dnkey) | ||
+ | (select count(*) from tbomgvergunning a inner join tbsoortomgverg b on (a.dnkeysoortomgverg = b.dnkey) | ||
+ | (select count(*) from tbomgvergunning a inner join tbsoortomgverg b on (a.dnkeysoortomgverg = b.dnkey) | ||
+ | (select count(*) from tbomgvergunning a inner join tbsoortomgverg b on (a.dnkeysoortomgverg = b.dnkey) | ||
+ | (select count(*) from tbomgvergunning a inner join tbsoortomgverg b on (a.dnkeysoortomgverg = b.dnkey) | ||
+ | }] | ||
+ | | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | In bovenstaande voorbeelden zijn de diagrammen toegevoegd op bestaande tegels van het openingsportaal. Dat kan, maar kost natuurlijk ook tijd. Een alternatief is een apart portaal te maken met tegels die diagrammen laten zien. | ||
+ | |||
+ | ==== Staafdiagram over één zaak==== | ||
+ | <adm example staafdiagram aantallen openstaande taken binnen één zaak> | ||
+ | Op een tegel in het zaakportaal kan voor één zaak ook informatie in een diagram worden weergegeven.\\ | ||
+ | {{openwave: | ||
+ | |||
+ | **getFlexChart()**\\ | ||
+ | De waarde van de kolom dvgettilecontent is // | ||
+ | |||
+ | **query**\\ | ||
+ | De query levert een JSON-string met de aantallen openstaande adviezen (Ad), Openstaande processtappen (Pr), Openstaande collegiale toetsen (CT) en uitgaande maar nog niet verstuurde brieven (TV). | ||
+ | |||
+ | <code sql> | ||
+ | Select '{ | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | ], | ||
+ | " | ||
+ | " | ||
+ | " | ||
+ | || ',' | ||
+ | || ',' | ||
+ | || ',' | ||
+ | || '] | ||
+ | }] | ||
+ | | ||
+ | </ | ||
+ | </ |