Verschillen
Dit geeft de verschillen weer tussen de geselecteerde revisie en de huidige revisie van de pagina.
Volgende revisie | Vorige revisie | ||
openwave:1.31:applicatiebeheer:probleemoplossing:programmablokken:upload_dso-document_vanuit_digi-koppelaar [2024/10/29 16:02] – aangemaakt - Externe bewerking 127.0.0.1 | openwave:1.31:applicatiebeheer:probleemoplossing:programmablokken:upload_dso-document_vanuit_digi-koppelaar [2024/12/11 14:20] (huidige) – Kars Gottschal | ||
---|---|---|---|
Regel 1: | Regel 1: | ||
+ | ====== Verwerken DSO-bijlagen | ||
+ | Er zijn twee manieren waarop OpenWave de daadwerkelijke bijlagen uit het DSO binnenhaalt en verwerkt. | ||
+ | * OpenWave haalt zelf de bijlagen en verzoek.pdf op met de DSO-AfhandelenVerzoek-API. Dit gebeurt na het verwerken van een binnengekomen DSO-verzoekbericht. Zie hiervoor het kopje //Ophalen en registreren van bijlages en verzoek.pdf// | ||
+ | * OF de digi-koppelaar zend de bijlages naar een endpoint van OpenWave. Deze methode heeft het nadeel dat alle documenten, ook reeds bestaande en geregistreerde, | ||
+ | Indien ingesteld is dat OpenWave zelf de bijlagen ophaalt met de instelling //Sectie: OWB en Item: OphalenDSODocsViaApi// | ||
+ | |||
+ | ===== Verwerken DSO-bijlagen vanuit digi-koppelaar | ||
+ | Dit is het geval indien | ||
+ | |||
+ | Voor het uploaden vanuit de digi-koppelaar van DSO-bijlagen naar OpenWave is een endpoint aanwezig.\\ | ||
+ | Authenticatie op het endpoint vindt plaats met een username en password, met HTTP AUTH Basic. De bestanduploads hebben per upload twee parameters nodig: de filename en het DSO-nummer waar het bestand bij hoort. | ||
+ | De bestand-upload is een POST request (enctype=" | ||
+ | |||
+ | <adm example> | ||
+ | Een voorbeeld: | ||
+ | * a) filename=' | ||
+ | * b) DSO-nummer=' | ||
+ | Een voorbeeldaanroep in het geval van een request met twee GET parameters: ''< | ||
+ | </ | ||
+ | |||
+ | <adm warning> | ||
+ | Het kan zijn dat de digi-koppelaar het OIN-nummer van het bevoegd gezag of behandeldienst toevoegt als prefix aan de documentnaam gevolgd door een hyphen (' | ||
+ | |||
+ | In het geval van complexe verzoeken in samenwerkingsverband, | ||
+ | </ | ||
+ | |||
+ | OpenWave plaatst het document eerst op de DSO-tempmap (kolom //Tekst// van de instelling:// | ||
+ | Vanuit deze tempmap wordt het document vervolgens verwerkt bij de juiste zaak en opgeslagen onder de naam die door de digi-koppelaar is aangeleverd.\\ | ||
+ | Dat wil zeggen óf - via stuf zaak/dms - in het DMS óf op de fileserver op de map gedefinieerd door de kolom //Tekst// van instelling //Sectie: Aanmaakmappen// | ||
+ | Indien ingesteld dat het document geregistreerd moet worden in tbcorrespondentie dan gebeurt dat in de kolom dvdocfilenaam met - in geval van opslag in DMS - alleen met de bestandnaam en - in geval van opslag op fileserver - met het volledige pad + bestandsnaam. | ||
+ | |||
+ | |||
+ | ==== Werkwijze DSO-bijlagen via digi-koppelaar==== | ||
+ | |||
+ | De DSO/ | ||
+ | Deze map is gedefinieerd in kolom //Tekst// van de instelling: //Sectie: OWB// en //Item: TussenMapDSOUploadfiles// | ||
+ | In de kolom //Tekst// staat de mapnaam op de webserver: deze mapnaam MOET eindigen op de karakterreeks: | ||
+ | De luisterservice roept hiertoe de API getAuthorisation aan en daarna met de verkregen sessie-sleutel de API geefInstellingen (om de DSOUploadmap op te halen) en tenslotte de API Uploadfile. | ||
+ | |||
+ | Adres en poort waar deze OpenWave API's staan te luisteren staan in de map config in de file openwave.ini op dezelfde machine als de luisterservice. Dit is een systeembeheerinstelling. | ||
+ | |||
+ | De user/pass waarmee getAuthorisation aangeroepen wordt (dezelfde als afgesproken met de leverancier van het document) moet wel opgenomen zijn in de medewerkerstabel waarbij: | ||
+ | * de user toegang moet hebben tot de browserversie | ||
+ | * EN // | ||
+ | * EN de kolom //2-factor authentication opheffen// aangevinkt is | ||
+ | * EN de user lid is van een rechtengroep die minimaal bij de omgevingszaken het recht //Creëren en uploaden documenten// | ||
+ | * EN de user lid is van een rechtengroep die minimaal op één van de modules (bouw/ | ||
+ | Alle overige rechten kunnen dus uitgevinkt staan voor deze medewerker. | ||
+ | |||
+ | De luisterservice roept nu per document de API uploadfile aan. | ||
+ | De API uploadfile moet - naast de parameter paramidentifier met daarin de filenaam - voorzien worden van de parameter paramauto die aangeeft welk automatisch proces een document probeert op te slaan. Het luisterproces geeft de waarde ' | ||
+ | Dus bijvoorbeeld 123456789_Plaatje.jpg of 0123456789_00000003332595610000-0123456789-000-test.docx. | ||
+ | |||
+ | Zo gauw de API uploadfile de focus heeft worden alle files die op de // | ||
+ | |||
+ | ==== Bepaling zaak in OpenWave ==== | ||
+ | |||
+ | Het DSO-nummer wordt gebruikt om de omgevingszaak te traceren (tbomgvergunning.dvlvoaanvraagnr) en daarbij eventueel het nodige externe zaak/DMS nummer op te halen (dvintzaakcode). Aangezien deze laatste ook door automatische processen worden aangemaakt kan er een vertraging wenselijk zijn: als het programma het DSO-nummer niet kan vinden of aan het DSO-nummer is nog geen externe zaakidentificatie gekoppeld dan kan in een loop nog een aantal maal een poging worden gedaan. | ||
+ | |||
+ | Deze loop is qua aantal en wachtduur instelbaar met de instelling //Sectie: KoppelingDOCNAARDMS// | ||
+ | |||
+ | ==== Controle dubbele documenten ==== | ||
+ | |||
+ | Indien OpenWave de zaak heeft gevonden kan het zijn dat een extra controle wenselijk is of het document al bestaat bij de gevonden zaak. Dat gebeurt indien bijlages ook worden geregistreerd in tbcorrespondentie (indien dus //Sectie: DocumentRegistreren// | ||
+ | |||
+ | {{openwave: | ||
+ | |||
+ | **ad 1. De bijlages worden door de digi-koppelaar geplaatst op het daartoe bestemde endpoint**\\ | ||
+ | De bijlagenaam is dus de documentnaam zoals door Jnet of door EnableU is doorgeschoten.\\ | ||
+ | Indien vanuit Jnet ingeschoten dan bestaat de bijlagenaam uit het OIN-nummer (20 posities) gevolgd door hyphen gevolgd door DSO-verzoeknummer (13 posities) gevolgd door hyphen gevolgd door het versienummer (bestaande uit drie posities) en dan een hyphen en dan de pure documentnaam). | ||
+ | Indien door EnableU dan is de bijlagenaam gelijk aan de pure documentnaam. | ||
+ | <adm voorbeeld>: | ||
+ | Bij Jnet zien de bijlagenamen bij het oorspronkelijke STAM-bericht er als volgt uit: | ||
+ | 00099999999999999999-0123456789123-000-kameel.docx | ||
+ | 00099999999999999999-0123456789123-000-schaap.docx | ||
+ | Bij Jnet zien de bijlagenamen bij een aanvullingsbericht er als volgt uit: | ||
+ | 00099999999999999999-0123456789123-001-kameel.docx | ||
+ | 00099999999999999999-0123456789123-001-schaap.docx | ||
+ | Bij EnableU zijn de bijlagenamen in beide gevallen: | ||
+ | kameel.docx | ||
+ | schaap.docx | ||
+ | </ | ||
+ | Aan de bijlagenamen is niet af te leiden of het document daadwerkelijk is gewijzigd ten opzichte van het origineel of niet. | ||
+ | |||
+ | **ad 2. Bestaat de bijlage wel fysiek op de tempmap? | ||
+ | De tempmap is in dit geval de tussenmap op de server gedefinieerd door de kolom //Tekst// van instelling //Sectie: OWB// en //Item: TussenMapDsoUploadfiles// | ||
+ | De filenaam die daar is opgeslagen is de bijlagenaam (zie ad1) voorafgegaan door het DSO-verzoeknummer en een hypen.\\ | ||
+ | |||
+ | **ad 3. is de bijlagenaam een Jnet of een EnableU naam?**\\ | ||
+ | OpenWave kijkt hiertoe naar //Getal 1// van de instelling //Sectie: Koppeling OLO// en //Item: CheckOpDubbeleDocumentnaam// | ||
+ | |||
+ | **ad 4. Bestaat de bijlagenaam reeds in tbcorrespondentie.dvdocfilenaam? | ||
+ | In geval van Jnet-naam wordt de bijlagenaam gezocht zonder OIN-nummer. Dus stel de bijlagenaam is // | ||
+ | Er wordt gezocht binnen de kolom dvdocfilenaam van tbcorrespondentie: | ||
+ | |||
+ | **ad 5. Bestaat de pure bijlagenaam en dsovolgnr in tbomgoloberichten? | ||
+ | Het DSO-volgnummer is bij Jnet bepaald door het betreffende gedeelte uit de bijlagenaam en bij EnableU door de kolom ***dsovolgnr** van de betreffende omgevingzaak.\\ | ||
+ | OpenWave kijkt alleen indien het DSO-volgnummer ongelijk aan //000// is of er een kaart bestaat in tbomgoloberichten bij de betreffende omgevingzaak met als dvlvobestandnaam de pure bijlagenaam EN waarbij dvdsovolgnr gelijk is aan DSO-volgnummer EN waarbij dddsovervallen leeg is. Die pure bijlagenaam is bij EnableU gelijk aan de bijlagenaam. Bij Jnet is de pure bijlagenaam de bijlagenaam zonder OIN-nummer en zonder verzoeknummer en zonder volgnummer. \\ | ||
+ | Deze stap geldt niet voor de verzoek.pdf want dit is geen bijlage in tbomgoloberichten (en zit dus ook niet in het STAM-bericht). | ||
+ | |||
+ | **ad 6. Bepaal versienummer bij Jnet berichten**\\ | ||
+ | Alleen bij Jnet-berichten zit het versienummer (DSO-volgnummer) in de bijlagenaam. Zie bij ad 1. Indien de bijlagenaam toch niet volgens het stramien OIN-verzoeknr-versienr-documentnaam is opgebouwd dan wordt ' | ||
+ | |||
+ | **ad 7. Haal OIN-nummer uit de bijlagenaam**\\ | ||
+ | Alleen bij Jnet-berichten zit het OIN-nummer in de bijlagenaam. Zie bij ad 1. Indien de bijlagenaam toch niet volgens het stramien OIN-verzoeknr-versienr-documentnaam is opgebouwd dan wordt deze stap overgeslagen. | ||
+ | In het geval dat documenten worden verzonden naar OpenWave die horen bij een zogenaamd DSO kopiebericht, | ||
+ | |||
+ | Dit kopiebericht is bijvoorbeeld het geval als een gemeente geen eigen opvang heeft van DSO-berichten en hiervoor de Omgevingsdienst gebruikt. De omgevingsdienst verwerkt het STAM-bericht voor het bevoegd gezag (de gemeente). Er gaat echter altijd een kopie vanuit het DSO naar het bevoegd gezag: in dit geval is dat wederom dezelfde OpenWave installatie. OpenWave voorkomt altijd dat een dubbele zaak (dus met hetzelfde DSO verzoeknummer) wordt aangemaakt binnen één OpenWave installatie. De namen van de nagestuurde documenten bij de kopiezaak zijn echter niet gelijk aan de originelen die de omgevingsdienst als behandeldienst al heeft ontvangen. Hetzelfde document begint in de originele zaak met het OIN-nummer van de omgevingsdienst en bij de kopiezaak is dat het OIN-nummer van het bevoegd gezag. | ||
+ | |||
+ | **ad 8. Document wordt opgeslagen en registratie wordt aangemaakt**\\ | ||
+ | Bij Jnet-documenten wordt de volledige bijlagenaam (dus incl. OIN-nummer, verzoeknummer en versienummer) gebruikt bij de registratie in tbcorrespondentie. | ||
+ | |||
+ | **ad 9. Stop, Bijlage wordt genegeerd**\\ | ||
+ | De bijlage wordt niet verwerkt in OpenWave. Wel wordt een kaartje aangemaakt in tbadexternupload. Zie tegel //Mislukte OLO/DSO bijlages// in het servicecentrum-portaal | ||
+ | |||
+ | ===== Opslaan van document in fileshare of in DMS ===== | ||
+ | Het daadwerkelijk plaatsen van de file (op fileshare of Stuf zaak/DMS) gaat gelijk aan het beschrevene in het lemma [[openwave: | ||
+ | * bij plaatsing via fileshare kijkt het programma naar de unieke map gedefinieerd door //Sectie: AanmaakMappen// | ||
+ | * bij plaatsing via STUF Zaken kijkt het programma wat betreft het documenttype indien GEEN compartiment naar kolom //Tekst// van instelling //Sectie: KoppelingDOCNAARDMS// | ||
+ | * bij plaatsing via STUF Zaken kijkt het programma ook wat betreft metadata vertrouwelijkheid indien GEEN compartiment naar kolom //Tekst// van instelling //Sectie: KoppelingDOCNAARDMS// | ||
+ | * wat betreft Auteur bij StUF zaken: deze krijgt de waarde // | ||
+ | * indien zowel is ingesteld dat documenten op de fileserver geplaatst kunnen worden als in een DMS, dan zullen de DSO-bijlages in het DMS worden geplaatst, tenzij de instelling //Sectie: Koppeling OLO// en //Item: BestandenNaarFileserver// | ||
+ | |||
+ | ===== Automatische registratie van document ===== | ||
+ | |||
+ | Indien de zaak speelt in een compartiment dan kijkt OpenWave of de kolom //OLO/DSO uploads registreren// | ||
+ | * **Documenttype** (dvdoctype_oms) indien GEEN compartiment met kolom //Tekst// van Instelling //Sectie: KoppelingDOCNAARDMS// | ||
+ | * **Definitief** met indien //Getal1// van de instelling //Sectie: DocumentRegistreren// | ||
+ | * **Richting** met (B)innenkomend | ||
+ | * **dldsovertrouwelijkheid** met de waarde (T of F) van de bijbehorende bijlageverwijzing in tbomgoloberichten | ||
+ | * **Vertrouwelijkheid** (dnkeyvertrouwelijkheid) | ||
+ | * indien DSO vertrouwelijkheid (dldsovertrouwelijkheid) =' | ||
+ | * indien gevonden dan wordt de tbvertrouwelijkheid.dnkey in deze kolom dnkeyvertrouwelijkheid geplaatst | ||
+ | * anders (wel T maar instelling niet gevonden) dan wordt de kolom //Tekst// van Instelling //Sectie: DSO// en //Item: VertalingVertrouwelijkheid// | ||
+ | * indien gevonden dan wordt de tbvertrouwelijkheid.dnkey in deze kolom dnkeyvertrouwelijkheid geplaatst | ||
+ | * nog niet gevonden dan blijft de dnkeyvertrouwelijkheid leeg. | ||
+ | * Indien dldsovertrouwelijkheid) ='F ' | ||
+ | * indien GEEN compartiment wordt met kolom //Tekst// van Instelling //Sectie: KoppelingDOCNAARDMS// | ||
+ | * indien gevonden dan wordt de tbvertrouwelijkheid.dnkey in deze kolom dnkeyvertrouwelijkheid geplaatst | ||
+ | * indien niet gevonden dan blijft de dnkeyvertrouwelijkheid leeg. | ||
+ | * indien WEL compartiment dan wordt de tekst in het veld //OLO/DSO vertrouwelijkheid// | ||
+ | * indien gevonden dan wordt de tbvertrouwelijkheid.dnkey in deze kolom dnkeyvertrouwelijkheid geplaatst | ||
+ | * indien niet gevonden dan blijft de dnkeyvertrouwelijkheid leeg. | ||
+ | * **Omschrijving** met de waarde van kolom dvomschrijving van de corresponderende kaart uit de tabel tbomgoloberichten (de tabel met opgesomde documenten uit het DSO-verzoekbericht of OLO-aanvraagbericht). | ||
+ | |||
+ | |||
+ | ===== Technische instelling ===== | ||
+ | |||
+ | WSAS moet benaderd worden op poort 9763(HTTP), dit is een onopgeloste bug. Op poort 9443(HTTPS) werkt het upload.php script niet. | ||
+ | Voer de instellingen in de PHPcake configuratie " | ||
+ | * port = 9763 | ||
+ | * use_protocol = http | ||
+ | * use_protocol_endpoint = Http | ||
+ | |||
+ | ===== Loggen ===== | ||
+ | |||
+ | In plaats van dat de tabel tbUpload gevuld wordt met een log (zowel gelukt als niet gelukt) wordt nu de beheertabel tbBadExternUpload gevuld met **alleen de mislukte plaatsingen**. In alle gevallen (gelukt of niet gelukt) wordt de oorspronkelijke file op de TussenMapDSOUploadfiles vernietigd. | ||
+ | |||
+ | {{tag> |