Behandelaar vanuit persoonskaart archiveren

Probleemstelling
Vaak is TOPdesk ingericht met een automatische synchronisatie van medewerkersgegevens vanuit een bronsysteem, zoals Active Directory. Gaat een medewerker uit dienst? Dan wordt de persoonskaart automatisch gearchiveerd. Het is echter maar zelden het geval dat ook behandelaarsaccounts automatisch worden gearchiveerd bij uitdiensttredingen. Dit is echter wel aan te raden, vanuit het perspectief van informatiebeveiliging. Behandelaars kunnen immers heel veel informatie opzoeken.

Analyse
TOPdesk heeft twee ingangen: de Selfserviceportal en het behandelaarsgedeelte. Als je te maken hebt met een automatische import van persoonsgegevens uit Active Directory, dan is het waarschijnlijk dat de loginnamen voor beide ingangen overeen komen. De logica van deze actiereeks is dus: als een persoonskaart wordt gearchiveerd, en er bestaat een behandelaar met exact dezelfde loginnaam, archiveer dan automatisch de behandelaar daarna.

Actiebeheer: actie
JSON
Importeer de JSON als actiereeks en vul de variabelen met de juiste waarden (URL en authenticatie-string).

Actiebeheer: gebeurtenis
Kaartsoort: Persoon
Soort: Kaartdatum
Kaartdatum: 1 minuut na Datum/tijd van wijziging
Voorwaarden: Gebeurtenis treedt op wanneer “Kaart is gearchiveerd” is Waar.

Randvoorwaarden in TOPdesk
De eerste randvoorwaarde is: de loginnaam van de persoonskaart en die van het behandelaarsaccount moeten overeen komen. Deze loginnamen zijn overigens niet hoofdlettergevoelig, dus paulm en PAULM werkt. De tweede randvoorwaarde is dat er een standaard Reden-voor-archiveren moet zijn ingesteld (Instellingen -> Functionele instellingen -> Algemene opzoeklijsten -> Reden voor archiveren).

Aandachtspunten
De gebeurtenis is gebouwd op 1 minuut na Datum/tijd van wijziging. Dit zorgt ervoor dat de actiereeks ook werkt bij automatische imports, die anders geen gebeurtenissen oproepen.

NB
Er zat een schoonheidsfout in de actiereeks: de actiereeks ging ook af wanneer er geen behandelaarskaart gevonden kon worden bij de persoonskaart. In de uitvoeringslogs verscheen daarom een rood kruis. Deze fout is sinds vandaag verholpen.

Yay! tweede actie reeks en werkend! Ben er blij mee, al is de toepasbaarheid voor ons misschien beperkt. (Onze ‘uitdienst’ procedure duurt lang: meestal archiveer ik behandelaars direct na hun laatste werkdag, terwijl personen soms wel maanden in een administratieve pijplijn zitten voor de bij mij uitkomen. Evengoed een prima vangnet, en waardevol als voorbeeld)

Vraag: waaruit volgt de tweede randvoorwaarde precies? De loginnamen zie ik terug in de if clause, de reden-voor-archiveren niet.

Ik heb een ‘Reden-voor-archiveren’ toegevoegd door de juiste id toe te voegen aan de body van stap twee. Ik neem aan dat als de behandelaars kaart al eerder gearchiveerd is, dat deze actiereeks dan evengoed gewoon wordt uitgevoerd? Wanneer wil je de randvoorwaarden in de actiereeks opnemen, en wanneer ben je beter af zo’n voorwaarde af te vangen in de gekoppelde gebeurtenis? Hier schuilt aanzienlijk potentieel voor verwarring lijkt me …

De tweede randvoorwaarde noem ik om de actiereeks simpel te houden. Is er namelijk geen standaard reden-voor-archiveren, dan moet je er 1 meegeven in de actiereeks (zoals jij dus hebt gedaan).
Maar die laatste stap is vrij complex (opzoeken van de juiste unid en het op de juiste plek invullen). De uitleg zou dan veel uitgebreider moeten terwijl de toegevoegde waarde maar weinig is. Dat vond ik niet nodig.

Aha, helder! Ja. bedankt voor de verheldering.

Je actiereeksen handleiding is een bron van inspiratie.

Nog een vraag over deze oplossing;

Als ik de action sequence uitvoer zonder event, gaat ie dan kijken of alle tot op heden gearchiveerde personen en behandelaarsaccount en hebben -> en zo ja, deze dan archiveren?

De uitgangsbasis in deze is dus de persoonskaart, dus behandelaren die geen persoonskaart hebben hoeven niet bang te zijn dat hun account opeens disabled is?

Het is best wel een ingrijpende action sequence (de 1e keer). Vandaar mijn voorzichtigheid.

Als je deze actiereeks niet aan een event koppelt maar gewoon aftrapt op 1 persoonskaart, dan gaat ie alleen die behandelaar archiveren. Dus hij gaat dan niet 1 voor 1 alle personen & behandelaars af.
En inderdaad, behandelaren die geen persoonskaart hebben, die worden niet geraakt.