Dit is een oude revisie van het document!
Synchroniseer Gesloten SWF ruimtes
Op deze pagina staat beschreven hoe de gesloten SWF ruimtes in OpenWave ververst worden met de task synchroniseerGeslotenSWFRuimtes. Het betreft hier alleen gesloten SWF ruimtes die in de afgelopen twee weken gesloten zijn via het synchroniseren/verversen van de ruimte toen deze nog open was.
Het komt namelijk voor dat de SWF tijdelijk niet bereikbaar is en de ruimte dan ten onrechte gesloten wordt. Tevens kan het zo zijn dat een ruimte na sluiten, toch weer heropend wordt. Met deze task kan de huidige situatie opgehaald worden bij het SWF en de ruimte zo hersteld worden (indien weer heropend) of, indien de ruimte verwijderd is, de eventueel nog lege beëindigd datum van de SWF ruimte gevuld worden.
Indien de SWF ruimte bij het verversen van toch OPEN blijkt, dan wordt tbswfruimte ververst. Alle andere tabellen onder de ruimte (tbswfactieverzoeken etc.) worden niet ververst: dit gebeurd namelijk al bij de task synchroniseerOpenSWFRuimtes. De ruimte komt vanzelf weer mee met deze task.
Naast het verversen van de SWF zaken heeft de synchronisatie task als doel om te markeren welke zaken gewijzigd zijn: in de tabel van de SWF ruimtes in OpenWave (tbswfruimte) wordt veld dlgewijzigdbijsync op T gezet indien er een wijziging heeft plaats gevonden. Tevens wordt de datum van wijzigen geregistreerd.
Op deze pagina wordt eerst uitgelegd waar men het overzicht kan zien van de gewijzigde SWF zaken. Daarna volgt hoe het verloop van de synchronisatie gaat en een verwijzing naar hoe de taak in te stellen.
Mijn Gewijzigde SWF zaken
In het openingsportaal kan de ingelogde medewerker zijn/haar gewijzigde SWF zaken inzien via tegel Mijn gewijzigde SWF zaken in de kolom Mijn taken. De tegel opent de lijst met Mijn Gewijzigde SWF zaken, waarin de SWF zaken staan waarvoor:
- de ingelogde medewerker
- de behandelaar van de zaak is
- OF in zaakverantwoordelijk team van de zaak zit
- een wijziging heeft plaatsgevonden na uitvoeren taak Synchroniseer Open SWF ruimtes (tbswfruimtes.dlgewijzigdbijsync = T)
- EN deze wijziging is nog niet gemarkeerd als gezien (zie Accorderen/Laatste wijziging gezien?)
- een wijziging heeft plaatsgevonden na uitvoeren taak Synchroniseer Gesloten SWF ruimtes (tbswfruimtes.dlgewijzigdbijsync = T)
- als wijziging telt:
- status is veranderd van GESLOTEN naar OPEN of INITIALISATIE
- het SWF geeft aan dat de ruimte verwijderd is en Datum beëindigd was nog null voor de SWF ruimte. De programmatuur vult dan de beëindigd datum met now()
- EN deze wijziging is nog niet gemarkeerd als gezien (zie Accorderen/Laatste wijziging gezien?)
Via deze lijst heeft men inzicht in de gewijzigde zaken, kan men doorklikken naar het detailscherm van de SWF ruimte en kan men navigeren naar de bovenliggende SWF zaak (tbomgvergunning). Voor meer informatie over deze lijst zie pagina Lijst Mijn Gewijzigde SWF zaken.
Accorderen/Laatste wijziging gezien?
Op de lijst van Mijn gewijzigde SWF zaken kan men via de krul-knop 1 of meer SWF zaken afvinken: de laatste wijziging is gezien. Deze knop is ook zichtbaar in het detailscherm van de SWF ruimte in OpenWave.
Er zit geen gebruikersinterface achter de knop. Onder water leidt drukken op de knop tot zetten van tbswfruimte.dlgewijzigdbijsync = F. Dit heeft als doel dat de SWF zaak uit de lijst van Mijn gewijzigde SWF zaken verdwijnt (uiteraard verwijdert men hiermee niet de SWF ruimte). Indien er nieuwe wijzigingen in het SWF zijn voor de zaak, dan zullen deze door de tasks Synchroniseer Open SWF ruimtes en Synchroniseer Gesloten SWF ruimtes verwerkt worden en wordt de zaak weer aangemerkt als gewijzigd bij synchronisatie.
Verversen/synchroniseren van Open SWF ruimtes
Noodzakelijke instellingen:
- Algemeen endpoint van de SWF. Gedefinieerd in de instelling kolom Tekst van Sectie: SWF en Item: AlgemeenEndpoint bijvoorbeeld:
https://pkio.service.pre.omgevingswet.overheid.nl/overheid/samenwerken/api/behandelen/v4/ - OIN-nummer dat hoort bij de OpenWave implementatie dat gewhitelist is op het REM-certificaat waarmee de SWF API-aanroep wordt geautoriseerd. De kolom Tekst van instelling Sectie: SWF en Item: OINvanZender
Waarschuwing
Het kan zijn dat er een andere OINvanZender van toepassing is: wordt per op te halen SWF ruimte bepaald o.b.v. bovenliggende Omgevingszaak. Uitleg van de logica hoe OINvanZender bepaald wordt per zaak zie pagina Samenwerkingsfunctionaliteit.
Proces van synchroniseren open SWF ruimtes De taak/callable Synchroniseer Open SWF ruimtes gaat voor alle open SWF ruimtes (vwfrmswfruimte.dvstatus = OPEN of INITIALISATIE) de gegevens verversen/ophalen uit het SWF en redeneert daarbij als volgt:
Er wordt dus voor alle omgevingszaken die voorkomen in vwfrmswfruimte where dvstatus = OPEN of INITIALISATIE, per omgevingszaak gekeken of de OINVanZender bepaald kan worden (zo nee dan wordt dit gelogd in de Operationslog voor de taak Synchroniseer Open SWF ruimtes). Vervolgens wordt voor alle open SWF ruimtes onder deze omgevingszaak de volgende acties uitgevoerd: (waarbij alle SWF API's worden aangeroepen met als bevoegd gezag de bepaalde OINVanZender, en als samenwerkingsid het SWF-id van de SWF ruimte)
Vanaf SWF versie v5 (in OpenWave automatisch ingesteld vanaf 1.32) is het mogelijk om documenten te koppelen aan een actieverzoek. Om deze reden is het verversen van de documenten bij de SWF ruimte naar voren gehaald zodat dit plaats vindt voor het verversen van de actieverzoeken. Het verversen van de actieverzoeken is uitgebreid met het bijwerken van de onderliggende tabel die de koppeling van SWF documenten bij een actieverzoek vastlegt.
Verversen SWF ruimte
De SWF API voor het verversen van de SWF ruimte wordt aangeroepen: AlgemeenEndpoint + 'samenwerkingen/' + SWFid. Indien de aanroep niet goed gaat dan zal er in de operationslog een regel worden toegevoegd dat het niet gelukt is om de ruimte te verversen. En zal vervolgens voor de volgende SWF ruimte geprobeerd worden te verversen. Net zo lang als alle in de afgelopen twee weken gesloten SWF ruimtes ververst zijn.
Indien de aanroep wel goed gaat dan wordt de SWF ruimte (tbswfruimte) gewijzigd met waardes zoals deze door SWF in het antwoordbericht zijn doorgegeven:
- zijn de waardes hetzelfde als voorheen dan blijft tbswfruimte.dlgewijzigdbijsync ongewijzigd
- zijn er daadwerkelijk wijzigingen doorgevoerd dan wordt tbswfruimte.dlgewijzigdbijsync op T gezet
Indien de respons van het SWF de errorcode 404 bevat en het foutbericht de titel “Deze ruimte bestaat niet (meer)” bevat, dan gaat OpenWave er vanuit dat de ruimte niet meer bestaat in het SWF. De datum ddverwijderd op de OpenWave kaart van de tbswfruimte wordt dan gevuld met de systeemdatum.
Voortgang en logging
Om dubbele uitvoering van de callable te vermijden wordt bij het starten de Datum van de instelling Sectie: Operations Item: SynchroniseerGeslotenSWFRuimtes gevuld met timestamp. De kolom Tekst met medewerkerscode en Getal1 met 1. Indien klaar dan wordt Getal1 weer op null gezet. In de operationslog (Operations portaal) wordt voortgang en resultaat bijgehouden onder de code: SynchroniseerGeslotenSWFRuimtes.
Loggen van synchronisatie gesloten SWF ruimtes in Messagelog
Het loggen van de synchronisatie actie voor gesloten ruimtes in de Messagelog van OpenWave staat default aan. Het draaien van de taak Synchroniseer Gesloten SWF ruimtes kan zorgen voor het aanmaken van veel records in de messagelog tabel. Indien gewenst kan men het loggen van de acties van de taak in de Messagelog uitzetten (logging in operationslog blijft gewaarborgd).
Dit doet men door instelling Sectie: SWF, Item: MessageLog_SynchroniseerGeslotenSWFRuimtes uit te vinken.
Instellen van Synchronisatie gesloten SWF ruimtes met de task scheduler
Voor het instellen van de task scheduler zie pagina Taskscheduler
Waarschuwing
Indien de taak NIET wordt gescheduled met de task scheduler, dan zal er dus GEEN automatische synchronisatie van de gesloten SWF ruimtes in OpenWave plaatsvinden.
Alleen indien de synchronisatie taak is uitgevoerd/periodiek uitgevoerd wordt zal het overzicht van gewijzigde SWF zaken gevuld/aangevuld worden voor de gesloten SWF ruimtes. De taak kan gescheduled worden door applicatiebeheer op gewenste tijdstip en met gewenst herhaalpatroon. Bijvoorbeeld door de taak iedere nacht te laten draaien en dit dagelijks te herhalen.
