IA-systemets
Windows Communication Foundation
tjänster
Senast uppdaterad 3 oktober 2016
Sida 2 av 32
INNEHÅLL
1. INLEDNING ................................................................................................................................. 3
2. ÖVERSIKT .................................................................................................................................. 4
3. KONFIGURATION ...................................................................................................................... 5
3.1. Servicekonto ......................................................................................................................... 5
3.2. Roller .................................................................................................................................... 7
3.3. Lösenord för nya användare ................................................................................................ 8
4. HÄMTA DATA FRÅN IA-SYSTEMET ......................................................................................... 9
4.1. Exportera senaste händelse ................................................................................................ 9
4.2. Exportera antal händelser .................................................................................................. 11
4.3. Exportera åtgärder ............................................................................................................. 13
4.4. Exportera händelser ........................................................................................................... 15
4.4.1. Appendix ..................................................................................................................... 16
4.5. Exportera Flaggade händelser ........................................................................................... 17
5. SKICKA DATA TILL IA-SYSTEMET ......................................................................................... 19
5.1. Importera organisationen ................................................................................................... 19
5.2. Importera användare – Hierarkisk datastruktur .................................................................. 22
5.3. Importera användare – Flat datastruktur ............................................................................ 27
5.4. Importera åtgärder .............................................................................................................. 30
Sida 3 av 32
1. INLEDNING
I IA-systemet finns olika tjänster som kan användas för integrationer med externa system.
Importtjänster syftar till att automatisera och förenkla administrationen av organisationer i IAsystemet, exporttjänster används för att presentera information som finns i IA-systemet i ett
externt system. Tjänsterna möjliggör även integration med ett arbetsordersystem, där arbetsorder
kan hämtas från IA-systemet och uppdateras i IA-systemet.
Alla tjänster är byggda på WCF (Windows Communication Foundation) och kan anropas av
externa system oberoende av vilken plattform eller vilket programmeringsspråk som används.
I listan nedan visas adressen till WCF för varje servermiljö. På dessa platser finns även en länk
till WSDL för tjänsterna samt kodexempel. WSDL står för Web Services Description Language
och är en XML-baserad standard för webbtjänster. WSDL anger hur tjänsten ska anropas samt
beskriver detaljerat vilka datatyper, parametrar och objekt som används vid kommunikation med
tjänsten.
Servermiljö
URL
Acceptanstestmiljö
https://iaat.afaforsakring.se/IAIntegrationWCF2/IaIntegrationSi.svc
Produktion
https://prevention.afa.se/IAIntegrationWCF2/IaIntegrationSi.svc
Alla anrop till tjänsterna ska ske med HTTPS. Vid utveckling av funktionalitet för att kunna anropa
tjänsterna ska acceptanstestmiljön används som testserver. Certifikaten kan laddas ner via
adresserna ovan.
Sida 4 av 32
2. ÖVERSIKT
Service
Beskrivning
IsAlive
Testar att tjänsten är aktiv. Anropas utan
parametrar och returnerar ett svarsobjekt som
innehåller ett booleskt värde.
IsAliveWithDependencies
Testar att tjänsten är aktiv och har koppling till
databas. Anropas utan parametrar och
returnerar ett svarsobjekt som innehåller ett
booleskt värde.
GetLatestOccurrence
Hämtar senaste händelse i organisationen
eller i en specifik enhet. Detta gäller för alla
händelser förutom arbetssjukdom.
GetOccurrenceCountByOrganizationalUnit
Hämtar antalet händelser i organisationen
eller i en specifik enhet för vald period.
GetAction
Hämtar åtgärder för vald period.
SaveOrganizationalUnitsWithLogin
Importerar organisationsstrukturen.
SaveUsers
Importerar användare med en hierarkisk
datastruktur.
SaveUsersFlat
Importerar användare med en flat
datastruktur.
SaveAction
Importerar åtgärder.
GetOccurrenceExcelData
Hämtar ett Exceldokument med händelser för
vald period.
GetFlaggedOccurrence
Hämtar flaggade händelser i organisationen
eller för en specifik enhet
Sida 5 av 32
3. KONFIGURATION
3.1. SERVICEKONTO
För att kunna använda WCF tjänsterna behövs en användare med rollen Servicekonto i er
organisation. Denna användare skickas med i anropen av tjänsterna och identifierar vilken
organisation som anropar dem. Den skapas av er superanvändare enligt instruktionerna nedan,
och måste skapas både i acceptanstestmiljön och i produktionsmiljön.
1. Klicka på knappen Admin och fliken Roller.
2. Välj Servicekonto i vallistan Välj roll.
3. Klicka på knappen Spara längst ner på sidan för att aktivera rollen.
Så fort rollen Servicekonto är aktiverad kan man skapa en användare med den rollen enligt
följande steg:
1. Klicka på knappen Admin och fliken Användare.
2. Fyll i fälten Förnamn och Efternamn. Använd något ”allmänt” namn som t.ex. Vårt
Servicekonto.
3. Ange Användarnamn och Lösenord.
Sida 6 av 32
4. Fälten Anställningsenhet, Telefon och E-post samt kryssrutan Extern kontaktperson
lämnar du tom.
5. Välj rollen Servicekonto. IA-systemet väljer automatiskt att rollen ska gälla för hela
organisationen.
6. Bestäm, med hjälp av vallistan till höger om rollen, vilka händelsetyper som ska kunna
1
hanteras av servicekontot.
7. Klicka på Skapa.
1
Vill du markera flera händelsetyper håller du ner tangenten Ctrl.
Sida 7 av 32
3.2. ROLLER
För att kunna importera användare till IA-systemet måste de roller som berörs av importen ha
minst en händelsetyp förvald. De roller man kan importera är Chef, Händelseansvarig och
2
Skyddsombud samt Utredare och åtgärdsutförare . Er superanvändare anger förvalda
händelsetyper för dessa roller enligt följande steg:
1. Klicka på knappen Admin och fliken Roller.
2. Välj i vallistan under Välj roll en av rollerna Chef, Händelseansvarig, Skyddsombud
och Utredare och åtgärdsutförare.
3. Markera de händelsetyper som ska vara förvalda i listan Händelsetyper.
3
4. Vill du att dessa händelsetyper ska vara förvalda när du skapar nya användare med den
rollen, klickar du på den gröna knappen med två pilar.
5. Vill du lägga till dessa händelsetyper för samtliga användare som har rollen, klickar du på
den gröna knappen med tre pilar.
6. Dina val flyttas till den högra listan, och de nya inställningarna sparas direkt utan att du
behöver klicka på Spara.
7. Upprepa steg 2 till 6 för de andra rollerna som ni vill hantera genom importen.
2
3
Det är inte möjligt att importera rollen Utredare och rollen Åtgärdsutförare.
Vill du markera flera alternativ samtidigt håller du ner tangenten Ctrl och vill du markera flera alternativ i rad håller du ner
tangenten Shift.
Sida 8 av 32
3.3. LÖSENORD FÖR NYA ANVÄNDARE
För att kunna importera användare till IA-systemet måste ni ha angett ett standardlösenord för er
organisation. Er superanvändare kan ange ett standardlösenord enligt följande steg:
1. Klicka på knappen Admin och fliken Användare.
2. Expandera rutan för Generella lösenordsinställningar
3. Fyll i det lösenord som ska gälla alla nya användare i rutan Lösenord.
4. Klicka på Spara.
Sida 9 av 32
4. HÄMTA DATA FRÅN IA-SYSTEMET
4.1. EXPORTERA SENASTE HÄNDELSE
Metod: GetLatestOccurrence
Denna tjänst hämtar den senast registrerade händelsen av angiven händelsetyp. Händelsen kan
hämtas från hela organisationen eller en specifik enhet. Tjänsten kan användas för alla
händelsetyper förutom arbetssjukdom.
Webbservicen anropas med ett XML-objekt som innehåller följande element:

IncludeContractors: Anger om entreprenörer ska inkluderas i sökningen.

IncludeLight: Anger om händelser som har statusen Rapporterad ska inkluderas.

IncludeSubUnits: Anger om den valda enhetens underenheter ska inkluderas.

OccurrenceType: Typ av händelse som ska hämtas.

OrganizationalUnitName: Namnet på enheten där händelsen ska hämtas. Blank = hela
organisationen.

OrganizationalUnitType: Anger hur inskickad enhet ska hanteras i sökningen

o
Employment: enheten används som anställningsenhet
o
Occurrence: enheten används som händelseenhet
o
Both: enheten används som antingen händelseenhet eller anställningsenhet
User: Servicekontots namn och lösenord.
Exempeldata:
<GetLatestOccurrence>
<req>
<IncludeContractors>true</IncludeContractors>
<IncludeLight>true</IncludeLight>
<IncludeSubUnits>true</IncludeSubUnits>
<OccurrenceType>Accident</OccurrenceType>
<OrganizationalUnitName>Enhet ABC</OrganizationalUnitName>
<OrganizationalUnitType>Both</OrganizationalUnitType>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
</req>
</GetLatestOccurrence>
Sida 10 av 32
Webbservicen skickar ett XML-svarsobjekt som innehåller resultatet för anropet. Följande
element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

CourseOfEvent: Beskrivning av händelsen.

OccurrenceId: Händelsens ID i IA-systemet.

OccurrencePeriod: Datum och klockslag när händelsen inträffade.

OccurrenceType: Händelsetyp i klartext.

OrganizationalUnitName: Namnet på enheten där händelsen inträffade.
Exempeldata:
<GetLatestOccurrenceResponse>
<GetLatestOccurrenceResult>
<ErrorText />
<CourseOfEvent>Klämde fingret på nedtagningsbordet</CourseOfEvent>
<OccurrenceId>7858585</OccurrenceId>
<OccurrencePeriod>2015-02-06T04:00:00</OccurrencePeriod>
<OccurrenceType>ZeroAccident</OccurrenceType>
<OrganizationalUnitName>Enhet ABC</OrganizationalUnitName>
</GetLatestOccurrenceResult>
</GetLatestOccurrenceResponse>
Sida 11 av 32
4.2. EXPORTERA ANTAL HÄNDELSER
Metod: GetOccurrenceCountByOrganizationalUnit
Hämtar antalet händelser som har registrerats i organisationen eller i en specifik enhet under
angiven tidsperiod.
Webbservicen anropas med ett XML-objekt som innehåller följande element:

IncludeContractors: Anger om entreprenörer ska inkluderas i sökningen.

IncludeLight: Anger om händelser som har statusen Rapporterad ska inkluderas.

IncludeSubUnits: Anger om den valda enhetens underenheter ska inkluderas.

OrganizationalUnitName: Namnet på enheten där händelserna ska hämtas. Blank =
hela organisationen.

OrganizationalUnitType: Anger hur inskickad enhet ska hanteras i sökningen
o
Employment: enheten används som anställningsenhet
o
Occurrence: enheten används som händelseenhet
o
Both: enheten används som antingen händelseenhet eller anställningsenhet

