Tussen de Xpert Suite en AFAS kun je een koppeling aanleggen die de in de Xpert Suite ingevoerde verzuimmutaties doorstuurt naar AFAS. Deze koppeling kun je sinds release 8.8 (Cobalt) zelf inrichten in XS Connect.


INHOUDSOPGAVE


Inleiding - hoe werkt de koppeling?

Deze koppeling wordt gestart op het moment dat in de Xpert Suite een verzuimmutatie wordt opgeslagen binnen een werkgever waarvoor deze koppeling is ingesteld. In tegenstelling tot andere exports - waar puur de zojuist ingevoerde mutatie naar het externe systeem wordt verstuurd - wordt in deze verbinding met AFAS daadwerkelijk een vergelijking uitgevoerd tussen wat er in AFAS reeds aanwezig is en wat 'nu' de stand van administratie is in XS. Daarbij worden de volgende stappen doorlopen:

  1. Haal van de betreffende medewerker de (neven)dienstverband- en verzuiminformatie vanuit AFAS op
  2. Vergelijk het verzuim van AFAS met het verzuim van XS
  3. Bepaal de mutaties die nodig zijn om AFAS in lijn te krijgen met XS – is de administratie gelijk?
    1. Zo ja: klaar
    2. Zo nee: ga naar 4
  4. Bied de bij 3 bepaalde mutatie(s) aan aan AFAS
  5. Haal van de betreffende medewerker de (neven)dienstverband- en verzuiminformatie vanuit AFAS op
  6. Vergelijk het verzuim van AFAS met het verzuim van XS– is de administratie nu wel gelijk?
    1. Zo ja: klaar
    2. Zo nee: melding op het logverslag zodat een beheerder manueel actie kan ondernemen


Randvoorwaarden

Voordat deze koppeling wordt geactiveerd dienen de volgende zaken te worden geverifieerd:

  • De koppelsleutel van de werknemer (het personeelsnummer) komt voor elke werknemer overeen tussen AFAS en XS
  • Op zijn minst het actuele verzuim tussen beide systemen komt overeen. Hiertoe kan Otherside at Work (met een werkopdracht) een verschillenanalyse uitvoeren


Stap 1. Inrichting in AFAS

Binnen AFAS dient voor deze koppeling een AppConnector aangemaakt te worden. Vervolgens dienen binnen deze AppConnector de volgende Connectoren geïmporteerd te worden:

  • GetConnector XpertSuite_MDW03 (onderaan deze pagina). Hiermee halen we bij elke verzuimmutatie de actuele dienstverbandgegevens van die medewerker op uit AFAS
  • GetConnector XpertSuite_VZ01 (hier te vinden). Hiermee halen we bij elke verzuimmutatie de actuele verzuimhistorie van die medewerker op uit AFAS
  • UpdateConnector HrIllnessGuid (in de standaard bibliotheek van AFAS). Hiermee bieden we de gewenste verzuimmutatie(s) aan aan AFAS



Stap 2. Inrichting in de Xpert Suite

In XS Connect dienen drie hoofdzaken te worden ingericht:

  1. een conversiegroep specifiek voor de AFAS verzuimexport
  2. een klantaccount
  3. een exportkoppeling binnen het klantaccount bij 2


De conversiegroep

Er bestaat in XS Connect reeds een standaard conversiegroep genaamd 'AFAS', welke gebruikt wordt bij de standaard HR-koppelingen van AFAS naar XS voor afdelingen, werknemers, verzuim en gebruikers. Om technische redenen kunnen we deze niet hergebruiken bij de AFAS verzuimmutatiekoppeling. Het is daarom nodig een nieuwe conversiegroep te maken. Als binnen XS bij alle werkgevers de inrichting van verzuimoorzaken hetzelfde is hoeft dit slechts éénmalig.


Let op:
Koppel deze conversiegroep niet aan een extern systeem!


De koppeling maakt gebruik van twee Conversiesleutels:

  • Verzuimclassificaties
  • Reden Beëindiging


Richt deze conversiesleutels in volgens de mogelijkheden in AFAS en koppel deze aan de classificaties en oorzaken zoals deze in XpertSuite beschikbaar zijn. Hieronder vind je alle (bij Otherside bekende) mogelijke waarden binnen AFAS.


