openwave:1.33:applicatiebeheer:probleemoplossing:programmablokken:verwerking_stuf_overdragenzaak

Action unknown: siteexport_addpage

Verwerking StUF Zaak/dms 1.2 Overdragen Zaak

Vanuit een DMS kan een verzoek gedaan worden aan OpenWave om een zaak aan te maken. Hieronder een beschrijving van welke berichten daartoe uitgewisseld moeten worden, welke instellingen aan OpenWave-kant noodzakelijk zijn en welke onderdelen van het antwoord op geefZaakDetails door OpenWave verwerkt worden.
Naast de noodzakelijke instellingen geldt:

  • het externe zaaktype van de overgedragen zaak moet gemapt zijn in openwave (tbsoortomgverg of tbsoortovverg)
  • er moet een intiator (aanvrager) overgedragen worden
  • de zaak moet nog niet bestaan

Het externe zaaksysteem/dms roept het SOAP-endpoint base-url/api/stuf/ontvangAsynchroonOverdragen van OpenWave aan met het verzoekbericht overdragenZaak_Di01.
Een base-URL is een implementatie van OpenWave zoals bijvoorbeeld https://acceptatie.rommeldam.open-wave.nl.
De wsdl van het endpoint is bereikbaar op base-url/api/stuf/ontvangAsynchroonOverdragen.wsdl

De OpenWave StUF webservice op dat SOAP-endpoint maakt gebruik van 2-way SSL onder het TLS1.2 encryptieprotocol.
De authenticatie gebeurt op endpoint-niveau door controle op IP-adres en aangeleverd client-certificaat: het IP-adres en de fingerprint van het client-certificaat van het externe zaaksysteem/dms wordt door OpenWave gecontroleerd in de tabel tbendpointlist (beheerportaal: zie Endpoints whitelist):

  • In tbendpointlist moet een rij worden gedefinieerd met als endpoint api/stuf/ontvangasynchroonoverdragen (dus zonder base-url).
  • En vervolgens dienen de IP-adressen die toestemming moeten krijgen om de StUF overdragenZaak berichten te posten op dit soap-endpoint te worden toegevoegd (dochtertabel tbipauthorisationlist), waar de fingerprint een onderdeel van de omschrijving kan zijn.

Indien het bericht van het externe zaak/dms systeem NIET door deze firewall heen komt, wordt de HTTP-code 401 geretourneerd.

Indien het bericht van het externe zaak/dms systeem NIET door de firewall heen komt, wordt de HTTP-code 401 geretourneerd.
Indien het bericht van het externe zaak/dms systeem WEL door de firewall heen is, antwoord Openwave ongezien op het overdragenZaak_Di01- bericht met een Bv03 (bevestigings-)bericht.
Beide berichten worden opgeslagen in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

voorbeeld overdragenZaak_Di01

<?xml version="1.0" encoding="utf-16"?>
<overdragenZaak_Di01 xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://www.stufstandaarden.nl/koppelvlak/zds0120">
  <stuurgegevens xmlns="http://www.egem.nl/StUF/sector/zkn/0310">
      <berichtcode xmlns="http://www.egem.nl/StUF/StUF0301">Di01</berichtcode>
      <zender xmlns="http://www.egem.nl/StUF/StUF0301">
          <organisatie>Rommeldam</organisatie>
          <applicatie>RDApp</applicatie>
          <gebruiker/>
      </zender>
      <ontvanger xmlns="http://www.egem.nl/StUF/StUF0301">
          <organisatie>ODRommeldam</organisatie>
          <applicatie>Openwave</applicatie>
      </ontvanger>
      <referentienummer xmlns="http://www.egem.nl/StUF/StUF0301"
          >93b81f42-f8ca-4221-97a3-7297f77f7544</referentienummer>
      <tijdstipBericht xmlns="http://www.egem.nl/StUF/StUF0301"
          >20250725104913460</tijdstipBericht>
      <functie xmlns="http://www.egem.nl/StUF/StUF0301">overdragenZaak</functie>
  </stuurgegevens>
  <object xmlns:d4p1="http://www.egem.nl/StUF/StUF0301"
      xmlns="http://www.egem.nl/StUF/sector/zkn/0310" d4p1:entiteittype="ZAK"
      d4p1:functie="entiteit">
      <identificatie>ROM123456</identificatie>
      <isVan d4p1:entiteittype="ZAKZKT">
          <gerelateerde d4p1:entiteittype="ZKT">
              <omschrijving>Aanvraag straatfeest</omschrijving>
              <code>24026</code>
          </gerelateerde>
      </isVan>
  </object>
