Koppeling Qpz Ons 2014 Achtergrond en implementatie handleiding

Vergelijkbare documenten
Conflicten in Ons Planning oplossen

Beginnen met de Agenda & planning module

e-uur en UBplus Gebruikershandleiding Versie: 1.05

Voorbeeldberichten KRI webserver

Uitzend Software Diensten B.V. UBplus Online. Handleiding voor uitzendbureaus, detachering en payroll bedrijven

Peridos. Gegevens aanleveren en controleren in Peridos door zorginstelling

ZI-meting uitvoeren met behulp van Ons. Voorbereidingen

Peridos. Aanleveren van gegevens. Datum: Landelijk beheer Peridos. Versie: 1.1

Voorbeeldberichten KRE webserver

HDN DARTS WEB AUTHENTICATIE

Implementatie handleiding koppeling met Ysis

Handleiding voor de applicatiebeheerder Cane Webservices.nl Integratie

Handleiding koppeling met Ysis

Koppeling Koppeling Teamleader

In yoobi is het mogelijk om te koppelen met yuki. De volgende type koppelingen zijn hierbij beschikbaar:

Handleiding. Autotaal Easy-work

Gebruikershandleiding People Inc. en Microloon

* = lees de publicatiestukken, de kredietrapportage of de jaarrekening (inrichtingsstukken).

NIS Notarieel Informatie Systeem

Handleiding Notificatie

Handleiding. Loket.nl / Import variabele gegevens

Handleiding Magento - Asperion

Handleiding voor de applicatiebeheerder van Business Assistent

Support website WATCH

Gebruikershandleiding MijnPost Business 2 Business Webservice

Gebruik van de cliëntagenda

ONS PLANNING - FLEX FUNCTIONALITEIT (ALLEEN V&V)

Handleiding iria. Start RIA Er zijn twee manieren om RIA te openen: ipower. iprofit MKB. iprofit (Financieel + Facturering + Relaties + Projecten)

PLANNINGSMODULE HANDLEIDING. OTYS Recruiting Technology

1. Milieuklacht Handleiding opladen XML in mkros Werken met Refertes... 5

Peridos. Gegevens aanleveren en controleren in Peridos door zorginstelling. Datum: Landelijk beheer Peridos. Versie: 2.

ChainWise Factuur Export Functionele documentatie Twinfield API Koppeling

Voor meer achtergrond over SAP Operational Process Intelligence, zie ook de februari 2014 editie van Tips & Tricks.

Wijzigingsdocumentatie ZorgNed Voor Leveranciers H10

Inhoudsopgave. Beheerder Invalpool 2.5 Pagina 3

Nedap healthcare Locaties bij cliënten aanmaken en beheren

Handleiding. Mailchimp

Handleiding Notificatie

Versturen XBRL BTW & ICP-aangiften via Digipoort naar de belastingdienst. behorend bij changelist v6.0.0

ACT! link XL voor SnelStart handleiding

Gebruikershandleiding Portal. Eekels Elektrotechniek

Handleiding Yuki Connect

Handleiding OpenCart - Reeleezee

Handleiding installatie. 3WA Local Connect

Handleiding. Act! SnelStart Connect. handleiding. Act! SnelStart Connect. Versie

MULTIsignaal R1.25. MULTIsignaal. Release Notes

NACSPORT TAG&GO HANDLEIDING Eigenschappen knop

OVM 2.0. Stappenplan. Leerling exporteren en importeren

Zelf problemen oplossen in NETQ PRO

Handleiding OpenCart - factuursturen.nl

Instructie gebruik Aangetekend Mailen via extensie en gebruik dashboard

15 July Betaalopdrachten web applicatie gebruikers handleiding

INSTALLATIE EXCHANGE CONNECTOR

Webservice voor data-uitwisseling tussen FysioRoadmap en MRS Software

Gebruikershandleiding. StUF Testplatform Versie 1.3.0

INZAGE IN ROOSTER EN PLANNING (DRAAIBOEK)

Declareren. Stap 1 Openstaande behandelingen

Digitaal certificaat Ondertekenen en encryptie. De meest recente versie van dit document kunt u vinden op:

CAREN Nedap healthcare Deze PDF is gegenereerd op

Excel Controller. Handleiding voor DBS Standaard 753 journalisering in Excel.xls

15 July Betaalopdrachten web applicatie beheerders handleiding

