Gå til innhold

Visma HRM MA

Managment Agent for Visma Enterprise HRM

Type: ECMA 2.2

Versjonsnummer: 1.4.1

Dato: 02.07.2019

Målsystem Versjon: 2019.07

Objekttyper: group, person, unit, employments

Beskrivelse

Managmenet Agenten jobber mot Visma Enterprise Webservices. Personer og Organisasjonskart leses via HRM_WS. Visma Enterprise HRM eksporter ikke grupper, men agenten generer grupper basert på hvilke avdelinger personene tilhører.

Parametre

Hostname: Angi servernavn på visma sin web server som hoster hrm_ws

Port: Angi porten web-servicen benytter på serveren. F.eks 8090

Protocol: Velg mellom http eller https

Timeout (sek): Angi hvor mange sekunder man skal vente på visma webservice svar

Visma Enterprise HRM kan bruke lang tid på å generere en XML avhenging av webserver og databaseytelse.

Export type:

Velg mellom Simple og Advanced

Simple: Denne kan eksportere data tilbake til enterprise_ws/secure/user og er inkludert som standard når man har mulighet til å hente data ut fra webservicen. Advanced krever en egen lisens og er ikke standard.

Attributter som er støttet

  • alias (multivalue) (add/delete)
  • initials (kun opprette nytt) (add)
  • email (add/delete)
  • workphone (add/delete)
  • workmobile (add/delete)

Advanced: Denne kan eksportere data tilbake til hrm_ws/secure/persons/import og krever egen lisens for å kunne ta i bruk.

Attributter som er støttet i agenten

  • email
    • paycheckByEmail (satt til true) som kommer med om man har med email feltet i eksport
  • workphone
  • workmobile
  • alias (multivalue)
  • privatemobile
  • privatephone
  • jobtitle

Username: Brukernavn for Visma webservicene

Password: Passord for Visma webservicene

Selskap: De selskapene (firma) i visma hrm som du ønsker å hente. Flere selskap skilles med komma [,]

Prefix personDN med selskapsnummer: Hvis man importerer fra flere selskaper i Visma kan man velge å prefikse personDN attributtet med selskapsnummer. Dette for å forhindre dubletter på import fra de ulike selskapene. Viktig at da personDN brukes som anker attributt i agenten. Det erstatter da tidligere anker på personIdHRM evtentuelt

Fra Ansattnummer: Managment agenten henter ansatte som har ansattnummer (employeeId) som er mellom "Fra og Til" ansattnummer parametrene. Starten på rangen kan f.eks være 10000

Når det skal angis en range med brukere så er det feltet empployeeID som benyttes, men skal man hente bare en bruker så er det HrmID feltet som benyttes.

Til Ansattnummber: Managment agenten henter ansatte som har ansattnummer (employeeId) som er mellom Fra og Til ansattnummer parametrene. f.eks 30000

Logg med debug?: Brukes ved feilsøking. Gir en mer fullstendig logg som beskriver alle kall og eventuelle feil eller mangler under import/export

Hent personer frem i tid (Checkbox): Visma HRM_WS har muligheten for å hente ut brukere med startdato frem i tid. huk av checkboksen for å hente brukere med startdato frem i tid.

Antall dager frem i tid: Brukes sammen med "Hent personer frem i tid". Angir hvor mange dager før brukeren starter du ønsker. F.eks 60 henter brukere 60 dager før startdato i HRM

Ignorer ansattkategorier: Brukes for å ikke trekke inn ansattkategorier inn i ConnectorSpace. Kan være hensiktsmessig for å få raskere kjøretid på agenten, vs å gjøre dette på filter i selve agent-oppsettet

Hent organisasjonsinfo (Checkbox): Huk av hvis du ønsker å hente organisasjonskartet fra Visma HRM_WS

(Krever egen lisens for å kunne hente ut organisasjonsinfor fra webservice)

Dato Offset: Enkelte kunder av Visma har opplevd at denne må settes til noen dager frem eller tilbake i tid. Default er 0 (dvs at den henter dagens dato). Alternativt vil [-2] f.eks hente data som er definert i webservice som to dager tilbake i tid