</overdragenZaak_Di01>

OpenWave vraagt aan het externe Zaak/DMS systeem de zaakgegevens op. Uit het ontvangen overdragenZaak_diO1 bericht worden twee gegevens gebruikt: de Zender: <stuurgegevens><zender><organisatie> en de Dmszaakidentificatie: <object><identificatie>.
ROM123456 in bovenstaand voorbeeld is de identificatie waaronder de zaak in het externe zaak/dms bekend is.
Rommeldam is daarin de naam van de zender-organisatie.

De Zender wordt opgezocht in de medewerkerstabel in de kolom dvloginnaam. Op grond van bovenstaand voorbeeld zou de zender-organisatie Rommeldam dus moeten voorkomen in de dvloginnaam van de medewerkerstabel (en maar één keer). Deze robot-medewerker:

  • heeft geen wachtwoord,
  • heeft geen 2-factor authenticatie
  • hoeft geen loginverklaringen af te tekenen
  • heeft in de kolom dnmaginapp (1=robot, 2=browser, 3=beide) de waarde 3
  • is lid van een rechtengroep die insertrechten heeft op de omgevingstabel en/of de apv/overige tabel
  • heeft in de kolom dvtelefoon een codering staan (bij afspraak bestaande uit 4 letters) die verwijst naar de kolom dvgemeentecode van de tabel tb33gemeente.

Indien GEEN robot-medewerker gevonden dan:

  • wordt een kaart in tbmissingconfiguration aangemaakt onder de apinaam: creeerStufOverdrachtZaak: geefZaakDetails.
  • wordt het proces afgesloten zonder dan de externe partij dit weet: geen stuurgegevens en certificaatgegevens bekend.

Openwave zoekt in de betreffende kaart van tb33gemeente naar de noodzakelijke StUf stuurgegevens-instellingen en certificaat-gegevens om een bericht aan het externe zaak/dms te kunnen sturen.
In het blok StUF zaak/dms endpoint credentials dienen de kolommen

  • Endpoint asynchroon (dvzknendpoint_ asynchroon) gevuld te worden met het asynchrone endpoint voor StUF zaak/dms 1.2 berichten van het externe zaak/dms
  • Endpoint Beantwoordvraag (dvzknendpoint_beantwoordvraag) met het beantwoordvraag endpoint voor StUF zaak/dms 1.2 berichten
  • Client-Certificaatnaam (dvzknSslKeystore) met de naam van het geinstalleerde clientcertificaat van het externe zaak/dms/
  • Client-Certificaattype (dvzknSslKeystoreType) met het bijbehorende certiifciaat type
  • Certificaat password (dvzknSslKeystorePassword) met het bijbehorende certificaat password. Deze wordt automatisch gecrypt opgeslagen.

In het blok StUF zaak/dms stuurgegevens dienen de kolommen

  • Zender applicatie (dvstufzknzenderapp) bijv OpenWave
  • Zender organisatie (dvstufzknzenderorg) bijv ODRommeldam
  • Ontvanger applicatie (dvstufzknontvapp) bijv RDApp (gelijk aan de zender-applicatie uit het binnengekomen overdragenZaak_Di01)
  • Ontvanger organisatie (dvstufzknontvorg) bijv Rommeldam (gelijk aan de zender-organisatie uit het binnengekomen overdragenZaak_Di01)

En indien het externe zaak/dms dat verlangt kunnen ook de kolommen administratie en gebruiker worden gevuld.
Bovenstaande waarden moeten afgestemd zijn met het externe zaak/dms.

