US English (US)
FR French
DE German
PL Polish
SE Swedish
FI Finnish

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

Swedish
US English (US)
FR French
DE German
PL Polish
SE Swedish
FI Finnish
  • Log in
  • Home
  • Identitetsstyrning och administration ( IGA )
  • IGA lösningsbibliotek
  • Instruktioner och uid
  • Konfigurera kontakter

HR-koppling (import)

Contact Us

If you still have questions or prefer to get help directly from an agent, please submit a request.
We’ll get back to you as soon as possible.

Please fill out the contact form below and we will reply as soon as possible.

  • Tjänstehantering
    Matrix42 Professional Lösning Matrix42 Core lösning Hantering av företagstjänster Matrix42 Intelligens
  • Identitetsstyrning och administration ( IGA )
    IGA översikt IGA lösningsbibliotek
  • Plattform
    ESM ESS2 ESS Efecte Chat för tjänstehantering Efecte-integrationer Tillägg
  • Versionsinformation för M42 Core & Pro , IGA , konversations-AI
    2025.3 2025.2 2025.1 2024.2 2024.1 2023.4 2023.3 2023.2 2023.1 2022.4 2022.3 Publiceringsinformation och policyer
  • Annat material
    Villkor och uid Tillgänglighetspolicyer
  • Tjänster
+ More
    • Tjänstehantering

    • Identitetsstyrning och administration ( IGA )

    • Plattform

    • Versionsinformation för M42 Core & Pro , IGA , konversations-AI

    • Annat material

    • Tjänster

HR-koppling (import)

HR-kontakt

Är en del av Efecte Connects inbyggda kopplingar och använder färdiga skript från Efecte Provisioning Engine anpassade skriptkoppling. Med denna inbyggda HR-koppling kan kunder importera personliga och organisatoriska data från sin HR-lösning och kopplingen har utformats för IGA -lösningar, men den kan modifieras för att användas i alla Efecte-lösningar. Kopplingen stöder XML-, CSV- och JSON-format, och den innehåller datavalidering och jämförelse med tidigare filer.

När HR-kopplingen tas i bruk är kundens ansvar

  1. Generera fil(er) enligt instruktionerna i kapitlet "generera fil från HR-lösning"
  2. Schemalägg filgenerering enligt överenskommet schema i leveransen
  3. Pro SFTP-server (och åtkomster) dit filer levereras och varifrån HR-anslutningen kan hämta fil(er)

Hur fungerar HR-kopplingen?

Allmän översikt

HR-anslutningen använder Efecte Provisioning Engine (anpassad skriptanslutning) för att läsa data från filen. Anslutningen är utformad för att användas i IGA lösningars användarlivscykelhantering. För att använda den för andra ändamål krävs att skript exporteras från värddatorn och modifieras enligt kundens krav. Observera att det också är möjligt att skapa ett nytt skript från början och använda en anpassad skriptanslutning för att validera och importera det.

HR-anslutningen stöder en eller flera arbetsperioder, så länge arbetsperioderna genereras enligt beskrivningen i kapitlet "generera fil från HR-lösning".

Grundprinciper för HR-koppling,

1. Anslutningen använder extra argument, definierade i den schemalagda provisioneringsuppgiften, för att hitta filen från sökvägen (om extra argument saknas stoppas processen)

2. Filer transformeras till JSON-format (dict) och lagras som JSON

3. Varje fil kan köras som en fullständig eller delvis körning

4. Delvis körning jämför alltid data med den arkiverade filen (om en arkivfil saknas stoppas processen)

5. I JSON-formaterade filer är alla mappade attribut obligatoriska fält och uppgiften stoppar importen om obligatoriska attribut saknas i något av de importerade objekten. CSV-formatet fungerar annorlunda, det räcker att alla mappade attribut hittas från rubrikraden som kolumner.

6. Anslutningsprogrammet importerar IGA administratörsuppgifter till IGA lösningen, inklusive fel och JSON-filer som innehåller arkiverade och importerade rader, efter att importen har utförts.

Bra att komma ihåg!

Granskning (efter att den schemalagda uppgiften har sparats för HR-anslutningen) av extra argument kräver att lösenordet sparas på en säker plats för att implementera eventuella ändringar av argumenten.

Anslutningsfiler,

Fil (på EPE-worker-behållaren) Beskrivning