PeriodEnd: Slutdatum, blank = 2050-01-01.

PeriodStart: Startdatum, blank = 1900-01-01.

PeriodType: Anger om man vill söka på händelse- eller rapporteringsdatum.

User: Servicekontots namn och lösenord.
Exempeldata:
<GetOccurrenceCountByOrganizationalUnit>
<req>
<IncludeContractors>true</IncludeContractors>
<IncludeLight>true</IncludeLight>
<IncludeSubUnits>true</IncludeSubUnits>
<OrganizationalUnitName />
<PeriodEnd>2012-04-27</PeriodEnd>
<PeriodStart>2012-01-01</PeriodStart>
<PeriodType>Occurrence</PeriodType>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
</req>
</GetOccurrenceCountByOrganizationalUnit>
Sida 12 av 32
Webbservicen skickar ett XML-svarsobjekt som innehåller resultatet för anropet. Följande
element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

Count: Antalet händelser.

OccurrenceType: Typ av händelse.

OrganizationalUnitName: Namnet på enheten där händelserna inträffat. Blank = hela
organisationen.
Exempeldata:
<GetOccurrenceCountByOrganizationalUnitResponse>
<GetOccurrenceCountByOrganizationalUnitResult>
<ErrorText />
<OccurrenceCount>
<Count>10</Count>
<OccurrenceType>Accident</OccurrenceType>
</OccurrenceCount>
<OccurrenceCount>
<Count>7</Count>
<OccurrenceType>CommutingAccident</OccurrenceType>
</OccurrenceCount>
<OrganizationalUnitName />
</GetOccurrenceCountByOrganizationalUnitResult>
</GetOccurrenceCountByOrganizationalUnitResponse>
Sida 13 av 32
4.3. EXPORTERA ÅTGÄRDER
Metod: GetAction
Denna tjänst används för att hämta en eller flera åtgärder från IA-systemet. Tjänsten kan
användas för att integrera med ett arbetsordersystem. Åtgärder som har skapats eller ändrats i
IA-systemet under en specificerad tidsperiod, men som inte har klarmarkerats, kan exporteras till
ett externt system.
För att använda denna tjänst måste ni själva bygga en tjänst som schemaläggs hos er, t.ex. för
att köras varje natt. Er tjänst kommer att anropa IA-systemet via ert servicekonto för att
säkerställa att rätt uppgifter exponeras.
Webbservicen anropas med ett XML-objekt som innehåller följande element:

OccurrencePeriodEnd: Inkluderar alla åtgärder som är skapade eller ändrade innan
detta datum. Blank = 2050-01-01.

OccurrencePeriodStart: Inkluderar alla åtgärder som är skapade eller ändrade efter
detta datum. Blank = 1900-01-01.

User: Servicekontots namn och lösenord.
Exempeldata:
<GetAction>
<Req>
<OccurrencePeriodEnd>2015-01-01</OccurrencePeriodEnd>
<OccurrencePeriodStart>2015-12-31</OccurrencePeriodStart>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
</Req>
</GetAction>
Webbservicen skickar ett XML-svarsobjekt som innehåller resultatet för anropet. Varje åtgärd
(Action) beskrivs med följande element:

ActionId: ÅtgärdsID, ett unikt referensnummer för åtgärden i IA-systemet.

ActionNo: Arbetsordernummer.

ActionOwnerExternalId: ExternID, ett unikt ID för den användare i IA-systemet som står
som utförare av åtgärden.

ActionOwnerOther: Annan utförare, om en sådan har angetts i IA-systemet.

ActionStep: Åtgärdssteg.

ActionText: Åtgärdstext.

ActionTitle: Åtgärdsrubrik.
Sida 14 av 32

EstimatedCompletionDate: Datum då åtgärden är beräknad att vara klar. Om åtgärden
är klar anger EstimatedCompletionDate i stället datumet då åtgärden blev klar.

OccurrenceNo: En unik referens till händelsen i IA.

OrganizationalUnitExternalId: ExternID, ett unikt ID för den enhet i IA-systemet där
åtgärden registrerades.

OrganizationalUnitName: Namnet på den enhet i IA-systemet där åtgärden
registrerades.

ResponsibleExternalId: ExternID, ett unikt ID för den användare i IA-systemet som är
ansvarig för händelsen som åtgärden tillhör.

ResponsibleName: Namnet på den användare i IA-systemet som är ansvarig för
händelsen som åtgärden tillhör.
Exempeldata:
<GetAction>
<Actions>
<ActionId>800200</ActionId>
<ActionNo>ABC3828-Y162</ActionNo>
<ActionOwnerExternalId>PelleJohansson</ActionOwnerExternalId>
<ActionOwnerOther>Pelle Johansson</ActionOwnerOther>
<ActionStep>Elimination</ActionStep>
<ActionText>Beskrivning</ActionText>
<EstimatedCompletionDate>2015-05-01</EstimatedCompletionDate>
<OccurrenceNo>2014-233</OccurrenceNo>
<OrganizationalUnitExternalId>2014-233</OrganizationalUnitExternalId>
<OrganizationalUnitName>1234</OrganizationalUnitName>
<ResponsibleExternalId>5678</ResponsibleExternalId>
<ResponsibleName>Hans Johansson</ResponsibleName>
</Actions>
</GetAction>
Sida 15 av 32
4.4. EXPORTERA HÄNDELSER
Metod: GetOccurrenceExcelData
Denna tjänst används för att hämta en Excelfil med händelser. Filen ska sparas till disk som en
XLS-fil. Data kan hämtas för maximalt ett år.
Excelfilen är samma fil som kan hämtas i IA-systemet under Analys - Exportera data.
För att använda denna tjänst måste ni själva bygga en tjänst som schemaläggs hos er, t.ex. för
att köras varje natt. Er tjänst kommer att anropa IA-systemet via ert servicekonto för att
säkerställa att rätt uppgifter exponeras.
Observera!