Indien GEEN kaart gevonden in tb33gemeente OF endpointgegevens en/of stuurgegevens en/of certificaat gegevens zijn niet compleet dan

  • wordt een kaart in tbmissingconfiguration aangemaakt onder de apinaam: creeerStufOverdrachtZaak: geefZaakDetails.
  • wordt het proces afgesloten zonder dan de externe partij dit weet: geen stuurgegevesn en certificaatgegevens bekend.

Alles wel OK dan verzendt OpenWave het geefZaakDetails_ZakLv01 naar het beantwoordVraag -endpoint met het verzoek om alle zaakdetails te retourneren voor het betreffende Dmszaakidentificatienummer.
Het externe zaak/dms antwoord synchroon met een geefZaakDetails_ZakLa01. Beide berichten worden opgeslagen in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

Antwoordbericht niet volledig
Het antwoordbericht kan een fault-bericht zijn (zie messagelog). In dat geval gaat iets mis in het transport.
Het antwoordbericht kan wel een geefZaakDetails_ZakLa01 bericht zijn, maar het blok <antwoord> ontbreekt daarin.
In beide gevallen verzendt Openwave het slotbericht overdragenZaak_Du01 naar het ontvangasynchroon endpoint van het externe zaak/dms. In dat bericht in de tag <antwoord> de boodschap: overdracht geweigerd.. Het externe zaak/dms antwoord hierop met een Bv03-bericht.
Beide berichten worden opgeslagen in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

Zoek mapping zaaktype
Indien het antwoordbericht geefZaakDetails_ZakLa01 WEL volledig is, dan is in de tag <antwoord><object><IsVan><code> het zaaktype opgenomen, waaronder de zaak in het externe zaak/dms bekend is. OpenWave zoekt deze codering op in de kolom dvdmszaaktypecode van de tabel zaaktypes omgeving (tbsoortomgverg) onder de niet vervallen rijen waarvan de kolom dlnaardms aangevinkt is.
Indien niet gevonden dan wordt dezelfde zoekopracht uitgevoerd maar dan in de tabel zaaktypes apv/overig (tbsoortovverg).
Indien er meerdere gegadigden zijn, dan wordt de eerste de beste gepakt.
Indien echter geen mapping gevonden voor het zaaktype dan:

  • wordt een kaart in tbmissingconfiguration aangemaakt onder de apinaam: creeerStufOverdrachtZaak: geefZaakDetails.
  • wordt het slotbericht overdragenZaak_Du01 naar het ontvangasynchroon endpoint van het externe zaak/dms gestuurd. In dat bericht in de tag <antwoord> de boodschap: overdracht geweigerd.. Het externe zaak/dms antwoord hierop met een Bv03-bericht.
  • worden beide berichten gelogd in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

Bestaat de zaak al?
De <identificatie> van het antwoordbericht wordt opgezocht in tbomgvergunning.dvintzaakcode en/of in tbovvergunningen.dvintzaakcode. Indien gevonden dan bestaat de zaak reeds en

  • wordt een kaart in tbmissingconfiguration aangemaakt onder de apinaam: creeerStufOverdrachtZaak: geefZaakDetails.
  • wordt het slotbericht overdragenZaak_Du01 naar het ontvangasynchroon endpoint van het externe zaak/dms gestuurd. In dat bericht in de tag <antwoord> de boodschap: overdracht geweigerd.. Het externe zaak/dms antwoord hierop met een Bv03-bericht.
  • worden beide berichten gelogd in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

Controle overige noodzakelijke instellingen

  • Openwave dient de nieuw zaak te koppelen aan een kaart in tbperceeladressen. Indien deze niet gevonden wordt op grond van de gegevens in het blok <heeftBetekkingOp> dan valt Openwave terug op Getal2 van de instelling van Sectie: Koppeling Zaak Item: DummyLokatiePerceelkey. Dit moet een valide keyverwijzing zijn naar een rij in tbperceeladressen.
  • In de tabel tbadressoort dient zowel een niet vervallen rij te bestaan voor de dvcode AVR (aanvrager) als voor de dvcode: GEM (gemachtigde).
  • Indien de zaaktype mapping is uitgekomen op rij uit tbsoortovverg (apv/overige zaaktypes) dan moet ook Getal2 van de instelling sectie Koppeling ZAAK en item: DummyMeldingAPVOVWerzKey bestaan en verwijzen naar een valide dnkey van de tabel tbovwerkz.
  • Indien er geen defaultbehandelaar is gevonden bij de gevonden rij in tbsoortomgverg of tbsoortovverg met de zaaktype mapping, dan valt OpenWave terug op de kolom Tekst van de instelling Sectie: Koppeling OLO en Item: dossierbehandelaar.