Onbekend type scheepsnummer opgegeven (waarde=ern, enkel toegestaan=[eni, IMO, OFS]

Whitepaper Bespaar tijd met de export MT940

ONS PLANNING - FLEX FUNCTIONALITEIT

Handleiding importeren Factuurregels

ONS PLANNING - FLEX FUNCTIONALITEIT (ALLEEN V&V)

AFO 139 Automatische export

Automatische mailing export. Automatisch exporteren van mailing rapportages uit MailPlus

Welke NAW-gegevens kunt u via de data export in de uitstroommonitor plaatsen?

1 Algemeen Contactgegevens Afwezigheidslijst WebUntis Reserveringen... 15

Release notes

Help er gaat iets mis

Stappenplan koppeling AFAS - Kwaliteitscholen

ARRANGEREN Nedap healthcare Deze PDF is gegenereerd op

Handleiding. Import van Loonjournaalposten. Laatste nieuws : De meest recent toegevoegd loonpakket is : Unit4.

Ten opzichte van de vorige versie zijn er een aantal functionaliteiten verbeterd, ook zijn er een aantal functionaliteiten toegevoegd:

ABAB-Internetboekhouden. Handleiding: Directe bankkoppeling

HANDLEIDING WINDOWS INTUNE

Handleiding PrestaShop - Reeleezee

Registratie & Uitwisseling van de Verplichte Eindtoets

Handleiding Producten importeren via een spreadsheet programma

INZAGE IN ROOSTER EN PLANNING

Handleiding gebruik Citymail

Handleiding Koppeling imuis Online

1. Over LEVIY 5. Openen van de activiteit 2. Algemene definities 6. Inloggen op het LEVIY dashboard 3. Inloggen 6.1 Overzichtspagina 3.

Handleiding Magento - Yuki

Quickstart TreeCommerce Messenger

ITware. Itware gebruikershandleiding

d-basics Creditline, nieuw bestandsformaat Deutsche Bank

Opleiding Technische Informatica Ontwerp Gericht Onderwijs 1.1 (2IO05) Handleiding

1 Inleiding. 3 Handmatig... invoeren zaken basis 4 Verwerken... zaken 5 Afhandelen... van zaken. 7 Uitgebreidere... zaak opties

Release notes:

Ridder R8 Financieel: openen nieuw boekjaar

Korte handleiding AB Register Melkvee: technische specificaties

Nedap healthcare Cliënten op groep(en) in groepszorg inplannen

Update PlusPort Academy november 2012

W2105 Import Externe Bestanden

Installatiehandleiding Cane Webservices.nl Integratie

GROEPSZORG Nedap healthcare Deze PDF is gegenereerd op

Support.thecomputercompany.nl

Transcriptie:

Koppeling Qpz 2014 Achtergrond en implementatie handleiding

Introductie Dit document beschrijft de werking van de koppeling tussen Qics Planner Zorg en Nedap ONS Suite. Achtergrond informatie Deze koppeling is gebouwd voor de Assist klant Vierstroom. De reden dat deze koppeling als maatwerk is gemaakt is omdat Assist een belang heeft bij meer van onze klanten. De verwachting is dan ook dat meerdere klanten gebruikt gaan maken van de koppeling. Assist heeft de werkwijze om noodlijdende zorgleveranciers uit de brand te helpen door een minderheidsbelang te kopen met als voorwaarde dat zij bepalen welke software gebruikt wordt. Momenteel betekent dat Nedap + Synergy + Qics. Qics levert het pakket Qics Planner Zorg voor de flex functionaliteit. Ook wordt het bedrijf opgedeeld in meerdere b.v. s zodat een faillissement niet de gehele organisatie treft. Het gevolg is dat een zorgleveranciers voor elk onderdeel een aparte en Planning omgeving heeft. Het flex bureau moet diensten kunnen invullen over deze verschillende installaties heen. Dit is functionaliteit die Nedap zelf niet kan bieden. Dit gat wordt opgevuld door Qics Planner Zorg. Architectuur b.v. Extramuraal Synergy Extramuraal Planning b.v. Intramuraal Cupido KOPPELING QPZ Synergy Flex b.v. Planning Synergy Intramuraal In blauw de verlonings export. In groen de medewerkers import. In oranje, realtime webservices. pagina 2 van 12

In bovenstaand figuur staat de inrichting zoals die gebruikt wordt. Een aantal kernpunten op een rij, de details worden in het hoofdstuk over de inrichting besproken: - administratie wordt gevoed vanuit twee backend systemen. Één systeem voor de medewerkers van die b.v. en één voor de flex-medewerkers. Er zijn dus ook twee verloningsexports, één voor de b.v. en één voor de flex-medewerkers. - Planning is identiek aan. - De verloningsexport loopt via de normale exports vanuit. De import via de normale import van. - De koppeling biedt realtime-webservices aan QPZ en haalt de informatie op via Cupido. Architectuur detail import b.v. Extramuraal Synergy Extramuraal Planning b.v. Intramuraal QPZ Synergy Flex b.v. Planning Synergy Intramuraal In bovenstaand figuur is alleen de import van medewerker gegevens in de desbetreffende systemen getoond. Flex medewerkers worden in zowel als QPZ geïmporteerd. Deze medewerkers worden onder een vast team geïmporteerd, namelijk 9999. Ook hebben de Flex medewerkers een vast contract type, namelijk flex. Zowel in als Planning is dit te zien. De gewone medewerkers worden alleen in geïmporteerd, behorende bij de desbetreffende b. v. Architectuur detail verlonings export pagina 3 van 12

b.v. Extramuraal Synergy Extramuraal Planning b.v. Intramuraal QPZ Synergy Flex b.v. Planning Synergy Intramuraal Voor de verloning worden per omgeving twee exports gemaakt; 1 voor de flex medewerkers en 1 voor de gewone medewerkers. In het export profiel is aan te geven welke contract typen niet geëxporteerd moeten worden. De export van de gewone medewerkers gaat naar de Synergy omgeving van de gewone bv s en de export van de flex-medewerkers gaat naar QPZ. Dit wordt allemaal door de medewerkers van de bv s gedaan. pagina 4 van 12

Architectuur detail koppeling b.v. Extramuraal Planning b.v. Intramuraal Cupido KOPPELING QPZ Planning Het ophalen van de openstaande flex-aanvragen gaat vanuit QPZ via de koppeling en Cupido naar de juiste omgevingen. Zie het hoofdstuk technische inrichting voor de details. Inrichting ONS Om de koppeling goed te laten werken moeten de volgende punten in acht genomen worden: - Teams komen uit de import en worden niet gedefinieerd in administratie of planning. - Deskundigheden komen uit de import en worden niet gedefinieerd in administratie of planning. - Er is één flex team in waaronder alle flex medewerkers vallen. - Voor elk team in Planning wordt dit ene flex team ingesteld als flex team. - Planners hebben geen toegang tot dit team in Planning, omdat er geen planners zijn toegewezen aan dit team. - Contract en Contract type moet geïmporteerd worden vanuit de backend. - Er moet één contract type gekozen worden voor de import van de flex medewerkers. - Er moeten twee export definities gemaakt worden waarbij gefilterd wordt op verschillende contract types. De kern is dat administratie en planning altijd dezelfde gegevens moeten bevatten. pagina 5 van 12

Technische inrichting (voor de techneut) De kern van de inrichting is het koppelen van de enkele QPZ omgeving aan de verschillende ONS omgevingen. De QPZ omgeving identificeert zichzelf m.b.v. een cliëntcertificaat. Dit certificaat moet via Svalbard goedgekeurd worden (externe applicatie). De common-name van het certificaat moet er uit zien als qpzklant_naam-machine_naam. Bijvoorbeeld: qpz-vierstroom-itsjb05. Een onderdeel van de koppeling is een database met daarin een mapping van klant_naam op klantcode. In het QPZ project op github is te achterhalen wat de credentials zijn van de database. De database is te benaderen via de cupido machines. In de database staat de tabel environment_mappings: customer_ssl_id customer_code flex_team_id het veld customer_ssl_id moet gelijk zijn aan de klant_naam uit het certificaat, bijvoorbeeld vierstroom. De customer_code is gelijk aan de klantcode van de klantomgeving die gekoppeld moet worden, bijvoorbeeld TE1002. De laatste kolom is de primary key van het flex team. Zoals eerder besproken is er één flex team welke voor alle teams als flex team is ingesteld. De primary key van dit team ( key) moet hier ingevuld worden. Het gevolg is namelijk dat QPZ een connectie opzet met de koppeling. De koppeling haalt de klant naam uit het certificaat en kijkt in de database welke klantcodes gekoppeld zijn. Bij het ophalen van alle flex aanvragen zal voor elke klantcode de aanvragen opgehaald worden. Via Cupido worden de openstaande aanvragen opgehaald op basis van het flex_team_id. Services (voor de techneut) De koppeling biedt drie services aan: - ophalen van alle openstaande flex aanvragen - inplannen medewerker op aanvraag - uitplannen medewerker Ophalen aanvragen De webservice GetFlexRequests en GetFlexRequestsByPeriod haalt voor alle gemapte klantcodes de flex aanvragen vanuit de gekoppelde Planning omgeving. Als er meerdere klantcodes gemapt zijn zullen er ook meerdere Planning omgevingen geraadpleegd worden. Alle openstaande aanvragen worden samengevoegd en teruggestuurd. Zie Appendix A voor het formaat. Enkele belangrijke kenmerken: - er staat een environmentid in, deze wordt bij inplannen en uitplannen meegestuurd om de juiste Planning omgeving te selecteren. - Het shiftid is eigenlijk een rosterslotid. - StartTime en EndTime kunnen ook de aangepaste tijden zijn voor die dag. - De ProfileCode is gewoon de naam van de deskundigheid. - De planner is de naam van het team. - Remarks bevat de eerste notitie voor de dienst op die dag (toe te voegen via het rooster) pagina 6 van 12

Inplannen medewerker De webservice PlanEmployee zorgt voor het inplannen van een medewerker. Het inplannen van een medewerker gebeurt op basis van o.a. het medewerkernummer. Dezelfde webservice wordt ook gebruikt om een andere medewerker in te plannen op een reeds ingeplande flexaanvraag. Zie Appendix B voor het formaat. Enkele belangrijke kenmerken: - StartTime en EndTime zijn optioneell en passen de tijd van de dienst aan voor die dag. - EnvironmentId, ShiftId en EmployeeCode zijn de identificerende gegevens. - ShiftId staat ook hier voor rosterslotid. - Het EnvironmentId moet voorkomen in de mapping tabel. Uitplannen medewerker De webservice RemovePlannedEmployee zorgt voor het uitplannen van een medewerker. Zie Appendix C voor het formaat. Enkele belangrijke kenmerken: - EnvironmentId en ShiftId zijn de identificerende gegevens. - ShiftId staat ook hier voor rosterslotid. - Het EnvironmentId moet voorkomen in de mapping tabel. Foutmeldingen Er zijn drie soorten fouten die kunnen optreden in QPZ: UserInputException, EnvironmentException en SystemException. Het gedrag van QPZ is anders bij elk van de fouten. Het handelen vanuit Nedap verschilt dan ook bij elk van de fouten. In de basis geldt het volgende: UserInputException De gegevens die vanuit QPZ worden verstuurd kloppen niet met de gegevens in Planning. Een aanvraag staat bijvoorbeeld niet open of de medewerker bestaat niet. Deze meldingen zijn niet erg en worden door QPZ zelf afgehandeld. Alle andere berichten richting gaan gewoon door. EnvironmentException Deze foutmelding treedt op als de omgevingen niet goed ingeregeld zijn. De informatie tussen Planning en of tussen en QPZ zijn uiteen gelopen. Dit gebeurt wanneer de punten in het hoofdstuk Inrichting ONS niet gevolgd worden. Dit is een ernstige fout en moet zo snel mogelijk opgelost worden. QPZ zal geen verdere berichten versturen totdat deze fout is opgelost. Hoogstwaarschijnlijk wordt er gebeld vanuit QPZ. Waarschijnlijk kan iemand uit Planning dit probleem oplossen. SystemException Er is een onbekende fout opgetreden waardoor de koppeling geen antwoord kon geven. Dit gebeurt meestal bij onderhoud of als te druk is. QPZ zal later nogmaals proberen om de gegevens op te halen/te sturen. Meestal lost dit zichzelf op. Als dit steeds blijft voorkomen dan is dit een serieus probleem. Mogelijke oorzaken zijn een update van of Planning. Daar kan nagevraagd worden wat er aan de hand is. Ook is het noodzakelijk dat iemand naar de logs gaat kijken van de koppeling. pagina 7 van 12

Specifieke meldingen Hieronder volgt een lijst met specifieke meldingen die door QPZ gemeld kunnen worden en de eventuele oplossingsrichting. Certificate common name is invalid Het client certificaat wat gebruikt wordt is niet geldig. Mogelijk is de Common-Name (CN) verkeerd opgebouwd. Deze zou moeten lijken op: QPZ-klant_naam-machine_naam. Dit komt alleen voor bij een eerste inrichting. Controleer Svalbard voor het certificaat. Dit komt alleen voor bij nieuwe installaties. Of installaties die een jaar bestaan. The requested environment(a) mapped to an unknown team(b) In de environment_mapping tabel staat een mapping van A naar B, echter het team ID B bestaat niet in. Dit moet de primary key zijn van het flex-team. Controleer de mapping in de database en kijk of dit team bestaat in. The given expertise profile (id: X) could not be found Planning heeft een openstaand flex request voor een dienst. Deze dienst heeft een gekoppeld expertise profile welke niet bestaat in. De inrichting aan onze kant klopt dus niet. Waarschijnlijk staat er in Planning een deskundigheid die er niet zou moeten zijn. Iemand van Planning kan dit waarschijnlijk oplossen. The given shift could not be found Planning heeft een openstaand flex request voor een dienst, maar deze dienst bestaat niet meer of is niet geldig op deze dag. Het is erg bijzonder als dit voorkomt. Iemand van Planning kan hier een licht over schijnen. The given team could not be found Planning heeft een openstaand flex request voor een team, maar dit team bestaat niet in administratie. Planning mag geen extra teams definiëren! De inrichting van Planning moet gerepareerd worden of de importer moet gedraaid worden. EnvironmentId: A is not found in mappings for B QPZ geeft een environmentid (klantcode) welke niet bekend is in de mappings voor deze klant. In de environment_mappings tabel staat een mapping van klantcode naar het client certificaat. De gegeven klantcode komt daar niet in voor. Dit kan gebeuren als de klantcode wordt aangepast. No employee found with code: X De medewerker met medewerker code X is niet gevonden in administratie. Is deze medewerker ergens handmatig toegevoegd? Is de medewerker wel geïmporteerd? Aan de beheerder van QPZ kan gevraagd worden of deze medewerker handmatig is ingevoerd. Bij kan nagevraagd worden of er een import gefaald heeft. Too many employees match: X pagina 8 van 12

Er zijn te veel medewerkercodes die lijken op X. Dit is alleen het geval indien er medewerkernummers zijn met minder dan 4 cijfers. De mapping medewerkernummer naar medewerker wordt namelijk gedaan via de search op medewerkers. Overige UserInputExceptions Deze foutmeldingen komen rechtstreeks van Planning af en kunnen met iemand van Planning bekeken worden. De planemployee en removeplannedemployee services worden vertaald naar commands in Planning. The requested shift_id(x) does not exist QPZ wil een medewerker inplannen of uitplannen op een dienst die niet bestaat. Dit kan gebeuren indien in Planning een dienst wordt aangepast nadat er een flex medewerker is toegewezen in QPZ. Code en updates Alle code staat in github onder het project QPZ. Hier staat ook een korte readme over hoe het project gebouwd kan worden en hoe deze geïnstalleerd kan worden. pagina 9 van 12

Appendix A <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flex="http://qpz.ons.io/namespaces/flex"> <soapenv:header/> <soapenv:body> <flex:getflexrequestsbyperiod> <flex:from>2014-06-01+02:00</flex:from> <flex:to>2014-07-01+02:00</flex:to> </flex:getflexrequestsbyperiod> </soapenv:body> </soapenv:envelope> <soap:envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"> <soap:body> <getflexrequestsbyperiodresponse xmlns="http://qpz.ons.io/namespaces/flex"> <FlexRequest> <EnvironmentId>TE1117</EnvironmentId> <TeamId>9161</TeamId> <ShiftId>185@2014-06-02</ShiftId> <Date>2014-06-02+02:00</Date> <StartTime>2014-06-02T08:00:00.000+02:00</StartTime> <EndTime>2014-06-02T12:00:00.000+02:00</EndTime> <ProfileCode>Niveau 4, verpleegkundige in de wijk</profilecode> <Planner>Gouda Noord Wijkteam 1</Planner> <Remarks/> </FlexRequest> </getflexrequestsbyperiodresponse> </soap:body> </soap:envelope> pagina 10 van 12

Appendix B <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flex="http://qpz.ons.io/namespaces/flex"> <soapenv:header/> <soapenv:body> <flex:planemployee> <flex:environmentid>te1002</flex:environmentid> <flex:shiftid>34@2014-04-25</flex:shiftid> <flex:date>2014-04-25+02:00</flex:date> <!--Optional:--> <!-- <flex:starttime>2000-01-01t18:00:00.000+01:00</flex:starttime> --> <!--Optional:--> <!-- <flex:endtime>2000-01-01t23:00:00.000+01:00</flex:endtime> --> <flex:employeecode>slak2</flex:employeecode> </flex:planemployee> </soapenv:body> </soapenv:envelope> pagina 11 van 12

Appendix C <soapenv:envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:flex="http://qpz.ons.io/namespaces/flex"> <soapenv:header/> <soapenv:body> <flex:removeplannedemployee> <flex:environmentid>te1002</flex:environmentid> <flex:shiftid>34@2014-04-25</flex:shiftid> <flex:date>2014-04-25+02:00</flex:date> </flex:removeplannedemployee> </soapenv:body> </soapenv:envelope> pagina 12 van 12