Verschillen
Dit geeft de verschillen weer tussen de geselecteerde revisie en de huidige revisie van de pagina.
Volgende revisie | Vorige revisie | ||
openwave:1.30:applicatiebeheer:instellen_inrichten:queries [2024/01/08 09:06] – aangemaakt - Externe bewerking 127.0.0.1 | openwave:1.30:applicatiebeheer:instellen_inrichten:queries [2024/06/20 08:53] (huidige) – Ton Pullens | ||
---|---|---|---|
Regel 1: | Regel 1: | ||
====== Queries ====== | ====== Queries ====== | ||
- | + | {{tag> | |
- | Portaal beheerportaal-Nieuw. Tegel queries. | + | Portaal |
Screenidentifiers: | Screenidentifiers: | ||
Regel 8: | Regel 8: | ||
De SQL-statements van deze tabel worden gebruikt: | De SQL-statements van deze tabel worden gebruikt: | ||
- | * om opschriften te genereren voor tegels | + | * om opschriften |
* om bepaalde scherminformatie in detailschermen per blok (on)zichtbaar te maken | * om bepaalde scherminformatie in detailschermen per blok (on)zichtbaar te maken | ||
* om inhoud van schermattributen in detailschermen zoals labels of actions, context-afhankelijk te maken | * om inhoud van schermattributen in detailschermen zoals labels of actions, context-afhankelijk te maken | ||
Regel 45: | Regel 45: | ||
- | OpenWave heeft zelf een aantal functies op de database gedefinieerd - zoals fn_ddmaandjjjj() - die gebruikt kunnen worden in allerlei queries. Zie: [[openwave: | + | OpenWave heeft zelf een aantal functies op de database gedefinieerd - zoals fn_ddmaandjjjj() - die gebruikt kunnen worden in allerlei queries. Zie: [[openwave: |
De query heeft in de kolom dvcode een unieke, maar editbare, identifier, waarmee de query kan worden aangeroepen. | De query heeft in de kolom dvcode een unieke, maar editbare, identifier, waarmee de query kan worden aangeroepen. | ||
Regel 62: | Regel 62: | ||
===== Queries voor tegelopschrift ===== | ===== Queries voor tegelopschrift ===== | ||
- | De aanroep van het SQL-statement vindt plaats via de tegeldefinitie van de tegel waarop het dynamische opschrift moet verschijnen door het vullen van de kolom // | + | De aanroep van het SQL-statement vindt plaats via de tegeldefinitie van de tegel waarop het dynamische opschrift moet verschijnen door het vullen van de kolom // |
+ | Een voorbeeld van een dynamisch tegelopschrift is de waarde // | ||
Die parameter {id} kan gebruikt worden bij tegels op de zaakportals (dus niet bij opening of beheer). Deze wordt vervangen door de primary key van het betreffende zaakportaal (de identifier die opgenomen is in de URL van de portaalpagina). | Die parameter {id} kan gebruikt worden bij tegels op de zaakportals (dus niet bij opening of beheer). Deze wordt vervangen door de primary key van het betreffende zaakportaal (de identifier die opgenomen is in de URL van de portaalpagina). | ||
Regel 89: | Regel 90: | ||
Wanneer een query niet valide SQL-code gebruikt zal het programma - bij gebruik voor tegelopschrift - het resultaat vervangen door ' | Wanneer een query niet valide SQL-code gebruikt zal het programma - bij gebruik voor tegelopschrift - het resultaat vervangen door ' | ||
+ | |||
+ | <adm voorbeeld belang snelheid> | ||
+ | Dynamische tegelkopschriften kunnen het uitschrijven van een portaal behoorlijk vertragen.\\ | ||
+ | |||
+ | De volgende query zal traag zijn | ||
+ | <code sql> | ||
+ | SELECT | ||
+ | ' | ||
+ | where (trim(dvibbcodemw) = trim(: | ||
+ | or trim(dvcodeaccountman) = trim(: | ||
+ | </ | ||
+ | maar onderstaande query geeft eenzelfde soort resultaat, maar dan in een fractie van de tijd | ||
+ | <code sql> | ||
+ | SELECT | ||
+ | CASE | ||
+ | WHEN count(*) < 5 THEN ' | ||
+ | ELSE ' | ||
+ | END opschrift | ||
+ | FROM (select a.dnkey from tbomgvergunning a | ||
+ | inner join tbinbehandelingbij b | ||
+ | on (a.dnkey = b.dnkeyomgvergunningen and b.dlactief = ' | ||
+ | where (trim(b.dvcodemedewerker) = trim(: | ||
+ | and a.ddbesluitdatum is null | ||
+ | and a.ddblokkering is null | ||
+ | and a.ddingetrokken is null | ||
+ | limit 5) as c | ||
+ | </ | ||
+ | |||
+ | In het beheerportaal bij de definitie van de portalen (portalnames) staat (sinds versie 1.30.1) onderaan het detailschem van een portaaldefinitie een knop waarmee de duur van het uitvoeren van de dynamische tegelopschriften voor dat portaal kan worden gemeten. | ||
+ | </ | ||
+ | ===== Queries voor tonen van een diagram als tegelopschrift ===== | ||
+ | Het gaat hierom dat de query een JSON-string genereert die OpenWave via de charts.js library rendert naar een staaf-, lijn- of taartdiagram.\\ | ||
+ | Zie hiervoor [[openwave: | ||
===== Query' | ===== Query' | ||
Regel 102: | Regel 136: | ||
</ | </ | ||
- | Zie [[openwave: | + | Zie [[openwave: |
In de tags van een blok van een detailscherm kan (hoeft dus niet) de tag < | In de tags van een blok van een detailscherm kan (hoeft dus niet) de tag < | ||
Regel 113: | Regel 147: | ||
</ | </ | ||
- | Indien wordt verwezen naar een niet bestaande query of het element is leeg of indien error bij evaluatie of uitkomst is <> 1 dan beschouwt het programma de uitkomst van de query als 0 (het blok is wel zichtbaar). | + | Indien wordt verwezen naar een niet bestaande query of het element is leeg of indien error bij evaluatie of uitkomst is <> 1 dan beschouwt het programma de uitkomst van de query als 0 (het blok is wel zichtbaar). |
Indien in de aangeroepen query gebruik wordt gemaakt van de variabele {id} dan moet een tweede parameter worden toegevoegd aan de functie query() bestaande uit de string %keypointer%. Zie voorbeeld hieronder bij Query' | Indien in de aangeroepen query gebruik wordt gemaakt van de variabele {id} dan moet een tweede parameter worden toegevoegd aan de functie query() bestaande uit de string %keypointer%. Zie voorbeeld hieronder bij Query' | ||
Regel 131: | Regel 165: | ||
Indien de contextgevoeligheid is gebaseerd op andere informatie uit de kaart die getoond wordt (de query zal dan bestaan uit select x from y where dnkey = {id}) dan moet een tweede parameter %keypointer% meegegeven worden: | Indien de contextgevoeligheid is gebaseerd op andere informatie uit de kaart die getoond wordt (de query zal dan bestaan uit select x from y where dnkey = {id}) dan moet een tweede parameter %keypointer% meegegeven worden: | ||
- | Zie de voorbeelden hieronder bij [[openwave: | + | Zie de voorbeelden hieronder bij [[openwave: |
==== Visible ==== | ==== Visible ==== | ||
Regel 168: | Regel 202: | ||
==== Action ==== | ==== Action ==== | ||
- | Een action kan in een schermkolomdefinitie worden gekoppeld aan een schermknop. Bijvoorbeeld een knop achter de kolom OLO-nummer in de omgevingsdetailkaart waarmee het OLO-loket met de juiste aanvraag wordt geopend afhankelijk van het OLO-nummer op de kaart: Of een knop die een pdok-kaart opent op basis van de coördinaten van het bijbehorende locatie adres. | + | Een action kan in een schermkolomdefinitie worden gekoppeld aan een schermknop. Bijvoorbeeld een knop achter de kolom OLO-nummer in de omgevingsdetailkaart waarmee het OLO-loket met de juiste aanvraag wordt geopend afhankelijk van het OLO-nummer op de kaart: Of een knop die een PDOK-kaart opent op basis van de coördinaten van het bijbehorende locatie adres. |
Die action is dus contextgevoelig. | Die action is dus contextgevoelig. | ||
Regel 273: | Regel 307: | ||
< | < | ||
- | === Voorbeeld 3 Open een pdok-kaart op basis van een coördinatenpaar === | + | === Voorbeeld 3 Open een PDOK-kaart op basis van een coördinatenpaar === |
De URL van bijvoorbeeld het x, y punt (168875, | De URL van bijvoorbeeld het x, y punt (168875, | ||
Regel 317: | Regel 351: | ||
===== Query' | ===== Query' | ||
- | Zie ook kopje **Invoegen tekstblokken op basis van een query-aanroep naar tbqueries** bij [[openwave: | + | Zie ook kopje **Invoegen tekstblokken op basis van een query-aanroep naar tbqueries** bij [[openwave: |
De query wordt in het documentsjabloon wordt aangeroepen door met de merge-codering//< | De query wordt in het documentsjabloon wordt aangeroepen door met de merge-codering//< | ||
Regel 367: | Regel 401: | ||
Indien soort = ' | Indien soort = ' | ||
- | Zie voor invoegen plaatjes op basis van query onder Kopje: //Invoegen plaatjes op basis van een query-aanroep naar tbqueries die verwijst naar tbimages// bij [[openwave: | + | Zie voor invoegen plaatjes op basis van query onder Kopje: //Invoegen plaatjes op basis van een query-aanroep naar tbqueries die verwijst naar tbimages// bij [[openwave: |
| | ||
===== Query' | ===== Query' | ||
De inhoud van de kolommen van de formqueries en childqueries uit de definitie document- en emailsjablonen (beheer) kan ook bestaan uit een verwijzing naar een query in deze tabel tbqueries.\\ | De inhoud van de kolommen van de formqueries en childqueries uit de definitie document- en emailsjablonen (beheer) kan ook bestaan uit een verwijzing naar een query in deze tabel tbqueries.\\ | ||
Hierdoor hoeft een query die in meerdere sjablonen gebruikt wordt maar eenmalig te worden gedefinieerd. De opmaak van de sjablonen wijzigt hierdoor niet. In tbqueries kan bovendien een select statement ingevoerd worden van onbeperkte grootte.\\ | Hierdoor hoeft een query die in meerdere sjablonen gebruikt wordt maar eenmalig te worden gedefinieerd. De opmaak van de sjablonen wijzigt hierdoor niet. In tbqueries kan bovendien een select statement ingevoerd worden van onbeperkte grootte.\\ | ||
- | Zie het kopje //formquery en childquery-verwijzingen naar tbqueries// | + | Zie het kopje //formquery en childquery-verwijzingen naar tbqueries// bij [[openwave: |
| |