Indien aan deze voorwaarden niet is voldaan dan:

  • wordt een kaart in tbmissingconfiguration aangemaakt onder de apinaam: creeerStufOverdrachtZaak: geefZaakDetails.
  • wordt het slotbericht overdragenZaak_Du01 naar het ontvangasynchroon endpoint van het externe zaak/dms gestuurd. In dat bericht in de tag <antwoord> de boodschap: overdracht geweigerd.. Het externe zaak/dms antwoord hierop met een Bv03-bericht.
  • worden beide berichten gelogd in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

Bepaling perceeladres
Indien het blok <heeftBetekkingOp> met entiteittype= VES bestaat dan wordt de waarde van de tag <vestigingsNummer> opgezocht in tbmilinrichtingen op de kolom dvvestigingsnr. Indien meerdere gegadigden dan wordt de eerste de beste genomen. Het perceeladres is dat van de gevonden inrichting. Indien niet gevonden dan wordt gezocht op de gegevens uit het blok <verblijfsadres>.

Nog geen perceeladres gevonden, dan wordt gekeken naar het blok met <heeftBetekkingOp> met entiteittype= AOA. Indien daarbinnen de tag <identificatie> is gevuld, dan wordt deze opgezocht in de niet vervallen rijen van tbperceeladressen op respectievelijk de kolommen dvidentificatiecode en dvbagidentcode_3 . Indien niet gevonden dan wordt gezocht op adresgegevens. Indien meerdere gegadigden dan wordt de eerste de beste genomen. Indien nog geen perceeladres gevonden dan wordt Getal2 van de instelling van Sectie: Koppeling Zaak Item: DummyLokatiePerceelkey als tbperceeladressen.dnkey genomen.

Bepaling aanvrager
Indien het blok <heeftAlsInitiator> bestaat met daarbinnen het blok <vestiging> met entiteittype= VES dan:

  • Indien tag <vestigingsnummer> gevuld, dan wordt de niet vervallen rij in tbcontactadressen gezocht met dvvestigingsnr = <vestigingsnummer>. Indien meerdere gegadigden dan wordt de eerste de beste genomen. Indien:
    • Gevonden dan is aanvrager bekend. indien Sectie: Koppeling Zaak en Item: BestaandContactNietOverschrijven NIET is aangevinkt, dan worden de gegevens overschreven.
    • Niet gevonden dan wordt een nieuwe kaart aangemaakt in tbcontactadressen met de gegevens uit dit blok.

Anders, Indien het blok <heeftAlsInitiator> bestaat met daarbinnen het blok <natuurlijkPersoon> met entiteittype= NPS dan:

  • Indien tag <inp.bsn> gevuld, dan wordt de niet vervallen rij in tbcontactadressen gezocht met dvsofinummer = <inp.bsn>. Indien meerdere gegadigden dan wordt de eerste de beste genomen. Indien:
    • Gevonden dan is aanvrager bekend. indien Sectie: Koppeling Zaak en Item: BestaandContactNietOverschrijven NIET is aangevinkt, dan worden de gegevens overschreven.
    • Niet gevonden dan wordt een nieuwe kaart aangemaakt in tbcontactadressen met de gegevens uit dit blok.

Anders, Indien het blok <heeftAlsInitiator> bestaat met daarbinnen het blok <nietNatuurlijkPersoon> met entiteittype= NNP dan:

  • Indien tag inn.nnpId gevuld, dan wordt de niet vervallen rij in tbcontactadressen gezocht met dvrsin = inn.nnpId. Indien meerdere gegadigden dan wordt de eerste de beste genomen. Indien:
    • Gevonden dan is aanvrager bekend. indien Sectie: Koppeling Zaak en Item: BestaandContactNietOverschrijven NIET is aangevinkt, dan worden de gegevens overschreven.
    • Niet gevonden dan wordt een nieuwe kaart aangemaakt in tbcontactadressen met de gegevens uit dit blok.