Lag grupper (Checkbox): Huk av om du ønsker at det skal genereres grupper basert på avdelingsinfo på brukeren.

Visma exporterer ikke grupper, men managment agenten kan lage grupper basert på felter på personobjektet. Feks. alle som har avdeling "Utdanningsetaten" blir samlet og lagt i en gruppe kaldt Utdannnigsetaten

Gruppeprefix: Hvis du ønsker å prefixe gruppene så kan det legges inn her.

F.eks HRM_ vil gi gruppenavn HRM_ + gruppenavn

Gruppesuffix: Hvis du ønsker å surfixe gruppene så kan det legges inn her.

F.eks HRM_ vil gi gruppenavn gruppenavn + _HRM

benyttes både pre og post-fix på gruppenavn vil begge legges til gruppenavnet

Merk at det kan være hensiktmessig å gjøre dette om dere har ID-er på enheter i Visma HRM som også kan være lik personers ID-er. På importen vil da agenten oppfatte disse objectene som om de allerede er importert, og ikke importere objektet igjen, selv om det da her er snakk om en enhet. Pre og postfix er derfor anbefalt

Velg gruppetyper: Huk av for de ulike gruppetyper du ønsker å lage - Unit grupper (krever organisasjons webservice lisens) - Dimension grupper (dimension2 benyttes) - BusinessNumber grupper - Company grupper

Flow

Person

Import

CS Object Type CS Attributes Mapping Type MV Object Type MV Attribute Advanced Rule Kommentar
person businessNumbername Direct person basOrgName
person businessNumbervalue Direct person basOrgNumber
person companyName Direct person company
person dateOfBirth Direct person basPersonBirthDate
person email Direct person mail
person employeeId Direct person employeeID
person endDate Direct person employeeEndDate
person familyName Direct person lastName
person familyName, givenName Advanced person displayName VismaHRM_DisplayName
person givenName Direct person firstName
person jobTitle Direct person jobTitle
person manager Direct person manager ref til leder
person personIdHRM Direct person basHRMID
person personIdHRM Direct person basUniqeID
person positionCode Direct person basPostitionID
person positionCodeName Direct person basPostitionTitle
person ssn Direct person basSSN
person startDate Direct person employeeStartDate
person unitId Direct person basOrgUnitNumber
person unitName Direct person basOrgUnitName
person unitName Direct person department
person workMobile Direct person mobile
person workPhone Direct person officePhone
person genderCode Direct person gender
person alias Direct person uid kan være multivalue
person loginID Direct person
person initials Direct person uid kan bare skrives hvis tomt
person userId Direct person
person workTasks Direct person
person privateEmail Direct person
person privatePhone Direct person
person privateMobile Direct person
person category id Direct person
person categorydescription Direct person
person lastChangedDate Direct person
person employmentPercentage Direct person
person businessNumbername Direct person basOrgName
person businessNumbervalue Direct person basOrgNumber
person companyId Direct person
person companyName Direct person
person organizationNumber Direct person
person companyNumbername Direct person
person companyNumbervalue Direct person
person positionPercentage Direct person
person positionStartDate Direct person
person positionEndDate Direct person
person yearlyHours Direct person
person positionCode Direct person
person positionId Direct person
person tableNr Direct person
person positionCodeName Direct person
person positionTypeValue Direct person
person positionTypeName Direct person
person publicPositionCodeName Direct person
person publicPositionCodeValue Direct person
person dimension2name Direct person department
person dimension2value Direct person departmentNumber
person dimension3name Direct person
person dimension3value Direct person
person employments Direct person referanse til employments

Export

CS Object Type CS Attributes Mapping Type MV Object Type MV Attribute Advanced Rule Kommantar
person alias Direct person basUniqueID (multivalue)
person initials Direct person basUniqueID
person email Direct person mail
person workPhone Direct person phone
person workMobile Direct person mobile
person privatemobile* Direct person
person privatephone* Direct person
person jobtitle* Direct person title
person paycheckByEmail* Direct person
> *Dette er kun mulig med Advanced Export valgt

