Synchroniseer Open SWF ruimtes

Op deze pagina staat beschreven hoe de SWF ruimtes in OpenWave ververst worden. Verversen/synchroniseren kan handmatig uitgevoerd worden maar ook ingescheduled worden d.m.v. de Taskscheduler in OpenWave.
Het verversen/bijhouden van wijzigingen in het SWF op openstaande SWF zaken in OpenWave is een actieve taak (er worden geen verversberichten gestuurd vanuit het SWF).

De gebruiker kan handmatig de SWF onderdelen verversen door per te verversen onderdeel op het verversknopje klikken .

De handmatig te verversen onderdelen zijn:

SWF ruimte zelf

Actieverzoeken

Documenten

Notificaties

Het is mogelijk om door middel van een geschedulde taak: de zogenaamde task SynchroniseerOpenSWFRuimtes, deze verversacties geautomatiseerd op te vragen bij het SWF voor alle open SWF ruimtes in OpenWave.

Op deze manier wordt voor alle openstaande (status = OPEN of INITIALISATIE) SWF ruimtes in OpenWave, in 1 keer alle verversacties uitgevoerd. De verversacties zijn per openstaande SWF ruimte gelijk aan de al bestaande handmatige verversacties met als toevoeging dat ook het ophalen van ketenpartners wordt uitgevoerd.

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?).

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 task Synchroniseer Open 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

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 de actie voor verversen van Ketenpartner uitgevoerd worden.

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, 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. Indien bij een volgende synchronisatie dezelfde ruimte geen 404 meer oplevert, zal die ddverwijderd weer worden leeggemaakt.

Haal Ketenpartner op bij SWF ruimte

De SWF API voor het ophalen van Ketenpartners wordt aangeroepen: AlgemeenEndpoint + 'samenwerkingen/' + SWFid + '/deelnemers'.
Indien de aanroep niet goed gaat dan zal er in de operationslog een regel worden toegevoegd dat het niet gelukt is om de ketenpartners te verversen voor de ruimte. En zal vervolgens de actie voor verversen van SWF Documenten uitgevoerd worden.

Indien de aanroep wel goed gaat dan zal indien de ketenpartner:

nog niet bestaat bij de SWF ruimte een regel worden aangemaakt in tbswfoinpartners

EN indien de organisatie niet bekend is in tboin dan wordt ook een regel aangemaakt in tboin

EN wordt tbswfruimte.dlgewijzigdbijsync op T gezet

wel bestaat bij de SWF ruimte, de waardes in tbswfoinpartners worden gewijzigd met waardes die door SWF in antwoordbericht zijn doorgegeven:

zijn de waardes hetzelfde als voorheen dan blijft tbswfruimte.dlgewijzigdbijsync ongewijzigd

zijn er daadwerkelijk wijzigingen doorgevoerd (in 1 of meer van de actieverzoeken) dan wordt tbswfruimte.dlgewijzigdbijsync op T gezet.

Verversen SWF documenten bij SWF ruimte

De SWF API voor het verversen van de SWF Documenten wordt aangeroepen: AlgemeenEndpoint + 'samenwerkingen/' + SWFid + '/documenten'.

Indien de aanroep niet goed gaat dan zal er in de operationslog een regel worden toegevoegd dat het niet gelukt is om de documenten te verversen voor de ruimte. En zal vervolgens de actie voor verversen van SWF Actieverzoeken uitgevoerd worden.

Indien de aanroep wel goed gaat dan wordt voor alle documenten binnen deze SWF ruimte de waardes in tbswfdocumenten gewijzigd met waardes die door SWF in antwoordbericht zijn doorgegeven:

zijn de waardes hetzelfde als voorheen dan blijft tbswfruimte.dlgewijzigdbijsync ongewijzigd

zijn er daadwerkelijk wijzigingen doorgevoerd (in 1 of meer van de actieverzoeken) dan wordt tbswfruimte.dlgewijzigdbijsync op T gezet.

Verversen SWF Actieverzoeken bij SWF ruimte

De SWF API voor het verversen van de SWF actieverzoeken wordt aangeroepen: AlgemeenEndpoint + 'actieverzoeken?' + 'samenwerkingId =' + SWFid.

Indien de aanroep niet goed gaat dan zal er in de operationslog een regel worden toegevoegd dat het niet gelukt is om de actieverzoeken te verversen voor de ruimte. En zal vervolgens de actie voor verversen van SWF Notificaties uitgevoerd worden.

Indien de aanroep wel goed gaat dan wordt voor alle actieverzoeken binnen deze SWF ruimte de waardes in tbswfactieverzoeken gewijzigd met waardes die door SWF in antwoordbericht zijn doorgegeven:

zijn de waardes hetzelfde als voorheen dan blijft tbswfruimte.dlgewijzigdbijsync ongewijzigd

zijn er daadwerkelijk wijzigingen doorgevoerd (in 1 of meer van de actieverzoeken) dan wordt tbswfruimte.dlgewijzigdbijsync op T gezet.

Tevens wordt de onderliggende koppeltabel tbswfkopdocsactieverzoek bijgewerkt met de meegekomen gekoppelde SWF documenten bij het actieverzoek. Dit kan betekenen dat na synchronisatie eerder gekoppelde documenten, niet meer gekoppeld zijn. Tevens kunnen er nieuwe gekoppelde documenten bij het verzoek zijn.

Verversen SWF Notificaties bij SWF ruimte

De SWF API voor het verversen van de SWF Notificaties wordt aangeroepen: AlgemeenEndpoint + 'samenwerkingen/' + SWFid + '/notificaties'.

Indien de aanroep niet goed gaat dan zal er in de operationslog een regel worden toegevoegd dat het niet gelukt is om de notificaties te verversen voor de ruimte.

Indien de aanroep wel goed gaat dan wordt voor alle notificaties binnen deze SWF ruimte de waardes in tbswfnotificaties gewijzigd met waardes die door SWF in antwoordbericht zijn doorgegeven:

zijn de waardes hetzelfde als voorheen dan blijft tbswfruimte.dlgewijzigdbijsync ongewijzigd

zijn er daadwerkelijk wijzigingen doorgevoerd (in 1 of meer van de actieverzoeken) dan wordt tbswfruimte.dlgewijzigdbijsync op T gezet.

Voortgang en logging

Om dubbele uitvoering van de callable te vermijden wordt bij het starten de Datum van de instelling Sectie: Operations Item: SynchroniseerOpenSWFRuimtes 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: SynchroniseerOpenSWFRuimtes.

Loggen van synchronisatie open SWF ruimtes in Messagelog

Het loggen van alle synchronisatie acties in de Messagelog van OpenWave staat default aan. Het draaien van de taak Synchroniseer Open SWF ruimtes kan echter zorgen voor het aanmaken van zeer 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_SynchroniseerOpenSWFRuimtes uit te vinken.

Instellen van Synchronisatie open SWF ruimtes met de task scheduler

Voor het instellen van de task scheduler zie pagina Taskscheduler

Dit betekent dat de lijst van Mijn gewijzigde SWF zaken NIET gevuld wordt.

Alleen indien de synchronisatie taak is uitgevoerd/periodiek uitgevoerd wordt zal het overzicht van gewijzigde SWF zaken gevuld/aangevuld worden. 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.