Gå til innhold

Aktivering timer

Modul for å aktivere godkjente timer fra ePortal-tidsregistrering som et regnskapsbilag i Visma Business NXT. Siden har tre faner: Rapport (kjøre og kontrollere aktiveringen), Innstillinger (variant og satser) og Bilagshistorikk (tidligere kjøringer).

Aktivering timer — modul-dashboard

Egenskap Verdi
Rute /approval/timer-aktivering (approval-routing.module.ts:24)
Modul-ID 18 (TimeAdmin)
DataAccess-objekttype Approval.TimerAktivering
Regnskapssystem Visma Business NXT (bilag opprettes via NXT-integrasjonen)

fanen "Rapport" med fra/til-datovelger, "Kjør rapport"-knapp og det blå "Periodisering"-info-feltet over rapport-griden

Tilgang

Hvem Hva trengs
Rolle / tilgang Datatilgang på objekttype Approval.TimerAktivering (CanView for å se rapport og historikk, CanEdit for å lagre innstillinger, CanCreate for å opprette bilag) — konfigureres under Innstillinger → Datatilgang i gruppen "Godkjenning timer"
Modul TimeAdmin (moduleId 18) — må være aktivert for kunden og brukerlevelet (approval-routing.module.ts:24, data-access-admin.component.ts:31)

Fane: Rapport

Henter godkjente timer + ev. regnskapsposter for valgt periode, kjører varianten som er valgt under Innstillinger, og viser resultatet som radlinjer i et smart-grid.

Periodevalg

  • Fra / TilngbDatepicker-felter. Initialverdiene beregnes ut fra TimeConfig.cutOffDate i localStorage på samme måte som Kontroll-timer: er cutOffDate = 0 blir perioden hele forrige måned; ellers løper perioden fra cutOffDate + 1 til neste cutOffDate avhengig av om i dag er før eller etter cut-off-dagen (timer-aktivering.component.ts:109-179).
  • Pil venstre / pil høyre — flytter både fra- og til-dato én måned bakover / framover, og synker Bilagsdato + Valuteringsdato til ny til-dato (timer-aktivering.component.ts:328-338).
  • Kjør rapport — kaller getReport({ dateFrom, dateTo, sessionID }) og populerer rapport-grid + diagnostikk-logg (timer-aktivering.component.ts:217-245).

Periodisering-regelen som vises i blå info-boks under datolinjen:

«Timeregistreringer fra ePortal hentes fra valgt fra-til periode. Regnskapsdata hentes for bokført lønnskost basert på til-perioden, og bokføres i til-periodens måned.» (no.json:11644)

Diagnostikk-logg

Etter Kjør rapport legges backend-meldingene i en kollapsibel <details>-blokk merket «Logg (NXT-henting)». Hver melding har et nivå (Info / Warning / Error) som styrer ikon og farge. Loggen åpnes automatisk hvis det finnes minst én Warning eller Error (timer-aktivering.component.ts:57-63).

Rapport-grid

Kolonnene som vises (timer-aktivering.component.ts:81-96):

Kolonne Felt Type
År aar tekst-filter
Periode periode tekst-filter
Dato dato tekst-filter
Art art tallfilter (lønnsart)
Tekst tekst tekst-filter
Antall antall sortérbar
Debet debet sortérbar
Kredit kredit sortérbar
Beløp beloep sortérbar
KontoX kontoX tallfilter
Avdeling avdeling tekst-filter
Prosjekt prosjekt tekst-filter
AO ao tekst-filter
Kilde sourceType tekst-filter

Griden har globalt søk, filter-panel, totalrad, feltsum og gruppesum (sum for antall og beloep). Eksport til Excel er aktivert via «Eksporter til Excel»-knappen på griden (timer-aktivering.component.html:144-158).

KPI-baren over griden viser antall rader og total beloep (timer-aktivering.component.html:125-128).

Opprett bilag

Kortet «Opprett aktiveringsbilag» vises kun etter at en rapport er kjørt (reportRan = true).

Felt: - Bilagsdato — dokumentdato på NXT-bilaget, default = til-dato. - Valuteringsdato — bokføringsperiode/verdidato, default = til-dato.

Begge kan endres uavhengig av hverandre før bokføring (timer-aktivering.component.ts:183-186).

Når «Opprett bilag» trykkes:

  1. Rapporten eksporteres til Excel klient-side via reportGrid.exportToBuffer(true) (useAllRows=true slik at hele datasettet attaches, ikke kun den filtrerte visningen).
  2. Filen base64-encodes og sendes sammen med periode + datoer til createVoucher — backend lagrer den mot bilaget og NXT-adapteren laster den opp som bilagsdokument.
  3. Filnavn: aktivering_<YYYY-MM-DD>.xlsx (til-dato).
  4. Hvis Excel-eksporten feiler, logges advarsel i konsoll og bilaget opprettes uten vedlegg — eksporten skal aldri blokkere bokføring (timer-aktivering.component.ts:247-297).

