Portal beheerportaal-NIEUW, onder kolom Scherm- en Tegelbeheer, tegels Schermkolomdefinitie.
Screenidentifiers:
Elke lijst- filter-of detailscherm of standaardinsert-scherm heeft een eigen identifier. Voor de lijst- en detailschermen is deze identifier zichtbaar wanneer rechtsonder in het scherm op het in zacht grijs weergegeven regeltje met de versie-informatie wordt geklikt. Er verschijnt een ballonnetje met drie gegevens: screensource (aar of tbscreencolumns) en screenidentifier (een unieke xml-benaming voor elke scherm, bijv: MDDC_getMilCodeBwlDetail.xml) en de API-soort (sysstandaard of anderszins). Wanneer aan de voorkant een lijst binnen een blok van een detailscherm is opgenomen dan verschijnt rechtsonder in dat blok een info-icoontje waarmee de schermidentifier voor dat specifieke lijstje kan worden opgehaald. Screensource kan drie waarden hebben:
Indien deze informatie wordt opgevraagd bij een rapportlijst dan zijn er twee mogelijkheden:
De screenidentifier voor de filteropties bij een lijst heeft dezelfde naam als die van de lijst met uitzondering van de prefix. Bij een lijst is dat MDLC_ en bij de definitie van het filter MDFC_.
De screenidentifier voor een standaardinsert-of kopieerscherm begint in ieder geval met de prefix 'MDWC_' en eindigt met '.xml'. Maar de exacte naam moet gezocht worden in de knopdefinitie bij de insertknop bij de betreffende tabeldefinitie (beheertegel Tabellen Standaardapi). Wanneer de action bij die insertknop is gedefinieerd als startWizard en de eerste parameter heeft de waarde insertSysStandardRow of kopieerSysStandardRow dan staat in de tweede parameter de naam van het scherm dat gebruikt wordt voor de insert.
Paging voor de lijstschermen wordt geregeld door de instelling Getal1 van Sectie: Paging en Item: Page_Size (defaultwaarde = 100).
De inlogger moet beheerrechten hebben: tbmedewerker.dnbeheerniveau = 99 om de tabel met scherminformatie tbscreencolumns te benaderen.
In deze tabel zijn alle lijst-filter- en detailschermen gedefinieerd met een unieke scherm-identifier: de kolom dvscreenfilename. De uitgeleverde standaardversies van de schermen kunnen alhier desgewenst aangepast worden. Aan de voorkant kan op dus op elk scherm rechtsonder de screenidentifier en de klasse zichtbaar gemaakt worden. De scherminformatie kan vervolgens opgezocht worden in het (nieuwe) beheerportaal onder de kolom Scherm- en Tegelbeheertegel achter de tegel: Schermkolomdefinities lijst, detail, filter, kaart.
Naast alles lijst- en detail- en filter en insertschermen kunnen in deze tabel - maar hoeft niet - voor één of meer rapportages kaarten aangemaakt zijn teneinde de kolommen van die rapportage beter op te kunnen maken. Zie trigger maak schermdefinitie bij Rapportages.
De tabel is en wordt gevuld met de updatescripts van databasewijzigingen. Schermen onder de SysStandard-klasse (lijst, detail, filter en insertschermen) kunnen door functioneel beheerders worden aangemaakt: in dat geval moet het scherm opgeslagen worden in de kolom Kolominformatie (dvscreenxml). Naar schermen die de klasse SysStandard hebben wordt verwezen vanuit de tabel tbsysstandardtable of vanuit tbsysstandardbutton. Onderaan de lijst van schermen bij klasse SysStandard is een wizardknop zichtbaar: verwijder niet gekoppelde scherminformatie. Hiermee wordt een lijst opgebouwd van schermen die 'zweven', dus die geen connectie hebben in een kaart van tbsysstandardtable of tbsysstandardbutton (tegel Tabellen Standaard-api).
Bestaande schermen (ongeacht de klasse) kunnen aangepast worden door met de knop Haal Origineel onderaan het detailscherm van de schermdefinitie de schermopmaak binnen te halen in de kolom Kolominformatie (dvscreenxml). Indien deze kolom dvscreenxml is gevuld, dan gaat die schermopmaak boven de oorspronkelijke aangeleverde schermopbouw in de AAR.. In de overzichtslijsten van de schermen is dit zichtbaar in het aangevinkt zijn van de kolom afwijkend scherm.
Alle kolommen (behalve de niet muteerbare: zie hieronder) en knoppen zijn dan toegankelijk.
De kolomvolgorde wordt bepaald door de volgorde van de tags in de MDLC_xxx.xml files.
Daar kan van afgeweken worden door (in het beheerportaal) de kolom dvkolomvolgordelijst van de betreffende kaart tbscreenxml te vullen.
Zie Volgorde kolommen lijstschermen.
Achter de kolom Blokvolgorde (titels scheiden door #) kan een afwijkende volgorde van de blokken van een detailscherm worden opgegeven. Op bloktitel gescheiden door een #. OpenWave kijkt hier alleen naar indien er voor het betreffende scherm GEEN afwijkend scherm is gedefinieerd in de kolominformatie (dvscreenxml).
Voorbeeld
Het detailscherm met identifier: MDDC_geefOmgActiviteitDetail.xml (onderdelen/activiteiten bij een omgevingzaak) kent standaard de volgende volgorde van bloktitels:
Om nu het blok DSO Specificaties niet als achtste, maar als tweede te tonen, waarbij de overige blokken hun plaats behouden, moet de kolom blokvolgorde (tbscreencolumns.dvblokvolgordedetail) gevuld worden met: Onderdeel#DSO Specificaties. Om alleen het blok DSO; identifiers niet als tweede, maar als achtste te tonen, moet de kolom blokvolgorde gevuld worden met: Onderdeel#Gebouw- en; gebruik;gegevens#Voortgang#Geldigheid#Kosten#ROEB#DSO Specificaties#DSO; identifiers.
Waarschuwing
Indien een bloktitel twee of meer regels beslaat dan kan het zijn dat de werkelijke titel is voorzien van puntkomma's op de plek van een gedwongen regeleinde. Maar dat hoeft dus niet. Ook in het geval dat de titel te lang is voor de blokbreedte zal OpenWave een spatie gebruiken als regeleinde. De werkelijke titels zijn (vooral als het gaat over een titel die twee of meer regels beslaat) op te halen via de knop haal originele scherminformatie op het detailscherm van een schermkolomdefinitie (beheerportaal-Nieuw): vergeet dan niet de ingelezen xml weer te verwijderen, anders is er sprake van een afwijkend scherm.
De titels moeten gescheiden worden door een hekje: # Verschrijvingen in de bloktitels worden genegeerd (het blok kan namelijk niet gevonden worden).
Achter de kolom selectie van in te klappen blokken (titels scheiden door #) kan een selectie van blokken opgegeven worden die standaard ingeklapt moeten worden getoond. Op bloktitel gescheiden door een #. OpenWave kijkt hier alleen naar indien er voor het betreffende scherm GEEN afwijkend scherm is gedefinieerd in de kolominformatie (dvscreenxml).
Voorbeeld
In het detailscherm met identifier: MDDC_geefOmgevingzaakDetail.xml (odetailscherm van een omgevingzaak) kan geregeld worden dat het blok polygoon en het blok Toelichting F11 standaard ingeklapt worden, door deze kolom selectie van in te klappen blokken te vullen met Toelichting;F11#Polygoon#
Waarschuwing
Indien een bloktitel twee of meer regels beslaat dan kan het zijn dat de werkelijke titel is voorzien van puntkomma's op de plek van een gedwongen regeleinde, zoals hierboven in het voorbeeld bij Toelichting;F11. Maar dat hoeft dus niet. Ook in het geval dat de titel te lang is voor de blokbreedte zal OpenWave een spatie gebruiken als regeleinde. De werkelijke titels zijn (vooral als het gaat over een titel die twee of meer regels beslaat) op te halen via de knop haal originele scherminformatie op het detailscherm van een schermkolomdefinitie (beheerportaal-Nieuw): vergeet dan niet de ingelezen xml weer te verwijderen, anders is er sprake van een afwijkend scherm.
De bloktitels moeten gescheiden worden door een hekje: # Verschrijvingen in de bloktitels worden genegeerd (het blok kan namelijk niet gevonden worden).
Achter de bloktitels die ingeklapt moeten worden kan een voorwaarde worden gesteld door een aanroep naar een query.
Voorbeeld ingeklapte bloktitels op basis van query
Stel het blok toelichting moet alleen ingeklapt worden indien de achterliggende kolom tbomgvergunning.dvaanvraagoms leeg is.
Er moet dan een query gedefinieerd worden die 1 of true retourneert wanneer de status ingeklapt moet zijn ( en anders 0 of false)
Indien die query bijvoorbeeld als naam omgtoelicht_collapse krijgt, dan wordt de notitie in de kolom selectie van in te klappen blokken voortbordurend op bovenstaand voorbeeld :
Toelichting;F11,%query(omgtoelicht_collapse,%keypointer%)%#Polygoon#
De query is in dit geval bijvoorbeeld:
select case when dvaanvraagoms is not null then 'false' else 'true' end from tbomgvergunning where dnkey = {id}
Met de knop Haal Origineel op het detailscherm van een schermdefinitie kan indien:
In beide gevallen wordt de kolom Kolominformatie (dvscreenxml) hiermee overschreven.
Met de wizardknop verwijder niet gekoppelde scherminformatie (alleen bij schermen van klasse SysStandard) wordt een lijst opgebouwd van schermen die 'zweven', dus die geen connectie hebben in een kaart van tbsysstandardtable of tbsysstandardbutton (tegel Tabellen Standaard-api) en dus nooit gebruikt zullen worden. Met de wizard kan de lijst opgeschoond worden.