/tmp/custom-provisioning-scripts/3_log.txt
Innehåller loggar, numret i filnamnet är task-id.

/tmp/custom-provisioning-scripts/3_output.json
Inkluderar de rader som har godkänts i valideringen och som ska importeras till IGA lösningen.
Numret i filnamnet är task-id.
/tmp/custom-provisioning-scripts/data/archive/(data_type)_archive.json Lagrar alla rader från filen som har körts, inklusive giltiga och ogiltiga. Filen skrivs över varje körning.
/tmp/custom-provisioning-scripts/data/archive/error_(data_type)_archive.json Lagrar rader som inte klarade valideringen under körningen. Dessa rader importeras inte till IGA lösningen. Filen skrivs över varje körning.
/tmp/custom-provisioning-scripts/only_scheduled/ IGA Connector.py Anslutningsskript
Det kan finnas många skript i den mappen och från Task UI måste du välja vilket skript som ska köras i vilken uppgift.

/tmp/custom-provisioning-scripts/misc-files/translation.json
1. Används för att översätta rapportärenden till ett givet språk.
2. Nya språk kan läggas till genom att lägga till "språk", t.ex. "de" eller "en", under alla fall med nyckeln "text". Varje rapportfall måste ha ett nytt språk, annars får kopplingen fel.
3. För att använda ett specifikt språk behöver extra argument nyckeln "language" med värdet som hittats från translation.json

Generera fil från HR-lösning

HR-anslutningen förväntar sig att filen genereras från HR-lösningen baserat på följande logik och att filen lagras på kundens SFTP-server, där anslutningen kan hämta filen/filerna. Observera att kodningen måste vara UTF-8.
Om du använder csv-filformat är standardfältavgränsaren som används av HR-kopplingsskriptet ; (semikolon).

Hur filen genereras varierar beroende på vilken HR-lösning kunden använder, till exempel kräver särskilt IGA lösningen att information tas emot från det förflutna och från framtiden.

För Workday HR-lösningar rekommenderas det att skapa en anpassad rapport till Workday, som rapporterar nödvändig information, och använda json-format för att formatera informationen.

Bra att veta!

Ibland kan HR-lösningar generera en ny tidsstämpel för senaste uppdatering i situationer när information inte behöver levereras till Efecte-lösningen, till exempel om löneutbetalningar ofta körs före löneutbetalning. Denna onödiga data orsakar mycket provisionering mot målsystemen och det tar vanligtvis tid för kundens administratörer/agenter att lösa dessa problem.

Det rekommenderas att validera data innan full automatisering kan startas baserat på mottagen information (datakvaliteten är säkerställd), och Efectes IGA lösning innehåller möjligheten att simulera förändringar (läs mer härifrån ) .

Exempel på vilken information som används för att generera den erforderliga filen,

Logik Ytterligare information
Alla användare med aktiv(a) arbetsperiod(er) Användare väljs ut baserat på arbetsperiodens datum
Alla användare med aktiv arbetsperiod i framtiden En månad framåt
Alla användare med aktiv arbetsperiod tidigare En månad tidigare, detta behövs om ändringar i användarinformationen görs efter att anställningen redan har upphört.
Användare sorteras baserat på unikt ID Unikt ID kan vara antingen anställningsnummer eller personnummer.
Tidsstämpel för senaste uppdatering Användare kan väljas baserat på tidsstämpeln för senaste uppdatering, men vänligen kontrollera med kundens HR-specialist vilka ändringar som uppdaterar tidsstämpeln.

 

Rekommendationer relaterade till SFTP-serverns mappstruktur

Om kunden vill använda HR-anslutningen för att importera många olika typer av data rekommenderas det att ha en HR-anslutning per datatyp.

Om kunden till exempel vill importera organisationer och användare, bör de ha två kopplingar, som "HR-kopplingsorganisationer" och "HR-kopplingsanvändare".

Och om de två connector-filerna finns på samma ftp-server, kan mappstrukturen till exempel vara:

/sftp/iga/in/organisation

/sftp/iga/in/organisation/arkiv

/sftp/iga/in/användare

/sftp/iga/in/användare/arkiv

En datamapp bör endast innehålla en fil åt gången.

Med den mappstrukturen kan du använda dessa skriptparametrar för HR-anslutningsorganisationer:

“sftp_remote_path_data”:"/sftp/iga/in/organization",

“sftp_remote_path_archive”:"/sftp/iga/in/organization/archive",