Group

Import

CS Object Type CS Attributes Mapping Type MV Object Type MV Attribute Advanced Rule
group groupId Direct group basUniqueID
group groupName Direct group displayName
group members Direct group member

Export

Ingen flyt tilbake

Unit(Org Units)

Import

CS Object Type CS Attributes Mapping Type MV Object Type MV Attribute Advanced Rule
unit managerid Direct organizationalUnit manager
unit postaladdress1 Direct organizationalUnit street
unit postalarea Direct organizationalUnit postalAddress
unit postalcode Direct organizationalUnit postalCode
unit unitcompany Direct organizationalUnit company
unit unitemail Direct organizationalUnit mail
unit unitid Direct organizationalUnit basUniqeID
unit unitname Direct organizationalUnit displayName
unit unitparent Direct organizationalUnit basParentOrgUnitRef
unit visitaddress1 Direct organizationalUnit physicalDeliveryOfficeName

Export

Ingen flyt tilbake

Unit(Org Units)

Import

CS Object Type CS Attributes Mapping Type MV Object Type MV Attribute Advanced Rule
employments EmploymentId Direct employments
employments E_EmployeeId Direct employments
employments E_HRMID Direct employments
employments DateFrom Direct employments
employments DateTo Direct employments
employments OrgUnitId Direct employments
employments OrgUnitDescription Direct employments
employments PostCode Direct employments
employments PostCodeDescription Direct employments
employments MainPosition Direct employments
employments E_ManagerId Direct employments
employments PositionTitle Direct employments
employments PositionId Direct employments
employments PositionType Direct employments
employments PositionPercentage Direct employments
employments PositionDescription Direct employments

Export

Ingen flyt tilbake

Kode

Repository

VigoBAS Git Repository: https://dev.azure.com/VIGO-BAS/VIGO-BAS/_git/vigo-bas Mappe: agents/visma-hrm-ma

NB! Dette repositoryet innholder submoduler. Ta hensyn til dette ved utsjekk av koden

Kildesystem Dokumentasjon

Webservicer

Er det nødvendig med dokumentasjon av webservicene til Visma, kan dette skaffes ved å kontakte visma direkte.

Visma HRM_WS XML Eksempler

Person

<?xml version="1.0" encoding="utf-8" standalone="yes" ?> 
- <person personIdHRM="2019" xsi:noNamespaceSchemaLocation="http://vismaweb:8090/hrm_ws/schemas/person/enterprisePersonExport.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <authentication>
  <initials>OLNO</initials> 
  <userId>3234</userId> 
  <username>OLA NORMANN</username> 
  <alias>OLNO</alias> 
  <alias>OLA.NORMANN</alias> 
  </authentication>
  <careerInfo /> 
- <contactInfo>
  <email>ola.normann@vigobas.no</email> 
  <mobilePhone>99999999</mobilePhone> 
  <workPhone>77777777</workPhone> 
  <paycheckByEmail>false</paycheckByEmail> 
  <privateMobilePhone>99999999</privateMobilePhone> 
  </contactInfo>
  <dateOfBirth>1942-12-17</dateOfBirth> 
- <dependents>
- <dependent>
  <aloneWithChild>false</aloneWithChild> 
  <birthYear>1986-04-30</birthYear> 
  <chronicallyIll>false</chronicallyIll> 
- <contactInfo>
  <mobilePhone>+4799999999</mobilePhone> 
  </contactInfo>
  <name>Kari Normann</name> 
- <postalAddress>
  <address1>Sivert Tobiesens Gate 4</address1> 
  <countryCode>NO</countryCode> 
  </postalAddress>
  <primary>true</primary> 
  <relation>COHABITANT</relation> 
  </dependent>
  </dependents>
- <employments>
- <employment>
- <bankDetails>
  <accountNumber>47602212345</accountNumber> 
  <alias>Hovedkonto</alias> 
  <nationalityCode>NO</nationalityCode> 
  </bankDetails>