Duplikat-varsel: hvis det allerede finnes minst én vellykket kjøring med samme fra-/til-periode i historikken, vises gul advarsel: «Denne perioden er allerede overført N gang(er). Kontroller Bilagshistorikk før ny overføring.» (timer-aktivering.component.html:68-71, timer-aktivering.component.ts:344-356).

Resultat: - Suksess med voucherID: grønn boks «Bilag opprettet (ID: ..., ... linjer)» + success-toast. - Suksess uten rader: gul boks «Ingen rader å bokføre.» eller backend-melding. - Feil: rød feiltoast med backend-melding.

«Opprett aktiveringsbilag»-kortet med Bilagsdato/Valuteringsdato og «Opprett bilag»-knappen, helst med duplikatvarselet synlig

Fane: Innstillinger

Lagres per tenant via PUT /api/timer-aktivering/config (timer-aktivering.component.ts:310-326).

Variant

Radio-knapper for verdiene A, B, C, E, F, G, H. Til høyre vises et referansekort der den valgte varianten markeres med mørk venstrekant + «Valgt»-badge (timer-aktivering.component.html:312-336). Beskrivelsene under er basert på TIMER_AKTIVERING_VARIANTS i timer-aktivering.model.ts:102-131:

Variant Kilder Hva varianten gjør
A ePortal timeregistrering Standard adm + mont. Ansatte deles i to grupper etter ansattnr-intervall (adm og mont). Hver gruppe aktiveres med fast sats mot TimeReg kontoX. Eks: adm-ansatt nr 1–50 aktiveres med 120 kr/t mot konto 7791.
B ePortal timeregistrering Som A, men kontoX hentes per lønnsart fra «KontoX bokført lønn» i stedet for fast verdi. Eks: lønnsart 100 gir konto 7792, lønnsart 200 gir konto 7793 — ulike lønnsarter kan dermed aktiveres mot ulike kontoer.
C ePortal timeregistrering KontoX hentes direkte fra feltet «KontoX på timerføring» som den ansatte registrerte på timen. Eks: ansatt fører KontoX=7795 — den verdien brukes uten noe oppslagstabell.
E ePortal timeregistrering + regnskap (konto-intervall, default 5000–5989) Som A, men med ADK-blokk (eget ansattnr-intervall og egne satser for ADK-ansatte) og investeringsblokk (henter regnskapsposter på konto 5000–5989). Eks: mont-ansatt nr 51–80 aktiveres med ADK-sats 95 kr/t, og investeringsbilag for konto 5100 plukkes opp i samme kjøring.
F ePortal timeregistrering + regnskap Som E, men legger til en balansert motpost. Eks: krediterer 7791 avdeling 10 (kostnaden), og debiterer en motkonto på balanse-avdeling 99 — slik at nettokostnaden i avdeling 10 er null.
G ePortal timeregistrering Som A/E, men inkluderer en lærlingblokk. Ansatte som har «KontoX på timerføring» lik lærling kontoX regnes som lærlinger og aktiveres med lærling-sats. Eks: timerføring med KontoX=5180 → sats 60 kr/t mot konto 5180.
H ePortal timeregistrering + regnskap Full variant. Kombinerer alle blokker i én kjøring: standard adm + mont, ADK-blokk, lærlingblokk, investeringsblokk (konto 5000–5989) og balansert motpost.

Hjelpeteksten over feltene: «Disse innstillingene konfigurerer den valgte varianten. Se variant-beskrivelsen til høyre for hva hver variant gjør, med eksempler på satser og kontoer. Ansattnr-intervallene avgjør hvem som regnes som adm vs. mont — montørtimer kommer ikke med før mont-intervallet er satt.» (no.json:11662)

Konfigurasjonsfelter

Alle felt er nummeriske. Defaultverdier kommer fra defaultConfig() i timer-aktivering.model.ts:133-160.

Felt (label) Modell-property Default Forklaring
Ansattnr adm (fra–til) ansNrAdmFrom, ansNrAdmTo 0 / 0 Ansattnr-intervall som regnes som administrasjon
Ansattnr mont (fra–til) ansNrMontFrom, ansNrMontTo 0 / 0 Ansattnr-intervall som regnes som montør
Sats adm satsAdm 0 Timesats adm
Sats mont satsMont 0 Timesats mont
Sats adm ADK satsAdmAdk 0 Timesats for ADK-adm (variant E/H)
Sats mont ADK satsMontAdk 0 Timesats for ADK-mont (variant E/H)
Sats lærling satsLaerling 0 Timesats lærling (variant G/H)
Sats lærling ADK satsLaerlingAdk 0 Timesats lærling ADK (variant G/H)
Bilagsart bilagsArt 400 NXT bilagsart
Bilagsserie voucherSerie 0 NXT voucher-serie
TimeReg kontoX timeRegKontoX 7791 Standard kontoX for timer (variant A)
Lærling kontoX laerlingAccX 5180 KontoX som identifiserer lærlinger (variant G/H)
AcTr kontoX (fast) acTrKontoXFixed 0 Fast motkonto for regnskapsposter
ADK kontoX adkKontoX 0 KontoX for ADK-blokk
Balanse avdeling balancedAvdeling 0 Avdeling for balansert motpost (variant F/H)
Balanse prosjekt balancedProsjekt 0 Prosjekt for balansert motpost (variant F/H)
Ekskluder prosjekt excludeProject 0 Prosjektnr som ekskluderes
Regnskap konto-intervall (fra–til) acTrAccountFrom, acTrAccountTo 5000 / 5989 Kontointervall regnskapsposter hentes fra (variant E/F/H)