Händelser som har markerats med Begränsad åtkomst kommer inte med i
exporten.

Användare kan byta händelsetypen för redan registrerade händelser. Det betyder
att en händelse kan registreras som tillbud och senare klassas om som olycksfall.
Händelsen kan därför ena dagen ligga på fliken för tillbud i Excelfilen och nästa
dag på fliken för olycksfall.
Webbservicen anropas med ett XML-objekt som har följande element:

PeriodStart: Startdatum.

PeriodEnd: Slutdatum. Kan vara högst ett år efter PeriodStart.

PeriodType: Anger om perioden avser händelsedatum (Occurrence), ändringsdatum
(Change) eller rapporteringsdatum (Registration).

HideEmptyColumns: Om det sätts till sant, döljs alla kolumner som inte innehåller data.

ShowStaticColumns: Om det sätts till sant, visas flik- och kolumnnamn med fasta
namn.

ExportDataVersion: Anger version av tjänst.

User: Servicekontots namn och lösenord.
Exempeldata:
<GetOccurrenceExcelData>
<Req>
<PeriodStart>2016-01-01</PeriodStart>
<PeriodEnd>2016-01-31</PeriodEnd>
<PeriodType>Registration</PeriodType>
<HideEmptyColumns>false</HideEmptyColumns>
<ShowStaticColumns>true</ShowStaticColumns>
Sida 16 av 32
<ExportDataVersion>1</ExportDataVersion>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
</Req>
</GetOccurrenceExcelData>
Webbservicen skickar ett XML-svarsobjekt som innehåller resultatet för anropet.

FileContent: Byte-array som innehåller Excelfilen (XLS-fil).

ErrorText: Feltext, blank = OK.
Exempeldata:
<GetOccurrenceExcelDataResponse>
<ErrorText></ErrorTtext>
<FileContent>54 68 69 73 20 77</FileContent>
</GetOccurrenceExcelDataResponse>
4.4.1. Appendix
Om du vill se en sammanställning över Excelexporten kan du titta på dokumentet Appendix till
dokument Webbtjänster.
Sida 17 av 32
4.5. EXPORTERA FLAGGADE HÄNDELSER
Metod: GetFlaggedOccurrences
Hämtar flaggade händelser som har registrerats i organisationen eller i en specifik enhet under
angiven tidsperiod.
Webbservicen anropas med ett XML-objekt som innehåller följande element:

OccurrencePeriodEnd: Slutdatum, blank = 2050-01-01.

OccurrencePeriodStart: Startdatum, blank = 1900-01-01.

IncludeSubUnits: Anger om den valda enhetens underenheter ska inkluderas.

OrganizationalUnitName: Namnet på enheten där händelserna ska hämtas. Blank =
hela organisationen.

User: Servicekontots namn och lösenord.
Exempeldata:
<GetFlaggedOccurrences>
<req>
<OccurrencePeriodEnd>2012-04-27</OccurrencePeriodEnd>
<OccurrencePeriodStart>2012-01-01</OccurrencePeriodStart>
<IncludeSubUnits>true</IncludeSubUnits>
<OrganizationalUnitName />
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
</req>
</GetFlaggedOccurrences>
Webbservicen skickar ett XML-svarsobjekt som innehåller resultatet för anropet. Följande
element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

FlagText: Flaggningstexten.

FlagTitle: Flaggningens rubrik.

OccurrenceDate: Händelsedatum.

OccurrenceDescription: Händelseförloppet.

OccurrenceID: Händelsens interna ID.

OccurrenceNumber: Händelsens löpnummer.

OccurrenceTitle: Händelserubriken.

OrganizationalUnitName: Namnet på enheten där händelsen inträffat.
Sida 18 av 32
Exempeldata:
<GetFlaggedOccurrencesResponse>
<GetFlaggedOccurrencesUnitResult>
<ErrorText />
<FlaggedOccurence>
<FlagText>Idag inträffade en allvarlig händelse med…</FlagText >
<FlagTitle>Allvarlig händelse</FlagTitle>
<OccurrenceDate>2016-06-01</OccurrenceDate>
<OccurrenceDescription>Skulle ta loss en…</OccurrenceDescription>
<OccurrenceID>1</OccurrenceID>
<OccurrenceNumber>123</OccurrenceNumber>
<OccurrenceTitle>Skada då…</OccurrenceTitle>
<OrganizationalUnitName>Enhet 1</OrganizationalUnitName>
</FlaggedOccurence>
</GetFlaggedOccurrencesResult>
</GetFlaggedOccurrencesResponse>
Sida 19 av 32
5. SKICKA DATA TILL IA-SYSTEMET
5.1. IMPORTERA ORGANISATIONEN
Metod: SaveOrganizationalUnitsWithLogin
Organisationen består av hierarkisk information om enheter. En enhet kan vara en
anställningsenhet, en händelseenhet eller både anställnings- och händelseenhet. En enhet kan
ha enheter hierarkiskt över och under sig.
En organisation importeras på något av följande sätt:

Förändring (Change): De enheter som finns i anropet uppdateras eller läggs till i IAsystemet. De enheter som finns i IA-systemet men som inte finns i anropet påverkas inte
av importen. Förkommer det enheter som valideras fel kommer dessa enheter inte att
importeras.

Total (Total): De enheter som finns i anropet uppdateras eller läggs till i IA-systemet. De
enheter som finns i IA-systemet men som inte finns i anropet tas bort. Har de händelser,
riskhanteringar eller användare kopplade till sig inaktiveras dem i stället. Förekommer det
en eller flera enheter som valideras fel kommer ingen enhet att importeras.
Det måste finnas minst en enhet i anropet som har en referens till rotnoden, d.v.s. den
högsta nivån i organisationsträdet, genom att ExternalIdParent sätts till 0.
Vid en organisationsimport så får det inte förekomma:

Fler än 99 nivåer i trädet för att förhindra evig loop.

Anställningsenhet under en händelseenhet och vice versa.

Aktiv enhet under en inaktiv enhet.

Aktiv enhet eller inaktiv enhet under en raderad enhet.
Webbservicen anropas med ett XML-objekt som innehåller följande element:

User: Servicekontots namn och lösenord.

ImportType: Typ av import, antingen Total eller Change.

OrganizationalUnits: Anger en eller flera enheter som ska importeras.
Varje enhet (OrganizationalUnit) beskrivs med följande element:

ExternalId: ExternID, ett unikt ID för enheten. Det är en textsträng som är 1-50 tecken
lång.

Name: En textsträng som är 1-100 tecken och som anger enhetens namn. Namnet
måste vara unikt i hela organisationen.

ExternalIdParent: Ett unikt ID för den enhet som ligger över den aktuella enheten.
o
Anges 0 ska den aktuella enheten ligga under den högsta noden i trädet.
Sida 20 av 32
o
ExternalIdParent får inte vara detsamma som den aktuella enhetens
ExternalId.
o
ExternalIdParent måste vara ett ExternalId för en annan enhet som finns i
trädet eller 0 för att peka på översta nivån i trädet.

Type: Anger om enheten är en händelseenhet, anställningsenhet eller båda.

CFarNr: Enhetens CFAR-nummer. Det är en textsträng med 7 siffror. Det är valfritt men
behövs för anmälningar till Försäkringskassan. Om du inte vet ert/era CFAR-nummer kan
du söka upp dem på www.cfarnrsok.scb.se.

Status: Enhetens status. För totalimport ska status anges som Active, för
förändringsimport anges någon av följande:
o
Active: Skapar en ny eller uppdaterar en befintlig enhet, och sätter den som
aktiv.
o
Inactive: Skapar en ny eller uppdaterar en befintlig enhet, och sätter den
som inaktiv.
o
Deleted: Raderar enheten. Har enheten händelser, användare eller
riskhanteringar kopplat till sig, inaktiveras den i stället för att tas bort.
Exempeldata:
<SaveOrganizationalUnitsWithLogin>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
<ImportType>Total</ImportType>
<OrganizationalUnits>
<OrganizationalUnit>
<ExternalId>1</ExternalId>
<Name>Enhet 1</Name>
<CfarNr>12345678</CfarNr>
<ExternalIdParent>0</ExternalIdParent>
<Type>Both</Type>
<Status>Active</Status>
</OrganizationalUnit>
<OrganizationalUnit>
<ExternalId>1.1</ExternalId>
<Name>Enhet 1.1</Name>
<ExternalIdParent>1</ExternalIdParent>
<Type>Employment</Type>
<Status>Active</Status>
</OrganizationalUnit>
<OrganizationalUnit>
<ExternalId>1.2</ExternalId>
<Name>Enhet 1.2</Name>
<ExternalIdParent>1</ExternalIdParent>
Sida 21 av 32
<Type>Occurrence</Type>
<Status>Active</Status>
</OrganizationalUnit>
</OrganizationalUnits>
</SaveOrganizationalUnitsWithLogin>
Webbservicen skickar ett XML-svarsobjekt som innehåller ett eller flera resultat för varje enhet i
organisationsimporten.
Följande element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

ExternalId: Enhetens ExternID.

Message: Ett meddelande eller felmeddelande för varje enhet.

Status: OK eller Error för enheten.
Exempeldata:
<SaveOrganizationalUnitsResponse>
<ErrorText />
<Result>
<ImportResult>
<ExternalId>1</ExternalId>
<Message>Changed</Message>
<Status>Ok</Status>
</ImportResult>
<ImportResult>
<ExternalId>1.1</ExternalId>
<Message>No change</Message>
<Status>Ok</Status>
</ImportResult>
<ImportResult>
<ExternalId>1.2</ExternalId>
<Message>No change</Message>
<Status>Ok</Status>
</ImportResult>
</Result>
</SaveOrganizationalUnitsResponse>
Sida 22 av 32
5.2. IMPORTERA ANVÄNDARE – HIERARKISK DATASTRUKTUR
Metod: SaveUsers
Denna import används om ni har informationen om era användare i en hierarkisk datastruktur, till
exempel i ert personalsystem. Ni kan skapa, radera eller uppdatera användarkonton i IAsystemet genom denna tjänst. Ni måste ha angett ett förvalt lösenord för hela organisationen för
4
att kunna importera användare. Alla nya användare måste byta lösenordet vid första
inloggningen. Alla uppgifter om användaren måste skickas varje gång. Det betyder att även om
bara namnet har ändrats måste behörigheterna skickas igen.
Användare importeras på något av följande sätt:

Förändring (Change): De användare som finns i anropet uppdateras eller läggs till i IAsystemet. De användare som finns i IA-systemet men som inte finns i anropet påverkas
inte av importen. Förkommer det användare som valideras fel kommer dessa användare
inte att importeras.

Total (Total): De användare som finns i anropet uppdateras eller läggs till i IA-systemet.
De användare som finns i IA-systemet men som inte finns i anropet tas bort. Har de
ansvar för händelser eller riskhanteringar inaktiveras dem i stället. Förekommer det en
eller flera användare som valideras fel kommer ingen användare att importeras.
Har ni angett en e-postadress för serviceanvändaren i IA-systemet skickas en lista över de nya
användarkontona efter avslutad import.
Följande fyra roller kan konfigureras för varje användare genom importen:

Chef (Manager)

Händelseansvarig (OccurrenceManager)

Skyddsombud (OHSRepresentative)

Utredare och åtgärdsutförare (InvestigatorAndActionOwner)
5
Roller som finns med i importen måste ha minst en förvald händelsetyp i IA-systemet.
En användare kan ha flera roller samtidigt, men rollen skyddsombud kan inte kombineras med
någon av rollerna chef eller händelseansvarig. Roller som inte hanteras av importen kommer
inte att beröras av importen. Om en användare t.ex. har rollen utredare i IA-systemet och
importeras som chef ska rollen utredare inte ändras. Däremot kommer rollen chef att läggas till
eller ändras.
För varje användare som förekommer i importen görs följande validering:
4
5

Kontroll att varje roll endast förekommer en gång.

Kontroll att varje enhet bara förekommer en gång för varje roll.
Läs mer om hur du anger ett förvalt lösenord i avsnitt 3.3.
Läs mer om hur du anger förvalda händelsetyper i avsnitt 3.2.
Sida 23 av 32

Om användarens status är Active måste information om behörigheten (roller och enheter
där rollerna gäller) vara angiven.

Om användarens status är Deleted tillåts att information om behörigheten saknas (gäller
vid förändringsimport).

Om användarnamnet inte är unikt kommer IA-systemet att föreslå ett nytt unikt
användarnamn. Om detta inte är möjligt genereras ett felmeddelande.

ExternID för användarens anställningsenhet och för enheten där användaren har sin roll
måste finnas.
Vid uppdatering av användare gäller följande:

Om användaren finns sedan tidigare men är inaktiv, aktiveras användaren och få de nya
rollerna.

Om användaren finns sedan tidigare men är spärrad (p.g.a. felaktiga lösenord) blir
användarkontot upplåst.

Om användarkontot finns sedan tidigare med samma användarnamn men utan ExternID
kommer det att uppdateras med ExternID:t som finns i anropet.

Om användarkontot finns på ett annat företag i samma koncern kommer det kontot att
kopplas till företaget som anropet görs ifrån.
Vid radering av användare gäller följande:

Om en användare som tidigare importerats saknas i anropet för totalimport raderas
användaren. Har användaren roller som inte hanteras av importen så ligger dessa kvar
på användaren. I så fall raderas användarkontot inte, men de roller som hanteras av
importen tas bort från användaren.

Om en användare som tidigare importerats har status Deleted vid förändringsimport
raderas användarkontot. Det gäller även om användaren har roller som inte hanteras av
importen.

Finns händelser kopplade till användarkontot inaktiveras kontot i stället för att raderas.

När en användare med rollen chef eller händelseansvarig inaktiveras, flyttas i vissa fall
händelser som inte är klara över till en ny händelseansvarig. Det gäller:
o
om det finns en, och endast en, användare med rollen chef eller
händelseansvarig på samma enhet.
o
om det finns flera användare med rollen chef eller händelseansvarig på
samma enhet men en utav dem, och endast en, är angiven som förvald
händelseansvarig för enheten.
I annat fall kan IA-systemet inte sätta en ny händelseansvarig för dessa händelser.
Händelseansvaret kommer då att ligga kvar på den inaktiverade personen.
Webbservicen anropas med ett XML-objekt som innehåller följande element:

User: Servicekontots namn och lösenord.

ImportType: Typ av import, antingen Total eller Change.
Sida 24 av 32

IAUsers: Anger en eller flera användare som ska importeras.
Varje användare (IAUser) beskrivs med följande element:

ExternalId: ExternID, ett unikt ID för användaren, 1-50 tecken lång.

Firstname: Förnamn, 1-50 tecken lång.

Surename: Efternamn, 1-50 tecken lång.

Username: Användarnamn, 1-50 tecken lång. Måste vara unikt i hela IA-systemet.

Status: Användarens status, Active eller Deleted.

Email: E-postadress, 0-50 tecken lång. Kan utelämnas.

EmploymentUnitExternalId: ExternID för enheten där användaren är anställd, 0-50
tecken lång. Kan utelämnas.

Authorizations: Rollerna som användaren har samt på vilka enheter de gäller. Kan vara
0-2 roller.
Behörigheten (Authorizations) för användaren beskrivs med följande element:

Role: Rollen som användaren har i IA-systemet. Kan vara chef (Manager),
händelseansvarig (OccurrenceManager), skyddsombud (OHSRepresentative) eller
Utredare och åtgärdsutförare (InvestigatorAndActionOwner).

Units: Lista över enheter där rollen gäller. Enheterna listas med sitt ExternID.