Verzuimclassificaties in AFASRedenen Beëindiging in AFAS
Omschrijving
Waarde import/exportOmschrijvingWaarde import/export
AdoptieAHersteld1
ArbeidsongevalAOUit dienst (einde contract)2
BedrijfsongevalBOverleden3
BorstvoedingsrustBRHersteld (gedeeltelijk arbeidsongeschikt4
Arbeidsongeschikt door derdeDUit dienst (arbeidsongeschikt)5
FamilieomstandighedenFAansluitend verzuim met andere oorzaak6
Overig OngevalO

PleegzorgP

Preventieve moederrustPM

Privé-ongevalPO

Palliatieve zorgPZ

Tijdelijke werkeloosheid wegens medische overmachtTO

ZiekZ

Ziek als gevolg van bevallingZB

Ziek als gevolg van orgaandonatieZOD

Zwangerschap / bevallingZW

Ziek als gevolg van zwangerschapZZW


Tip:
Een conversiegroep is in essentie een vertaaltabel van de inrichting van XS naar AFAS. Als er in XS eenvoudigweg niet zoveel verschillende verzuimclassificaties bij de te koppelen werkgevers bestaan, hoef je ook niet zoveel in te richten.



Het klantaccount

Voor het kunnen aanmaken van het klantaccount moet je over de volgende gegevens beschikken:

  • het deelnemernummer van de AFAS-omgeving (5 cijfers) - plus informatie met welke omgeving (conform het OTAP-principe) je gaat verbinden: Test, Acceptatie of Productie?
  • een geldig token gegenereerd vanuit de AppConnector van de AFAS-omgeving
  • voor welke werkgever(s) je deze verzuimexport gaat inrichten: voor één werkgever of een werkgevergroep?




De exportkoppeling

Als uiteindelijk bovenstaande voorbereidingen zijn getroffen, kan de daadwerkelijke export worden ingericht. Daar komen de volgende parameters bij kijken:

  • XpertSuite onderhoudt verzuim per

    Hier wordt een datum verwacht (in de notatie yyyy-mm-dd). Alle trajecten van de betreffende werknemer die een startdatum hebben die ligt op of na de ingestelde datum zullen worden meegenomen in de vergelijking tussen XS en AFAS


  • Ziekmeldingen van max. ... maanden geleden

Met deze instelling creëer je een 'dynamische' grens, aangezien bij deze instelling wordt gekeken naar een periode ten opzichte van [vandaag].


Tip:
Bovenstaande twee instellingen werken samen. Elke keer dat de koppeling wordt gestart, bepaalt de recentste van de twee instellingen welke trajecten van de betreffende werknemer in aanmerking komen voor synchronisatie.

Stel: de instellingen zijn '1 februari' en '3 maanden'. Als het vandaag 1 juni is, was het 3 maanden geleden 1 maart. Dat is recenter dan 1 februari, dus tijdens de synchronisatie wordt de einddatum van de trajecten vergeleken met 1 maart.
Als het vandaag 1 april is, was het 3 maanden geleden 1 januari. 1 februari is dan de recentste datum, dus tijdens de synchronisatie wordt de einddatum van de trajecten vergeleken met 1 februari.


Tip:
Kies bij het instellen van deze waarden voor een redelijke waarde: een instelling met een groot aantal maanden zorgt voor synchronisaties ver terug in het verleden, maar omdat er een grotere periode van verzuim wordt vergeleken is dit een intensievere synchronisatie. Een kleiner aantal maanden zorgt voor een snelle synchronisatie, maar verkleint ook de periode waarbinnen met terugwerkende kracht correcties kunnen worden ingevoerd. Stel daarom eens de vraag: tot hoever terug voert onze organisatie normaliter nog correcties door in verzuim?


  • De nevendienstverbanden functie staat in AFAS geactiveerd

                    en

  • In Xpert Suite is per nevendienstverband één werknemer aangelegd 
    In AFAS kan ingeschakeld worden dat er op een willekeurig moment twee verschillende dienstverbanden actief zijn. Dit worden in AFAS 'nevendienstverbanden' genoemd. In AFAS wordt verzuim per dienstverband geregistreerd.
    Per klant zal verschillen hoe hiermee om te gaan:

    AFASXSConfiguratieResultaat
    Nevendienstverbanden worden niet gebruiktElke werknemer is ook in XS één werknemerBeide vinkjes staan uitEen ziekmelding bij de medewerker in XS leidt 1-op-1 tot een ziekmelding bij de medewerker in AFAS
    Nevendienstverbanden worden wel gebruiktElke werknemer is ook in XS één werknemerVink enkel 'de nevendienstverbanden functie' aanEen ziekmelding bij de medewerker in XS leidt tot een ziekmelding bij beide nevendienstverbanden in AFAS
    Nevendienstverbanden worden wel gebruiktElk dienstverband van een werknemer is een werknemer in XSVink beide vinkjes aanEen ziekmelding bij één dienstverband in XS leidt tot een ziekmelding bij enkel dat dienstverband in AFAS



  • Verwacht herstel na ... dagen
    In het bericht naar AFAS wordt een verwachte hersteldatum meegegeven. De berekening daarvan is [eerste verzuimdag] + [deze instelling]. Afhankelijk van de instelling "Soort einddatum in AFAS" (zie hierna) wordt er al dan niet nog een dag van afgetrokken.

Als iemand in XS volledig hersteld wordt gemeld, wordt de verwachte einddatum in AFAS gevuld met de daadwerkelijk gerealiseerde einddatum.


  • Soort einddatum in AFAS
    Geeft aan wat de betekenis van de einddata in AFAS is (verwachte hersteldatum en einddatum verzuim). Hierbij is keuze tussen twee waardes:

  • Begin van eerste werkdag
    een eerste werkdag van 10-mrt-2023 zal in AFAS geregistreerd worden als "10-mrt-2023 00:00"
    Verwachte einddatum: Bij lopend verzuim wordt dit gevuld met de verwachte hersteldatum (zonder tijd).

  • Einde van laatste verzuimdag
    een eerste werkdag van 10-mrt-2023 zal in AFAS geregistreerd worden als "09-mrt-2023 23:59"
    Verwachte einddatum: Bij lopend verzuim wordt dit gevuld met de verwachte hersteldatum (zonder tijd) - 1 dag.


In AFAS is deze instelling te vinden onder de HRM-instellingen:


  • Standaard code verzuimoorzaak
    Als de koppeling in het uitgaande bericht geen te hanteren verzuimclassificatie kon bepalen (bijvoorbeeld omdat de conversiegroep niet compleet was),  wordt de hier ingevulde code gebruikt. Dit dient een geldige AFAS Verzuimclassificatiecode te zijn uit bovenstaande tabel.


  • Standaard code beëindigingsreden
    Identiek aan Standaard code verzuimoorzaak, maar dan voor de beëindigingsredenen als een traject in XS wordt afgesloten.






Tips & Tricks

  • Wil je van een bepaalde werknemer proberen opnieuw het verzuim te synchroniseren? Kies in de Xpert Suite dan voor 'Trajectmutaties' om zijn meest recente verzuimmutatie te corrigeren, wijzig niets en klik op 'Opslaan'. Dit zal voldoende zijn om de koppeling een nieuwe synchronisatie te laten starten.
  • Standaard onderhoudt deze verzuimexport enkel het protocoltype WVP. Als je ook zwangerschapsverlof wilt onderhouden vanuit XS naar AFAS, neem dan contact op met Otherside Support om je verder te helpen.


Troubleshooting

 

Fase van syncType meldingMeldingToelichting
OpstartinfoIllness Synchronisation startedHet allereerste bericht op het logverslag ter kennisgeving dat een run gestart is; er is nog niks gebeurd
OpstartinfoParameters: { parameters }Opsomming van de (werkgever en) werknemer waarvan een verzuimsynchronisatie gaat plaatsvinden. De 'ExternalIds' zijn de AFAS-werkgevercode en personeelsnummer
OpstartinfoSettings: { alle instellingen als JSON }Technische representatie van de instellingen die gebruikt worden bij de verzuimsynchronisatie
OpstartinfoConversion group id: [conversiongroupid]De gehanteerde conversiegroep voor de vertaling van verzuimclassificaties en beëindigingsredenen
Ophalen uit AFASinfoCollecting data from AFAS with these filters: [filter als tekst]Bij deze melding haalt de koppeling dienstverband- en verzuiminformatie op uit AFAS voor dit personeelsnummer
Ophalen uit XSinfoCollecting data from XS with these filters: [filter als tekst]Bij deze melding haalt de koppeling dienstverband- en verzuiminformatie op uit XS voor dit XS DossierID. Hier staan XS-interne Database-IDs vermeld, niet het AFAS personeelsnummer
VergelijkinginfoXS Illness ([startdatum]-[einddatum]) will not be synchronised: it does not fall within the AFAS employment ([startdatum dv]-[einddatum dv])Als start- en einddatum van het traject in XS niet overlapt met een dienstverband bij de betreffende medewerker in AFAS, is dit traject niet relevant voor de synchronisatie - want het kan in AFAS niet geboekt worden
Opstarterrortechnical-error-occurredDit betreft een technische crash. Neem contact op met de Xpert Support Desk
OpstarterrorInvalid external api configuration for AFAS IllnessBij het opslaan van de exportconfiguratie is iets misgegaan. Archiveer het huidige Connect XS klantaccount en creëer een nieuw klantaccount. Als ook die niet werkt, neem dan contact op met de Xpert Support Desk
OpstarterrorNo configuration for AFAS Illness SyncBij het opslaan van de exportconfiguratie is iets misgegaan. Archiveer het huidige Connect XS klantaccount en creëer een nieuw klantaccount. Als ook die niet werkt, neem dan contact op met de Xpert Support Desk
OpstarterrorInvalid configuration for AFAS Illness Sync setting FromDate: fromdate-requiredDe instelling "XpertSuite onderhoudt verzuim per" is niet of niet juist ingevuld. Corrigeer de instelling en start een nieuwe synchronisatie bij de betreffende  medewerker
OpstarterrorInvalid configuration for AFAS Illness Sync setting HistoryMonths: historymonths-requiredDe instelling "Ziekmeldingen van max. ... maanden geleden" instelling is niet of niet juist ingevuld. Corrigeer de instelling en start een nieuwe synchronisatie bij de betreffende  medewerker
OpstarterrorInvalid configuration for AFAS Illness Sync setting XsEmployeePerEmployment: xsemployeeperemployment-without-afas-nevendienstverbandenDe vinkjes voor wat betreft de nevendienstverbanden staan niet juist ingesteld. Kies een toegestane combinatie conform bovenstaande tabel en start een nieuwe synchronisatie bij de betreffende medewerker
Opstarterrorafas-no-filterdata-for-mutationsDeze melding wordt veroorzaakt doordat een medewerker van Otherside at Work (incorrect) via de database een synchronisatie probeert te starten. Neem contact op met die consulent of met de Xpert Support Desk
Opstarterrorxs-no-filterdata-for-mutationsDeze melding wordt veroorzaakt doordat een medewerker van Otherside at Work (incorrect) via de database een synchronisatie probeert te starten. Neem contact op met die consulent of met de Xpert Support Desk
Synchronisatieerrorafas-employee-not-foundEr is een verzuimsynchronisatie gestart voor een medewerker wiens personeelsnummer niet voorkomt in AFAS - of waarvoor de AFAS AppConnector niet geautoriseerd is. Neem contact op met AFAS Functioneel Beheer en/of de Xpert Support Desk
Synchronisatieerrorafas-multiple-employees-for-employeeAls het goed is kan het niet voorkomen dat een personeelsnummer meermaals voorkomt in AFAS - maar als deze melding wordt gegeven, neem dan contact op met AFAS Functioneel Beheer
Synchronisatieerrorxs-employee-no-employmentnumber-foundVan de medewerker kan in XS niet bepaald worden welk nevendienstverband ziekgemeld dient te worden. Neem contact op met de Xpert Support Desk
Synchronisatieerrorafas-employement-not-foundHet in XS vastgelegde dienstverbandvolgnummer komt in AFAS niet voor bij deze werknemer. Controleer of de Werknemer-koppeling van AFAS naar XS correct en volledig is.
Synchronisatieerrormatch-by-sequence-oldest-first.matched-illness-too-different-by-startdateVan de te synchroniseren ziekmelding ligt de eerste verzuimdag méér dan 7 dagen uit elkaar in de vergelijking tussen AFAS en XS. Dit dient handmatig in AFAS gecorrigeerd te worden (ervan uitgaande dat de administratie in XS correct is)
Synchronisatieerrorprogress-match-by-sequence-oldest-first.matched-progress-too-different-by-startdateVan de te synchroniseren ziekmelding wordt de volgorde én de ingangsdata van de verschillende verloopregels tussen AFAS en XS vergeleken. Deze melding wordt gegeven als in de vergelijking van de 'N-de' verloopregel tussen AFAS en XS de ingangsdatum van de percentagewijziging meer dan 7 dagen uit elkaar ligt. Dit dient handmatig in AFAS gecorrigeerd te worden (ervan uitgaande dat de administratie in XS correct is)
VerificatieerrorAfter synchronisation, illness registration in Afas appears different than in XpertSuite. Please review this employee's illness registrationsNa de synchronisatie wordt in de vergelijking tussen AFAS en XS toch nog een verschil gevonden. Denk hierbij aan:
  • verzuimpercentages (tot 2 cijfers achter de komma)
  • verzuimclassificaties
  • indicatie of een verzuimdossier samengesteld is of niet



Onderstaande GetConnector is compatibel met Profit 3.


Laatste update GetConnector: 08-07-2024