Anders, indien nog steeds geen contactadres gevonden of aangemaakt voor de aanvrager dan:

  • wordt een kaart in tbmissingconfiguration aangemaakt onder de apinaam: creeerStufOverdrachtZaak: geefZaakDetails.
  • wordt het slotbericht overdragenZaak_Du01 naar het ontvangasynchroon endpoint van het externe zaak/dms gestuurd. In dat bericht in de tag <antwoord> de boodschap: overdracht geweigerd.. Het externe zaak/dms antwoord hierop met een Bv03-bericht.
  • worden beide berichten gelogd in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.

Bepaling gemachtigde
Idem als bij aanvrager maar nu bij blok <heeftAlsGemachtigde>. Een gemachtigde hoeft niet opgenomen te zijn in het bericht.

Aanmaken zaak in tbomgvergunning of in tbovvergunningen
Op grond van de gevonden mapping van het zaaktype maakt OpenWave een zaak aan in tbomgvergunning of in tbovvergunningen, gekoopeld aan het gevonden perceeladres, waarbij (in geval van omgevingzaak) :

  • de kolom dvintzaakcode (de externe zaakidentifier) wordt gevuld met Dmszaakidentificatie (kolom <identificatie> van het antwoordbericht).
  • dvaanvraagnaam = <omschrijving>
  • ddaanvraag = <startDatum>
  • dvzaakcode = wordt samengesteld op basis van masker en lengte uit tbsoortomgverg
  • ddfataledatum = <startDatum> met daarbij opgeteld Fatale Periode uit tbsoortomgverg
  • dvaanvraagoms = <toelichting>
  • dlzaakpubliceren = met publiceren ja.nee uit tbsoortomgverg
  • dnkeyteamszaakverantw = gekoppelde team uit tbsoortomgverg
  • dnkeymilinrichtingen met eventueel gevonden inrichting uit blok <heeftBetekkingOp> met entiteittype= VES

Behandelaar en aanvrager/gemachtigde toevoegen
Op grond van de gevonden defaultbehandelaar uit de zaaktypes in tbsoortomgverg of tbsoortovverg wordt de behandelaar in tbinbehandelingbij toegveoegd (indien leeg dan valt OpenWave terug op de kolom Tekst van de instelling Sectie: Koppeling OLO en Item: dossierbehandelaar.

De aanvrager wordt toegevoegd aan de zaak (tbomgcontactennn of tbovcontactennn) met de adresrol AVR en de eventuele gemachtigde onder de rol GEM.

Processen, mappen en hyperlinks aanmaken
Zoals bij een handmatig aangemaakte zaak worden nu processen toegevoegd, mappen aangemaakt en hyperlink gevuld. Mits zo is ingesteld.

Verzenden slotbericht overdragenZaak_Du01 met succesmelding
Tot slot wordt het bericht overdragenZaak_Du01 naar het ontvangasynchroon endpoint van het externe zaak/dms gestuurd. In dat bericht in de tag <antwoord> de boodschap: overdracht geaccepteerd en in de tag <melding> de wavezaakcode waaronder de zaak is aangemaakt in OpenWave en in de tag <identificatie> het oorspronkelijke identificatienummer van het externe zaaksysteem.
Het externe zaak/dms antwoord hierop met een Bv03-bericht.
Beide berichten worden gelogd in de messagelog-tabel onder de rubriek: DMS overdragenZaak mits de instellingen sectie Koppeling ZAAK en item: Messagelog EN de instelling Sectie: OWB en Item: MessageLog aangevinkt staan.
Indien overdracht geaccepteerd dan komt in de kolom dvmessage_casid de wavezaakcode van de net aangemaakte zaak.

  • openwave/1.33/applicatiebeheer/probleemoplossing/programmablokken/verwerking_stuf_overdragenzaak.txt
  • Laatst gewijzigd: 2025/08/21 15:04
  • door Cecilio do Rosario