ExternalId: ExternID för enheten där rollen gäller, 0-50 tecken lång. Blank = hela
organisationen. Enheten kan vara inaktiv, och den kan vara händelse- eller
anställningsenhet eller både och.
Exempeldata för import av två användarkonton, observera att den andra användaren raderas från
IA-systemet:
<SaveUsers>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
<ImportType>Change</ImportType>
<IAUsers>
<IAUser>
<ExternalId>User 1</ExternalId>
<FirstName>Agnes</FirstName>
<SurName>Larsson</SurName>
<UserName>Agnes123</UserName>
<Status>Active</Status>
<Email>[email protected]</Email>
<EmploymentUnitExternalId>Unit 1</EmploymentUnitExternalId>
<Authorizations>
Sida 25 av 32
<Authorization>
<Role>Manager</Role>
<Units>
<ExternalId>Unit 1</ExternalId>
<ExternalId>Unit 2</ExternalId>
</Units>
</Authorization>
<Authorization>
<Role>OccurrenceManager</Role>
<Units>
<ExternalId>Unit 3</ExternalId>
</Units>
</Authorization>
</Authorizations>
</IAUser>
<IAUser>
<ExternalId>User 2</ExternalId>
<FirstName>Anders</FirstName>
<SurName>Johansson</SurName>
<UserName>Anders123</UserName>
<Status>Deleted</Status>
<Email></Email>
<EmploymentUnitExternalId></EmploymentUnitExternalId>
<Authorizations></Authorizations>
</IAUser>
</IAUsers>
</SaveUser>
Webbservicen skickar ett XML-svarsobjekt som innehåller ett eller flera resultat för varje
användare i importen. Följande element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

ExternalId: Användarens ExternID.

Message: Ett meddelande eller felmeddelande för varje användare.

Status: OK eller Error för användaren.
Exempeldata:
<SaveUser>
<ErrorText />
<Result>
<ImportResult>
<ExternalId>User 1</ExternalId>
<Message>Changed</Message>
<Status>Ok</Status>
Sida 26 av 32
</ImportResult>
<ImportResult>
<ExternalId>User 2</ExternalId>
<Message>Deleted</Message>
<Status>Ok</Status>
</ImportResult>
</Result>
</SaveUser>
Sida 27 av 32
5.3. IMPORTERA ANVÄNDARE – FLAT DATASTRUKTUR
Metod: SaveUsersFlat
Denna import används om ni har informationen om era användare i en platt datastruktur, till
exempel i ett Excel-ark. I det här fallet innehåller datastrukturen ingen hierarkisk uppsättning av
ert organisationsträd. Reglerna för denna import är dock desamma som för användarimporten
som beskrivs i avsnitt 5.2.
Observera!

Om en användare har behörigheter på flera avdelningar anges användaren flera gånger,
men med olika data i elementen Role och/eller OccurrenceUnitExternalId.

Om en användare förekommer flera gånger men med olika uppgifter i ett och samma
element, t.ex. Email, kommer endast den sista förekomsten av det elementet sparas i IAsystemet. Undantaget från detta är elementen Role och OccurrenceUnitExternalId.
Varje användare (IAUser) beskrivs med följande element:

ExternalId: ExternID, ett unikt ID för användaren, 1-50 tecken lång.

Firstname: Förnamn, 1-50 tecken lång.

Surename: Efternamn, 1-50 tecken lång.

Username: Användarnamn, 1-50 tecken lång. Måste vara unikt i hela IA-systemet.

Status: Användarens status, Active eller Deleted.

Email: E-postadress, 0-50 tecken lång. Kan utelämnas.

EmploymentUnitExternalId: ExternID för enheten där användaren är anställd, 0-50
tecken lång. Kan utelämnas.

Role: Rollen som användaren har i IA-systemet. Kan vara chef (Manager),
händelseansvarig (OccurrenceManager), skyddsombud (OHSRepresentative) eller
Utredare och åtgärdsutförare (InvestigatorAndActionOwner).

OccurrenceUnitExternalId: ExternID för enheten där rollen gäller, 0-50 tecken lång.
Blank = hela organisationen. Enheten kan vara inaktiv, och den kan vara händelse- eller
anställningsenhet eller både och.
Sida 28 av 32
Exempeldata för import av två användarkonton, observera att den första användaren förekommer
flera gånger och att den andra användaren raderas från IA-systemet:
<SaveUsersFlat>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
<ImportType>Change</ImportType>
<IAUsers>
<IAUserFlat>
<ExternalId>User 1</ExternalId>
<FirstName>Agnes</FirstName>
<SurName>Larsson</SurName>
<UserName>Agnes123</UserName>
<Status>Active</Status>
<Email>[email protected]</Email>
<EmploymentUnitExternalId>Unit 1</EmploymentUnitExternalId>
<Role>Manager</Role>
<OccurrenceUnitExternalId>Unit 1</OccurrenceUnitExternalId>
</IAUserFlat>
<IAUserFlat>
<ExternalId>User 1</ExternalId>
<FirstName>Agnes</FirstName>
<SurName>Larsson</SurName>
<UserName>Agnes123</UserName>
<Status>Active</Status>
<Email>[email protected]</Email>
<EmploymentUnitExternalId>Unit 1</EmploymentUnitExternalId>
<Role>Manager</Role>
<OccurrenceUnitExternalId>Unit 2</OccurrenceUnitExternalId>
</IAUserFlat>
<IAUserFlat>
<ExternalId>User 1</ExternalId>
<FirstName>Agnes</FirstName>
<SurName>Larsson</SurName>
<UserName>Agnes123</UserName>
<Status>Active</Status>
<Email>[email protected]</Email>
<EmploymentUnitExternalId>Unit 1</EmploymentUnitExternalId>
<Role>OccurrenceManager</Role>
<OccurrenceUnitExternalId>Unit 3</OccurrenceUnitExternalId>
</IAUserFlat>
<IAUserFlat>
<ExternalId>User 2</ExternalId>
<FirstName>Anders</FirstName>
Sida 29 av 32
<SurName>Johansson</SurName>
<UserName>Anders123</UserName>
<Status>Deleted</Status>
<Email></Email>
<EmploymentUnitExternalId></EmploymentUnitExternalId>
<Authorizations></Authorizations>
</IAUserFlat>
</IAUsers>
</SaveUserFlat>
Webbservicen skickar ett XML-svarsobjekt som innehåller ett eller flera resultat för varje
användare i importen. Följande element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