Debug — behold staging

Toggle nederst på fanen: «Debug: behold regnskapsdata-staging etter kjøring (for inspeksjon i SQL — slå av etterpå)» — settes på når NXT-staging-rader skal undersøkes manuelt etter en kjøring. Default false (timer-aktivering.model.ts:158, timer-aktivering.component.html:290-298).

Lagre

«Lagre»-knappen kaller saveConfig() og viser success-toast «Lagret» eller feiltoast ved feil.

hele Innstillinger-fanen med variantradio øverst, ansattnr/satser/konto-felter til venstre og variant-referansekortet til høyre

Fane: Bilagshistorikk

Lastes når fanen åpnes, eller når en ny rapport / et nytt bilag er opprettet (timer-aktivering.component.ts:200-204, 358-371).

Tabellen viser kjøringer som overlapper med valgt periode, med kolonnene:

Kolonne Felt
Opprettet createdDate (dd.MM.yyyy HH:mm)
Variant variant
Fra / Til periodFrom, periodTo (dd.MM.yyyy)
Bilag ID voucherID (NXT-bilagsnummer eller «-»)
Rader rowCount
Status status — badge badge-soft-success for SUCCESS, badge-soft-danger for ERROR, ellers badge-soft-warning
Opprettet av createdByName (fallback createdBy)
Feil errorMessage («-» hvis tom)

Tom liste viser «Ingen bilagshistorikk for valgt periode.» (timer-aktivering.component.html:344-392).

tabellen i fanen "Bilagshistorikk" med minst én SUCCESS-rad (grønn badge) og helst en advarsels-/feilrad

Slik gjør du en aktivering

Se prosesskartet for Aktivering timer for sammenhengen mellom variant, rapportbygging, kontroll, bilagsopprettelse og historikk.

  1. Åpne Aktivering timer fra menyen — du står som standard på fanen Rapport med fra-/til-dato satt til riktig periode i henhold til TimeConfig.cutOffDate.
  2. Juster periode om nødvendig — bruk pil-knappene for å hoppe én måned eller velg datoer manuelt.
  3. Klikk Kjør rapport. Rapporten vises i griden under, og diagnostikk-loggen åpnes automatisk hvis det finnes advarsler eller feil.
  4. Kontroller radene — bruk globalt søk, kolonnefiltre, sum-rad og gruppering. Last ned «Eksporter til Excel» hvis det skal kontrolleres utenfor portalen.
  5. Når rapporten er korrekt: kontroller Bilagsdato og Valuteringsdato i kortet «Opprett aktiveringsbilag», og les eventuelt duplikatvarselet før du fortsetter.
  6. Klikk Opprett bilag. Ved suksess vises grønn boks med NXT-bilagsnummer, og kjøringen havner i Bilagshistorikk med status SUCCESS.

Vanlige problemer

Situasjon Hva skjer / hva gjør du
Rapport returnerer 0 rader Info-boks: «Ingen rader funnet for valgt periode.» — kontroller periode, godkjenningsstatus på timene og at innstillinger (ansattnr-intervall, satser) er satt for valgt variant.
Advarsler eller feil i diagnostikk-logg Loggen åpnes automatisk. Hver linje viser nivå (Info/Warning/Error) og melding fra backend (typisk: manglende konto for lønnsart, ansatt uten avdeling, prosjekt uten dimensjon).
Periode allerede aktivert Gul advarsel «Denne perioden er allerede overført N gang(er). Kontroller Bilagshistorikk før ny overføring.» — sjekk Bilagshistorikk-fanen før du oppretter et nytt bilag.
Bilag opprettet uten rader Gul boks «Ingen rader å bokføre.» (eller backend-melding). Ingen NXT-bilag opprettes.
Bilag-opprettelse feiler Rød feiltoast med backend-melding. Excel-vedlegg som ikke kunne genereres logges som warning i nettleser-konsollen, men blokkerer ikke selve bilaget.
Ingen tilgang API returnerer 200 med tom result og ErrorResponse «Ingen tilgang til timeraktivering.» — be administrator gi CanView/CanCreate/CanEdit på objekttype Approval.TimerAktivering.
Bilagshistorikk tom «Ingen bilagshistorikk for valgt periode.» — bytt periode eller kjør en aktivering først.

Relaterte sider