- <category id="F">
  <description>Fast avlønning</description> 
  </category>
- <company>
  <companyId>1</companyId> 
  <companyName>Vigo IKS</companyName> 
  <organizationNumber>852852852</organizationNumber> 
  </company>
  <employeeId>1923</employeeId> 
  <employmentPercentage>100.0</employmentPercentage> 
  <lastChangedDate>2016-09-21T11:31:25.843</lastChangedDate> 
  <lastEmployeed>1989-08-20</lastEmployeed> 
  <paymentInAdvance>0.00</paymentInAdvance> 
  <pension name="KLP 11" value="10" /> 
- <positions>
- <position isPrimaryPosition="true" validFromDate="2016-02-01">
- <chart id="2" name="Orgkart Vigo">
- <unit id="119000" name="IT-senteret">
  <manager id="1234" name="Sjef Sjefsen" /> 
  <roles /> 
  </unit>
  </chart>
- <costCentres>
  <dimension2 name="IT-senteret" value="000000042080" /> 
  <dimension3 name="IT-sjef" value="119000" /> 
  </costCentres>
  <customId>3</customId> 
- <fixedTransactions>
- <fixedTransaction uniqueKey="15284">
  <amount>234.67</amount> 
  <costCentres /> 
  <number>0.00</number> 
  <payCode>100</payCode> 
  <rate>0.00</rate> 
  <type name="AUTOMATIC" value="A" /> 
  </fixedTransaction>
- <fixedTransaction uniqueKey="6678">
  <amount>500.00</amount> 
  <costCentres /> 
  <number>0.00</number> 
  <payCode>104</payCode> 
  <rate>0.00</rate> 
  <type name="B" value="B" /> 
  </fixedTransaction>
- <fixedTransaction uniqueKey="3184">
  <amount>16725.00</amount> 
  <costCentres /> 
  <number>0.00</number> 
  <payCode>100</payCode> 
  <rate>0.00</rate> 
  <type name="B" value="B" /> 
  </fixedTransaction>
  </fixedTransactions>
  <lastChangedDate>2016-02-25T15:39:55.743</lastChangedDate> 
  <location name="Sentraladministrasjonen" value="1" /> 
  <positionCategoryNumber>1</positionCategoryNumber> 
- <positionInfo>
  <positionCode name="Rådgiver" positionCode="5509" positionId="2" tableNr="50" /> 
  <positionType name="Fast dagtid" value="FD" /> 
- <publicPositionCode name="Rådgiver" value="8530">
  <set>KS</set> 
  <setType>KSSKODE</setType> 
  </publicPositionCode>
  </positionInfo>
  <positionPercentage>100.0</positionPercentage> 
  <positionStartDate>2007-08-01</positionStartDate> 
- <positionStatistics includeInAA="true" includeInPAI="true">
  <businessNumber name="SENTRALADMINISTRASJONEN" value="874056952" /> 
  <companyNumber name="TFK SENTRALADMINISTRASJONEN" value="974795132" /> 
- <servicePlace id="1900">
  <name>E Kont.Sentradm.</name> 
  </servicePlace>
  <workClassification name="Rådgiver (data)" value="2130106" /> 
  <workMunicipality name="TROMSØ KOMMUNE" value="1902" /> 
  </positionStatistics>
- <salaryInfo>
  <authorizedPosition value="1190116" name="IKT-rådgiver" /> 
  <basicSalary>120700.00</basicSalary> 
  <salaryTable name="Ansatte kap. 5" value="50" /> 
- <wageFrame code="P">
  <description>Personlig lønn</description> 
  </wageFrame>
  <wageFrameAutoRiseCode>A</wageFrameAutoRiseCode> 
  <yearlySalary>120700.00</yearlySalary> 
  </salaryInfo>
  <shiftWork>false</shiftWork> 
  <weeklyHours>37.50</weeklyHours> 
  <workDaysInWeek friday="true" monday="true" saturday="false" sunday="false" thursday="true" tuesday="true" wednesday="true" /> 
  <yearlyHours>1950.00</yearlyHours> 
  </position>
  </positions>
  <startDate>1984-08-20</startDate> 