“file_path”:"./organization/*.csv"

Och liknande olika skriptparametrar för HR-anslutningsanvändare.

Parametrar, validering och undantag

Parametrar

Används för att definiera inställningar för HR-anslutningen, vilka valideras när skriptet körs.
Kom ihåg att förvara lösenordet på ett säkert ställe, ifall du behöver granska parametrar efter att du har sparat den schemalagda uppgiften.

HR-kopplingen använder följande parametrar,

Parameter Beskrivning Obligatorisk / valfri
fil_sökväg Sökväg och filmönster, var filen finns. Obligatorisk
datatyp Värden: kostnadsställe, organisation, titel eller arbetsperiod. Obligatorisk
uppdateringsgräns Hur många uppdateringar är tillåtna för Efecte-lösningen. Obligatorisk
körtyp Körningstypen anger om jämförelse med föregående fil ska göras.
Värden: full belastning eller partiell, standard är partiell
Obligatorisk
override_update_limit Åsidosätter uppdateringsgränsen om antalet uppdateringar är större än den angivna gränsen. Värden är sant eller falskt, standardvärdet är falskt. Obligatorisk
minsta_radantal Vilket är det minsta antalet rader som bör finnas i filen. Frivillig
webbapi_användare Web API användare (ESM-användare) för att skapa rapporter. Kräver behörigheter för att skapa och uppdatera IGA administratörsuppgifter. Obligatorisk
webbapi_lösenord Lösenord för webb API användare. Obligatorisk
webbapi_url URL till Efecte-lösningsmiljön. Obligatorisk
rapportmallkod Målmallkod. Obligatorisk
rapportmappkod Kod för målmapp. Obligatorisk
felsöka Aktiverar felsökningsloggning. Värden är sant eller falskt, standardvärdet är falskt.
Om du ställer in debug till true får du mer detaljerade loggmeddelanden, men uppgiften körs något långsammare. Loggar kan hittas från epe-worker container /custom-provisioning-scripts -mappen.
Frivillig

Godkännande

Validering innebär att HR-anslutningen validerar att all obligatorisk information relaterad till användare tas emot från HR-lösningen och om den saknas skapar HR-anslutningen IGA administratörsuppgift som standard.

Kunden kan definiera fler attribut som ska läsas, utanför listan nedan, men det kräver att HR-kopplingsskriptet modifieras (läs mer i kapitlet om expansionsmöjligheter).

Attribut Beskrivning Obligatorisk / valfri
Efternamn Användarens efternamn, krävs till exempel vid generering av e-postadress till användaren. Obligatorisk
Förnamn Användarens förnamn, obligatoriskt till exempel vid generering av e-postadress till användaren. Obligatorisk
Personnummer / nationellt ID Krävs om valt som unikt ID för användaren (eller till exempel om bank-ID-autentisering också levereras). Obligatorisk / valfri
Anställningsnummer (anställnings-ID) Krävs om det är valt som unikt ID för användaren. Obligatorisk / valfri
Anställningsstartdatum När användarens arbetsperiod påbörjades eller kommer att påbörjas. Obligatorisk
Titel-ID Unikt titel-ID för användarens titel (relation till titelnamn) Obligatorisk
Chefs-ID Unikt ID för användare och chefer, vanligtvis chefers medarbetar-ID Obligatorisk
Organisationsenhets-ID Unikt organisationsenhets-ID (relation till organisationsenhetsnamn) Obligatorisk
Talat namn Kan till exempel användas i en e-postadress, som vanligtvis används i Skandinavien, när användaren kan välja ett av sina officiella namn som det han/hon ska kallas. Frivillig
Efternamn Används ofta för att identifiera användare med samma namn och om namnet "sake" visas används andra namnbokstäver i e-postadressen. Frivillig
Anställningens slutdatum När användares arbetsperiod slutar/avslutas, information som används för att starta processer utanför systemet. Frivillig
Anställningstyp Tillsvidare, tillfällig, timbaserad, extern Frivillig
Är användarhanteraren? Användarens titlar är inte nödvändiga för att alltid ange om användaren är chef, och i vissa HR-lösningar finns denna information separat tillgänglig i ett eget attribut. Frivillig
Titel Namn för användare titel-ID Frivillig
Chefens namn Namn för användares administratörs-ID Frivillig
Användartyp Intern, extern Frivillig
Kostnadsställe Användarens kostnadscenternamn Frivillig
Namn på organisationsenhet Rekommenderas att läsas från HR-lösningen, särskilt i fall där kunden vill uppdatera information om organisationsenheter i kataloger eller applikationer och/eller när automatiserade IGA regler används. Frivillig

