Eksportere timer til lønn¶
Siden Eksporter timer til lønnssystem ligger på /approval/export-hours og brukes av administrator for å laste ned en CSV-fil med godkjente timer (eller fravær) for en valgt periode. Filen importeres deretter manuelt inn i lønnssystemet — eksporten i ePortal gjør ingen direkte integrasjon mot lønnssystemet.
Per i dag støttes kun Visma Payroll som lønnssystem-valg i nedtrekkslisten (export-hours.component.html:27).
Eksporten flytter aldri penger — den lager bare en CSV-fil med grunnlaget. Selve lønnskjøringen gjøres i lønnssystemet etter at filen er importert der.
Tilgang¶
| Hvem | Hva trengs |
|---|---|
| Rolle | Administrator (rute beskyttet av ActivateService + ModuleGuard) |
| Modul | Godkjenning — moduleId: 18 (approval-routing.module.ts:22) |
Slik ser siden ut¶
Toppen viser tittelen Eksporter timer til lønnssystem med to faner:
- Timer til lønnskjøring (
hoursExport) - Fravær (
absenceExport)
Hver fane har to kolonner: til venstre NY EKSPORT med skjema, til høyre statistikk og TIDLIGERE EKSPORTER.
Fanen "Timer til lønnskjøring"¶
Brukes for ordinære timer (faste timer, overtid og tilleggsregistreringer som er godkjent).
Felt i skjemaet¶
| Felt | Beskrivelse | Standardverdi |
|---|---|---|
| Lønnsystem | Nedtrekksliste. Eneste valg er Visma Payroll (value="1"). |
Visma Payroll |
| Fra / Til | To datovelgere som definerer eksportperioden. Sluttdato må være etter startdato. | Periode beregnes ut fra cutOffDate i TimeConfig: fra cutOffDate+1 i forrige måned til cutOffDate i inneværende måned (export-hours.component.ts:37-67) |
< / > (periodeknapper) |
Flytter både fra- og til-dato én måned bakover eller fremover. | — |
| Merk transaksjoner som eksportert | Bryter. Når den er på, blir eksporterte rader markert i databasen så de ikke kommer med på neste eksport. | På |
| Lås periode for timeføring | Bryter. Når den er på (og låsedato-funksjonen er aktivert i portalinnstillingene), settes låsedato til til-datoen etter vellykket eksport. | Av — men forhåndsvelges automatisk hvis låsedato-funksjonen er aktivert (export-hours.component.ts:79-81) |
Når Lås periode er på vises en gul info-boks som enten viser hvilken låsedato som vil bli satt, eller en tekst om at låsedato-funksjonen ikke er aktivert i portalinnstillingene.
Validering¶
- Sluttdato må være etter startdato — ellers vises feilmelding "Sluttdatoen må være etter startdatoen." og eksporten avbrytes (export-hours.component.ts:322-329).
Hva skjer når du klikker EKSPORTER¶
- En modal med tittelen "Timer til lønnskjøring. Utfører..." vises mens jobben kjører (export-hours.component.ts:178).
- Backend kalles på
POST /api/ExportHours/ExportNotification(approval.service.ts:206). - Hvis kallet lykkes:
- Logg-panelet til høyre viser tre linjer: Ekporterte rader, Totalt ant. rader i utvalg og Sum antall (export-hours.component.ts:217-220).
- En CSV-fil med filnavn
TimeEksport.csv(eller navnet returnert icontent-disposition) lastes ned automatisk (export-hours.component.ts:222, 281). - Toast viser "Eksport fullført" (med tillegget "Den valgte perioden er låst" hvis Lås-bryteren var på).
- Hvis
Lås periodevar på OG låsedato-funksjonen er aktivert OG dette er en ny eksport (ikke re-eksport), oppdateres låsedato i portalinnstillingene viaSettingService.updateLockDate(export-hours.component.ts:195-213). - Hvis det ikke finnes rader å eksportere: toast med "Ingen nye rader og eksportere!" og logg-panelet viser "Ingen nye rader er godkjent for eksport." (export-hours.component.ts:229-232).
Statistikk og tidligere eksporter¶
Høyre kolonne viser:
- Antall tidligere eksporter
- Antall rader i siste eksport
- Dato for siste eksport
- En nedtrekksliste TIDLIGERE EKSPORTER med valgbare tidligere kjøringer, og knappen Eksporter som re-eksporterer den valgte kjøringen (export-hours.component.ts:174, 186).
Re-eksport oppdaterer ikke låsedato — den brukes til å hente ned CSV-filen for en allerede kjørt eksport på nytt.
Fanen "Fravær"¶
Brukes for å eksportere godkjent fravær (sykdom, ferie, permisjon osv.). Strukturen er enklere enn timer-fanen:
| Felt | Beskrivelse | Standardverdi |
|---|---|---|
| Lønnsystem | Nedtrekksliste. Eneste valg er Visma Payroll. | Visma Payroll |
Det er ingen datovelgere, ingen Merk/Lås-brytere. Backend bestemmer hvilken periode som inkluderes.
Når du klikker EKSPORTER:
- Modal "Fravær. Utfører..." vises.
- Backend kalles på
POST /api/ExportHours/ExportAbsenceNotification(export-hours.component.ts:259). - Ved suksess lastes en CSV med filnavn
FravaerEksport.csvned (export-hours.component.ts:263). - Toast viser "Eksport fullført" + loggtekst returnert fra backend.
- Hvis ingen rader: toast "Ingen nye rader og eksportere!" og logg-tekst "Ingen nye rader er godkjent for eksport."
Også her finnes TIDLIGERE EKSPORTER-card med nedtrekk for å re-eksportere en tidligere kjøring.
Slik gjør du en lønnseksport¶
- Gå til Godkjenning → Eksporter timer (
/approval/export-hours). - Velg fanen Timer til lønnskjøring (åpen som standard) eller Fravær.
- På timer-fanen: kontroller at fra/til-datoen treffer perioden du vil eksportere — bruk pil-knappene for å hoppe én måned av gangen.
- Velg om eksporten skal merke transaksjoner som eksportert (anbefalt for å unngå dobbeleksport) og om perioden skal låses etter eksport.
- Klikk EKSPORTER. Modal vises mens jobben kjører — ikke avbryt prosessen.
- Når jobben er ferdig: CSV-filen lastes ned, og logg-panelet til høyre viser hvor mange rader som ble eksportert.
- Importér CSV-filen manuelt i Visma Payroll for å fortsette lønnskjøringen der.
Slik re-eksporterer du en tidligere kjøring¶
- På riktig fane, finn TIDLIGERE EKSPORTER-cardet i høyre kolonne.
- Velg ønsket kjøring fra nedtrekket (vises som dato + antall rader).
- Klikk Eksporter. CSV-filen for den valgte kjøringen lastes ned på nytt. Låsedato endres ikke.
Vanlige problemer¶
"Sluttdatoen må være etter startdatoen."¶
Fra-dato ligger etter til-dato. Juster datovelgerne — eksporten kjører ikke før perioden er gyldig (export-hours.component.ts:325-326).
"Ingen nye rader og eksportere!"¶
Ingen godkjente timer i den valgte perioden mangler eksport-markering, eller hele perioden er allerede eksportert med Merk transaksjoner-bryteren på. Bekreft at timene faktisk er godkjent og at du ikke har valgt feil periode.
"Kunne ikke laste ned eksportfilen"¶
CSV-nedlastingen feilet etter at backend-jobben returnerte data (export-hours.component.ts:292). Sjekk nettverkstilgang og prøv igjen via TIDLIGERE EKSPORTER-nedtrekket — kjøringen er allerede registrert.
"Merk: Låsedato-funksjonen er ikke aktivert i portalsinnstillinger."¶
Info-tekst i den gule boksen når Lås periode-bryteren er på, men låsedato-funksjonen ikke er aktivert globalt. Selve eksporten kjører fortsatt, men låsedato vil ikke bli oppdatert automatisk. Aktivér funksjonen via Låsing av perioder hvis du ønsker automatisk låsing.
"Advarsel: Kunne ikke oppdatere låsedato" / "Feil ved oppdatering av låsedato"¶
Selve eksporten lyktes, men oppdatering av låsedato i portalinnstillingene feilet (export-hours.component.ts:200-211). Sjekk låsedato manuelt i Låsing av perioder og oppdater den der.
Eksporten må angres¶
Det finnes ingen Tilbakefør-funksjon i UI-et. Hvis en eksport må reverseres må timene endres tilbake i databasen manuelt (kontakt support), eller du kan kompensere i neste eksport ved å bruke Korrigere i låst periode for å håndtere etterregistreringer.
Relaterte sider¶
- Godkjenne timer — forrige steg før eksport
- Korrigere i låst periode — håndtere etterregistreringer
- Låsing av perioder — aktivere og styre låsedato