- <statistics>
  <paiEducation name="Videregående kurs 11 fra vid.skole, studieretning håndverk og industri" value="518" /> 
  </statistics>
- <taxDetails>
  <cardYear>2016</cardYear> 
  <deductionLimit>false</deductionLimit> 
  <fullTax>false</fullTax> 
  <secondEmployee>false</secondEmployee> 
  <taxDeductionCard cardId="2408" cardName="Månedstabell" cardType="M" /> 
  <taxExemptionCard>0.00</taxExemptionCard> 
  <taxPercentage>44.00</taxPercentage> 
  </taxDetails>
  <union name="Skolenes Landsforbund" value="882" /> 
  </employment>
  </employments>
  <familyName>Normann</familyName> 
  <genderCode>MALE</genderCode> 
  <givenName>Ola</givenName> 
- <hrmAuthentications>
- <hrmAuthentication>
  <logonId>OLA.NORMANN</logonId> 
  <type name="EXTERNAL_USER" value="3" /> 
  </hrmAuthentication>
  </hrmAuthentications>
  <lastChangedDate>2016-02-24T09:07:59.63</lastChangedDate> 
  <maritalStatus>COHABITANT</maritalStatus> 
  <municipality name="Vigo KOMMUNE" value="1902" /> 
  <nationalityCode>NO</nationalityCode> 
- <postalAddress>
  <address1>SIVERT TOBIESENS GATE 4</address1> 
  <countryCode>NO</countryCode> 
  <postalArea>Oslo</postalArea> 
  <postalCode>0007</postalCode> 
  </postalAddress>
  <socialSecurityOffice name="NAV Oslo" value="1902" /> 
  <ssn>171245123455</ssn> 
  </person>

Unit

<unit id="119000" company="1" kode="196" name="IT-senteret" parentid="3">
<contactInfo>
<email>support@vigobas.no</email>
<fax/>
<phone>77777777</phone>
<postaladdress1>Postboks 6600</postaladdress1>
<postaladdress2/>
<postalarea>Oslo</postalarea>
<postalcode>0007</postalcode>
<visitaddress1>Strandveien 13</visitaddress1>
<visitaddress2/>
<visitpostalarea>Oslo</visitpostalarea>
<visitpostalcode>0007</visitpostalcode>
</contactInfo>
<manager id="1234" name="Sjef Sjefsen"/>
<roles>
<role id="1" description="Leder">
<employees>
<employee id="1234" name="Sjef Sjefsen"/>
</employees>
</role>
<role id="5" description="Ass.leder">
<employees/>
</role>
<role id="9" description="Avd.leder">
<employees/>
</role>
<role id="24" description="BI-tilgang">
<employees/>
</role>
</roles>
<tasks>
<task id="2" description="Attestant timelønn">
<employees>
<employee id="1783" name="Hans Hansen"/>
<employee id="3945" name="Mons Monsen"/>
<employee id="2898" name="Tor Torsen"/>
</employees>
</task>
<task id="3" description="Anviser timelønn og fravær">
<employees>
<employee id="1234" name="Sjef Sjefsen"/>
</employees>
</task>
<task id="4" description="Sekretær">
<employees/>
</task>
<task id="14" description="Attestant fravær">
<employees/>
</task>
<task id="15" description="Attestant ferie">
<employees/>
</task>
<task id="18" description="Attestant personalskjema">
<employees>
<employee id="1783" name="Hans Hansen"/>
<employee id="3945" name="Mons Monsen"/>
<employee id="2898" name="Tor Torsen"/>
</employees>
</task>
<task id="21" description="Attestant Expence">
<employees>
<employee id="1783" name="Hans Hansen"/>
<employee id="3945" name="Mons Monsen"/>
<employee id="2898" name="Tor Torsen"/>
</employees>
</task>
<task id="22" description="Anviser Expence">
<employees>
<employee id="1234" name="Sjef Sjefsen"/>
</employees>
</task>
</tasks>
</unit>