ExternalId: Användarens ExternID.

Message: Ett meddelande eller felmeddelande för varje användare.

Status: OK eller Error för användaren.
Exempeldata:
<SaveUsersFlat>
<ErrorText />
<Result>
<ImportResult>
<ExternalId>User 1</ExternalId>
<Message>Changed</Message>
<Status>Ok</Status>
</ImportResult>
<ImportResult>
<ExternalId>User 2</ExternalId>
<Message>Deleted</Message>
<Status>Ok</Status>
</ImportResult>
</Result>
</SaveUsersFlat>
Sida 30 av 32
5.4. IMPORTERA ÅTGÄRDER
Metod: SaveAction
Denna tjänst används för att kunna uppdatera en eller flera åtgärder i IA-systemet med
information från ett externt system. Detta förutsätter att de åtgärder som ska importeras tidigare
6
har exporterats från IA-systemet. Tjänsten kan användas för att integrera med ett
arbetsordersystem. Åtgärder som har behandlats i arbetsordersystemet kan sedan åter
importeras till IA-systemet.
Observera!

Vid import av en klarmarkerad åtgärd där datumet är senare än dagens datum så
sätter importen alltid klardatum till dagens datum i IA-systemet. Är klardatumet
tidigare än dagens datum sätts det datumet som skickas med importen.

Blir sista åtgärden i en händelse klarmarkerad genom importen uppdateras
händelsens status.
I IA-systemet kan man ange följande åtgärdssteg för varje åtgärd:

Eliminering

Utbyte

Tekniska skyddsåtgärder

Utmärkning, varning, rutiner

Personlig skyddsutrustning
Webbservicen anropas med ett XML-objekt som innehåller följande element:

User: Servicekontots namn och lösenord.

Actions: Anger en eller flera åtgärder som ska importeras.
Varje åtgärd (Action) beskrivs med följande element:
6

ActionId: ÅtgärdsID, ett unikt referensnummer för åtgärden i IA-systemet.

ActionOwnerExternalId: ExternID, ett unikt ID för den användare i IA-systemet som står
som utförare av åtgärden.

ActionOwnerOther: Annan utförare, om en sådan har angetts i IA-systemet.

ActionStep: Åtgärdssteg.

ActionText: Åtgärdstext.

EstimatedCompletionDate: Datum då åtgärden är beräknad att vara klar. Om åtgärden
är klar anger EstimatedCompletionDate i stället datumet då åtgärden blev klar.
Läs mer om att exportera åtgärder i avsnitt 4.3.
Sida 31 av 32

Completed: 0 anger att åtgärden inte är klar, 1 anger att åtgärden är klar.

WorkOrderNumber: Arbetsordernummer.
Exempeldata:
<SaveAction>
<User>
<Name>Servicekontots användarnamn</Name>
<PassWord>Servicekontots lösenord</PassWord>
</User>
<Actions>
<Action>
<ActionId>800200</ActionId>
<WorkOrderNumber>ABC3828-Y162</WorkOrderNumber>
<ActionStep>Elimination</ActionStep>
<ActionText>Beskrivning</ActionText>
<EstimatedCompletionDate>2013-10-01</EstimatedCompletionDate>
<ActionOwnerExternalId>PelleJohansson</ActionOwnerExternalId>
<ActionOwnerOther>Pelle Johansson</ActionOwnerOther>
<Completed>1</Completed>
</Action>
<Action>
<ActionId>800300</ActionId>
<WorkOrderNumber>XUAYA-Y162</WorkOrderNumber>
<ActionStep>Exchange</ActionStep>
<ActionText>Beskrivning</ActionText>
<EstimatedCompletionDate>2013-12-01</EstimatedCompletionDate>
<ActionOwnerExternalId>AndersJohansson</ActionOwnerExternalId>
<ActionOwnerOther>Anders Johansson</ActionOwnerOther>
<Completed>0</Completed>
</Action>
</Actions>
</SaveAction>
Webbservicen skickar ett XML-svarsobjekt som innehåller ett eller flera resultat för varje åtgärd i
importen. Följande element finns i svarsobjektet:

ErrorText: Feltext, blank = OK.

ExternalId: ÅtgärdsID.

Message: Ett meddelande eller felmeddelande för varje åtgärd.

Status: OK eller Error för åtgärden.
Sida 32 av 32
Exempeldata:
<SaveAction>
<ErrorText />
<Result>
<ImportResult>
<ExternalId>800200</ExternalId>
<Message>Changed</Message>
<Status>Ok</Status>
</ImportResult>
<ImportResult>
<ExternalId>800300</ExternalId>
<Message>Changed</Message>
<Status>Ok</Status>
</ImportResult>
</Result>
</SaveAction>