Undantag

Kunden kan definiera i vilken mall, mapp och attribut HR-kopplingen genererar följande undantag,

Undantag Beskrivning IGA administratörsåtgärder
Filen har inte mottagits eller är tom Om filen inte finns på kundens SFTP-server eller om den är tom genereras IGA administratörsuppgift för mer detaljerad felsökning. IGA administratören validerar anledningen till varför filen inte genereras från HR-systemet eller varför filen är tom. Filen måste genereras på nytt och HR-anslutningens schemalagda uppgift körs igen.
Användaren saknar ett unikt ID Användare med unika ID importeras och IGA administratörsuppgift skapas för manuell granskning för de användare som saknade information.
Användarens unika ID måste anges i HR-lösningen, filen genereras på nytt och den schemalagda uppgiften körs manuellt.
Schemalagd uppgift saknar extra argument Obligatoriska extra argument är:
fil_sökväg
datatyp
uppdateringsgräns
webbapi_användare
webbapi_lösenord
webbapi_url
rapportmallkod
Extra argument måste läggas till i den schemalagda provisioneringsuppgiften och uppgiften måste köras om.
Arkivfilen saknas Arkivfilen måste hittas för att en delkörning ska kunna slutföras IGA administratörsuppgift för att lösa problemet med saknade filer och när en fil hittas måste den schemalagda uppgiften köras om.
Obligatoriskt fält (objekt) eller värde saknas i fältet Raden är blockerad och importen är slutförd IGA administratören kan se från kopplingsrapporten ( IGA administratörsuppgiften) om några rader har blockerats. Information måste läggas till i källsystemet och filen måste genereras på nytt och köras igen.
Uppdateringsgränsen (update_limit) har överskridits Importen avbryts (körs inte). IGA -administratörsuppgift skapas för att lösa problemet och köra den schemalagda uppgiften igen.
Minsta radkonto har inte överskridits Importen avbryts (körs inte). IGA -administratörsuppgift skapas för att lösa problemet och köra den schemalagda uppgiften igen.
Flera filer som matchar namngivningskriterierna i SFTP-servern Importen avbryts (körs inte). Extra filer måste tas bort och HR-anslutningens schemalagda uppgift måste köras om.

Konfigurationsinstruktioner

Dessa instruktioner uid hur man använder en förkonfigurerad HR-anslutning eller hur man skapar en från början. Observera att det krävs kunskaper i Python-skript för att modifiera skriptet.

Förkunskapskrav

Se till att följande uppgifter är utförda innan du kör den schemalagda uppgiften för HR-anslutningen:

  1. IGA Connector.py-skriptet kan hittas i kundernas test- och produktionsmiljöer
    1. Om den saknas, vänligen kontakta Efectes Service Desk
  2. HR-anslutningen är konfigurerad i kundens Efecte-lösnings testmiljö
  3. HR-kopplingen testas i kundens Efecte-lösnings testmiljö
    1. Skapa nödvändig testdata, testanvändare och testfall
  4. Datakvaliteten har bekräftats av kundernas HR-specialister och framtida IGA administratörer
  5. Filen genereras, schemaläggs och lagras korrekt på kundens SFTP-server
  6. För IGA lösning implementera konfigurationsinstruktioner för användningsfall för användarlivscykelhantering
    1. Informationskort för fastställd arbetsperiod IGA finns på plats
    2. IGA -kontoinformationsdatakort finns på plats
    3. Simuleringsfasen har överenskommits och IGA administratören validerar mottagen data xx tidsperiod före provisionering (när datakvaliteten har säkerställts kan fullständig automatisering aktiveras genom att ändra inställningarna i IGA s informationskort för arbetsperioden).

Allmän uid för schemalagda uppgifter

General g uid ance for scheduled tasks

How to Create New Scheduled Task to import data

For configuring scheduled-based provisioning task, you will need access to Administration / Connectors tab.

1. Open the Administration area (a cogwheel symbol).

2. Open Connectors view.

3. Choose Connector for Scheduled-based task and select New Task
   Note! If connector is not created, you have to choose first New connector and after that New task.

 

4. Continue with connector specific instructions: Native Connectors

 
 

Should I use Incremental, Full or Both?

Scheduled task can be either Incremental or Full -type.

Do not import permissions with AD and LDAP incremental task

Incremental task has issue with permissions importing. At the moment it is recommended not to import group memberships with incremental scheduled task.

On Microsoft Active Directory and OpenLDAP connectors, remove this mapping on incremental task:
 

 

 

Setting on Scheduled tasks:

Incremental type is supported only for Microsoft Active Directory, LDAP and Microsoft Graph API (formerly known as Entra ID) Connectors.

Incremental type means, that Native Connectors (EPE) fetches data from source system, using changed timestamp information, so it fetches only data which is changed or added after previous incremental task run.

When Incremental type task is run for very first time, it does a full fetch (and it marks the current timestamp to EPE database),  thereafter, task uses that timestamp to ask the data source for data that changed since that timestamp (and then EPE updates the timestamp to EPE database for next task run). Clearing task cache doesn't affect this timestamp, so Incremental task is always incremental after first run.
 

Full type is supported for all Connectors.

Full type import fetches always all data (it's configured to fetch) from source system, on every run. 
 

Both Full and Incremental type tasks use also Task cache in EPE, which makes certain imports faster and lighter for M42 system.

By default that task cache is cleared ad midnight UTC time. When cache is cleared, next import after that is run without caching used to reason if data fetched should be pushed to ESM, all fetched data is pushed to ESM. But after that, next task runs until next time cache is cleared, are using EPE cache to determine if fetched data needs to be pushed to ESM or not.

You can configure at what time of day task cache is emptied, by changing global setting in EPE datapump configuration: 

/opt/epe/datapump-itsm/config/custom.properties

which is by default set to: clearCacheHours24HourFormat=0

You can also clear cache many times a day, but that needs to be thinked carefully, as it has impact on overall performance as EPE will push changes to ESM, that probably are already there, example(do not add spaces to attribute value): clearCacheHours24HourFormat=6,12

After changing this value, reboot EPE datapump container to take change into use.

Recommendations:

Have always by default Full type scheduled task.

If you want to fetch changes to data fetched already by full task, more frequently than you can run full task, add also incremental task. Usually incremental task is not needed.

 
 

Recommended Scheduling Sequence

Recommended scheduling sequence, depends how much data is read from Customers system/directory to the Matrix42 Core, Pro or IGA solution and is import Incremental or Full. 

Examples for scheduling, 

Total amount of users  Total amount of groups Full load sequence Incremental load sequence
< 500 < 1000 Every 30 minutes if partial load is not used
Four (4) times a day if partial load is used
Every 10 minutes
< 2000 < 2000 Every 60 minutes, if partial load is not used
Four (4) times a day if partial load is used
Every 15 minutes
< 5000 < 3000 Every four (4) hours, if partial load is not used
Twice a day if partial load is used
Every 15 minutes
< 10 000 < 5000 Maximum imports twice a day, no matter if partial load is or is not used Every 30 minutes
< 50 000 < 7000 Maximum import once a day, no matter if partial load is or is not used Every 60 minutes
Over 50 000 Over 7000 There might be a need for another EPE-worker, please contact Product Owner Separately evaluated


Please note that if there are several tasks running at the same time you may need more EPE-workers. The tasks should be scheduled at different times and can be completed according to the table above. However, if there are more than 6 tasks running at the same time, the number of epeworkers should be increased. It's best practice not to schedule tasks to run at same time, if possible.

Recommendations related to performance
If the amount fo data to be imported is over 10000 concider these things:
Adjust log level of ESM and DATAPUMP to ERROR-level, to lowe the amount of logging during task run
Have as few as possible automations starting immediately for imported datacards (listeners, handlers, workflows), as those make ESM to take longer time handling new datacards.

 
 

Set removed accounts and entitlements status removed/disabled

With this functionality, you can mark account and entitlement status to e.g. Deleted or Disabled, when account or entitlement is removed from source system. Starting from version 2025.3 you can also set status to generic objects (not only to accounts/identities and entitlements/groups). 

For version 2025.3 and newer

In version 2025.3 these settings are moved from properties files to Task UI. Also you can now set these settings for Generic objects, which have not been possible before this version.

There is separate configuration for each scheduled task, and for all mapping types. Here is example of this config on task:

For version 2025.2 and older

This functionality is available for “full” type scheduled tasks.

Settings are on datapump dockers configuration file. To change those parameter values, you need to set those in /opt/epe/datapump-itsm/config/custom.properties file.

Configuration

To enable disabling functionality, datapump config should have these parameters set to true:

disable.unknown.esm.users=true
disable.unknown.esm.groups=true

Those 2 parameters are false by default in 2024.2 and 2025.1 versions. In 2025.2 and newer version those are true by default.

 

Next are these parameters:

personTemplateStatusCodeAttributeKey=accountStatus
personTemplateStatusAttributeDisabledValueKey=Deleted
groupTemplateStatusCodeAttributeKey=status
groupTemplateStatusAttributeDisabledValueKey=5 - Removed

First two attributes should point to the DatacardHiddenState attribute in the User template, and tell which value should be send there when the user is deleted.

By default its accountStatus and Value 5 - Removed on IGA Account template.

All these needs to match with the attribute configuration:

 

1.PNG

Same thing applies for the next two paramaters, but its for Groups.'

If you need to change those parameters in properties file, do changes in Datapump container to file: /opt/epe/datapump-itsm/config/custom.properties and those changes will then survive over container reboot and will be copied on reboot to /opt/epe/datapump-itsm/config/application.properties.

Description

Tasks save their __taskid__ shown as Task Id mapping in the UI to the datacards, its then used to determine if the datacard was added by this task. In case there are multiple tasks with different sets of users.

This field was previously used as datasourceid, but since we moved to the model where connector can have multiple tasks its identifier cannot be used anymore, thats why the field was repurposed as taskid instead.

 

Taking users as an example, when task runs ESM is asked for the list of users that have its taskid in Task Id mapping field, and doesn't have a personTemplateStatusAttributeDisabledValueKey value in the personTemplateStatusCodeAttributeKey

This result is then compared to what the task fetched, and the datacards of users that were not fetched have their personTemplateStatusattribute set to value specified in the config - 5 - Removedby default.

Example log below shows described process and informs that one user was removed.

 

2.PNG

Same thing applies to groups but groupTemplateStatusattributes are used instead.

Notes

  • Feature works only with full fetch scheduled tasks..
  • No support for generic templates yet, only identity and access
  • When migrating from the previous versions where datasourceid was still used it needs to run at least once to set its taskid’s in the datacards first.
  • EPE identifies Disabled users or groups as the ones that were removed from the AD, at the present we do not support statuses related to the entity beign active or not.
  • EPE does not enable users back on its own.
  • If more than one tasks fetches the same users or groups it may overwrite the taskid in the datacard depending on which task ran last. It is suggested that many full type tasks are not fetching same user or group.
  • Always do configuration file changes to custom.properties, do not change only application.properties as those changes are lost on container reboot if you have not done same changes to custom.properties.
 
 

 

Konfigurera HR-anslutning och schemalagd uppgift

För att få åtkomst till kopplingshantering måste användaren ha behörighet till Efecte Platform-konfigurationen.

1. Öppna administrationsområdet för Efecte (en kugghjulssymbol).
2. Öppna kopplingsvyn.
3. Välj ny kontakt

2. Välj datakälltyp som anpassad backend

3. Uppfylla information

  • Fyll i ett unikt kopplingsnamn för kopplingen. Observera att namnet inte kan ändras i efterhand.
  • Välj IGA Connector.py-skript från provisioneringsskriptfältet
  • Lösenord för parameterkryptering behövs för att dölja/visa parametrar efter att anslutningen har sparats
  • Web API användare behövs när HR-anslutningen skriver data till kunder Efecte-lösning
  • Lösenord för webb API behövs när HR-anslutningen skriver data till kunder Efecte-lösning

4. Visa och modifiera parametrar enligt kundens definitioner

  • Spara krypteringslösenordet på ett säkert ställe. Du kommer att behöva det senare om det finns behov av att justera parametrarna.

    Exempel på parametrar:
    {"objectGUID_field_name":"objectGUID", "sftp_server_fqdn":"transfer.xx.com", "sftp_server_ssh_port_number":"22", "sftp_username":"username_here", "sftp_password":"username_here", "sftp_remote_path_data":"/sftp/data", "sftp_remote_path_archive":"/sftp/archive",
    "file_path":"./data/workperiod*.csv", // Path and file pattern where file is located. Mandatory value
    "data_type":"workperiod", // Values: costcenter, organization, title or workperiod. Mandatory value
    "run_type":"partial", // Run type specifies if comparison to previous file will be done. Values: full or partial. Optional value, default is 'partial'
    "update_limit": 100, // How many updates are allowed to IGA System. Mandatory value
    "override_update_limit":false, // overrides update limit, if amoun of updates is more than given limit. Values: true or false. Optional value, defaul is 'false'
    "minimum_row_count": 10, // What is the minimum amount of rows, that should exist in the file. Optional value
    "webapi_user": " IGA .Web API ", // Web API user for report creation. Requires Create and Read permissions to IGA Adminisitration task. Mandatory value
    "webapi_password": "aeiou", // Web API user's password. Mandatory value
    "webapi_url":"https://eisdemo.efectecloud-demo.com", // URL to ESM environment. Mandatory value
    "report_template_code":" IGA WorkflowTaskInformation", // Target template code. Mandatory value
    "report_folder_code":"iga_tasks", // Target folder code. Mandatory value
    "debug": false, // Enables debug logging. Values: true of false. Optional value, default is 'false'
    "language": "en" // Sets IGA Administration Task report language. Optional value, default is 'en'
    }

5. Skapa en ny schemalagd uppgift för HR-anslutningen

6. Fyll i uppgiftsuppgifter

  • Unikt uppgiftsnamn för kopplingen, observera att namnet inte kan ändras i efterhand.
  • Uppgiftsanvändning är inställd på schemalagd
  • Mappningstypen är inställd på generisk (en mall)
  • Attributnamn för uid . Skrev namnet på din indatakolumn/attribut, som innehåller en unik identifierare för raden. Till exempel: objectGUID

7. Fyll i felinformation

Valfria inställningar för felhantering. Om en schemalagd uppgift misslyckas kan ett datakort skapas till Efecte ESM som visar felet. Om felinställningar har definierats behöver administratören inte manuellt kontrollera statusen för schemalagda uppgifter.

  • Felmall – Välj en mall för datakort som skapas vid fel under etableringen (anslutning till datakällor, timeouts etc.)
  • Felmapp – Välj mapp där feldatakortet lagras.
  • Felattribut – Välj ett attribut där i felmallen felinformationen ska lagras.

8. Fyll i mappningar för generisk mall

Generiska data läses till valfri mall som användarna önskar och det är obligatoriskt att ange målmapp, datakälla-ID och unika värden som används för att identifiera data mellan kundernas HR- och Efecte-lösning.

  • Målmall – Välj en mall för att definiera attributmappningar
    Välj en mall för att definiera attributmappningar
  • Målmapp – Välj en mapp från en lista med mappar. Listan begränsas för att matcha kompatibilitet med vald mall.
  • Attributmappningar
    1. Efecte-mallattribut - till vilket attributet i Efecte-katalogen är mappat.
    2. HR-attribut - vilket attribut från filen mappas till Efecte

9. Om du behöver ändra själva skriptet måste det laddas ner från kundens värddator, modifieras och laddas upp igen.

  • Om du inte har åtkomst till värddatorn, vänligen kontakta Efectes Service Desk för hjälp.

10. Spara dina ändringar

11. Innan du kör den schemalagda uppgiften för HR-anslutningen,

  • Kontrollera att all konfiguration relaterad till arbetsflöden och inställningar i datakort är på plats.
  • När du kör för första gången, se till att provisionering är inaktiverat för kataloger och applikationer

12. Kör uppgiften manuellt eller vänta tills den schemalagda körningen har startats.

13. Kontrollera att data har lästs till korrekta datakort och att korrekta attribut finns på plats.

14. Felsökning

  • Om felmall används, kontrollera korrekt datakort
  • Kontrollera historiken för schemalagda uppgifter från kopplingshanteringen
  • Kontrollera Efecte Provisioning Engine loggar

Bra att komma ihåg!

Kom ihåg att spara alla lösenord på ett säkert ställe.

Är HR-kontakten lämplig för mitt användningsfall?

Välj HR-koppling om:

  • HR-filen är i XML-, CSV- eller JSON-format
  • Kunden har en SFTP-server
  • HR-information tas emot från det förflutna och från framtiden
  • Datatypen är kostnadsställe, organisation, titel eller arbetsperiod
  • Data innehåller minst efternamn, förnamn, anställningsstartdatum, titel-ID, chefs-ID, organisationsenhets-ID
  • Data innehåller minst ett av dessa unika värden: Personnummer / nationellt ID / Anställningsnummer

Hur man anpassar importen

How to create and modify custom Python scripts

General info

Generic Python Script connector comes with couple out-of-the box Python scripts. You should not modify those. Instead, if you need to make modifications to those, copy-paste those to new name and then do your modifications to newly named python script file. And as last step, modify your connector to use that script.

Work order:

  1. Create your custom scheduled or task-based script
  2. Take it into use to connector from Connectors UI

Scheduled scripts

How to take your custom python script into use for scheduled tasks, guidance for 1 host and 1 worker environment:

Note! Do not change "default" .py files which came with environment installation.

Copy your customly named (in this example mypythonscript.py) python script to these folders from HOST (remember to use correct tenant_name in path):

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_scheduled

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-worker-1/files/custom-provisioning-scripts

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts

 

Change your custom python script file permission to 755 on all those above locations where you copied your script(in this example mypythonscript.py) (remember to use correct tenant_name in path):

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_scheduled/mypythonscript.py

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-worker-1/files/custom-provisioning-scripts/mypythonscript.py

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/mypythonscript.py

 

If you have more hosts, repeat on every host.

If you have more workers, repeat to every worker(check that worker folder name is correct).

 


 

Event-based scripts

How to take your custom python script into use for event-based tasks, guidance for 1 host environment:

Note! Do not change "default" .py files which came with environment installation.

Copy your customly named (in this example mypythonscript.py) python script to these folders from HOST (remember to use correct tenant_name in path):

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_event

cp mypythonscript.py /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts

 

Change your custom python script file permission to 755 on all those above locations where you copied your script(in this example mypythonscript.py) (remember to use correct tenant_name in path):

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/only_event/mypythonscript.py

chmod 755 /var/lib/efecteone/tenant_files/{tenant_name}/epe-master/files/custom-provisioning-scripts/mypythonscript.py

 

If you have more hosts, repeat on every host.

 

Example/base for custom Event-based python script 

This script reads attribute values from Connector and from Orchestration node. And prints values to logs. You can use this as a starting point for your own custom python script for Event-based tasks.

#!/usr/bin/python3

import json
import sys
import logging

def main():
    # Configure logging, change log file name
    logging.basicConfig(filename='python_event_task_abc.log', level=logging.INFO, format='%(asctime)s - %(message)s')
    
    # Read inputs from stdin
    lines = sys.stdin.read().splitlines()

    if len(lines) != 2:
        print("Error: Expected exactly two lines of input.")
        raise Exception("Expected exactly two lines of input.")

    # Parse the first line, this contains connector variables
    try:
        connector_parameters = json.loads(lines[0])
        host = connector_parameters.get('host', None)
        password = connector_parameters.get('password', None)
        logging.info(f"Connector parameters, Host={host}")
        # read custom connector parameters here
    except json.JSONDecodeError:
        raise Exception("Connector parameters is not a valid JSON string.") 

    # Parse the second line, this contains mappings data from template datacard
    try:
        task_mappings = json.loads(lines[1])
        logging.info(f"Task mappings JSON: {task_mappings}")
        #read task mappings data here

        # Implement your logic here

        
    except json.JSONDecodeError as e:
        raise Exception("Task mappings is not a valid JSON string.") from e
        # Exceptions raised are controlling workflow orchestration node flow, on exception it goes to Exception path, otherwise it goes to Completed path. Exception raised can be seen on Provisioning exception attribute value.
    except Exception as e:
        raise Exception("An unexpected error occurred") from e

if __name__ == "__main__":
    main()

 
 

 


Take customly named script into use to connector

How to take your customly named Python script into use, by selecting it from Connectors UI. Select your script from connectors Provisioning script -dropdown:

 

 

Implementation and work estimations

Only Matrix42 has access to host, which is needed for these custom scripts to be installed.

These expansion possibilities always need Matrix42 consultants review, before implementation and work estimations can be agreed.

 

 

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • Konfigurera: EPE Skapa datakort för att rikta in sig på ESM
  • Konfigurera: EPE Ta bort datakort från mål-ESM
  • Konfigurera: EPE Jira Cloud Connector

Copyright 2026 – Matrix42 Professional.

Matrix42 homepage


Knowledge Base Software powered by Helpjuice

0
0
Expand