Skip to content
Seed timelistemønster (test)

Seed timelistemønster (test)

Gjentar en startuke framover gjennom et helt år, slik at en oppgjørsregel kan valideres før go-live — for én ansatt, en organisasjonsenhet eller alle. Jobben kan også godkjenne periodene den seeder, slik at et helt oppsett kan kontrolleres fra start til slutt. Kun på testarbeidsområder.

Hvorfor det finnes

Et arbeidsområde som settes opp i september har nøyaktig én godkjenningsperiode: september. Det finnes ingen Q1 og ingen Q2, så det er ingen oppgjørskjede å se på — og perioder kan aldri opprettes bakover, fordi hver av dem åpner på den forriges sluttsaldo.

Denne jobben går motsatt vei. Legg inn én representativ uke — på arbeidsområdets startdato eller en hvilken som helst senere uke — og la jobben gjenta den framover derfra. Hver periode den oppretter er den nyeste, så kjeden bygges i den rekkefølgen den faktisk ville oppstått.

Dette er et simuleringsverktøy. Det vises bare på arbeidsområder som er merket som testarbeidsområde under Admin › Arbeidsområde, og det kjører aldri etter en tidsplan. Det er ikke tilgjengelig på et kundearbeidsområde.

Før du kjører den

  1. Konfigurer reglene du vil validere — oppgjørspolicyen, tidsbankkontoene, ansettelsesvilkårene med timelistegodkjenning slått på.
  2. Sørg for at helligdagskalenderen dekker månedene du er i ferd med å seede. Dager den ikke dekker, seedes som vanlige arbeidsdager.
  3. Gi den ansatte noe å autofylle på — en standardaktivitet eller en prosentfordeling på aktivitetslisten sin. Det holder ikke å slå på autofylling i arbeidstidspolicyen; uten et mål stopper jobben i stedet for å fylle et år med tomme dager.
  4. Legg inn din representative uke som den ansatte, gjennom den vanlige timelisten. Ekte registreringer på ekte aktiviteter. Start den på arbeidsområdets startdato — eller der du vil, og fortell jobben hvor med Mønsterets startdato.

Gi uken form. En uke med nøyaktig normtid gir en differanse på null i hver periode, så ingen tak slår inn og ingenting bortfaller — det seedede året ville ikke bevise noe. Registrer over norm noen uker og under andre.

Mønsteret

Mønsteret er det du la inn, ikke noe du konfigurerer. Jobben leser sjudagersblokker fra mønsterets startdato og gjentar dem framover. Lar du datoen stå tom, begynner den der arbeidsområdet begynner — eller der den ansattes ansettelse begynner hvis den er senere, for før noen av dem kan ingenting registreres:

MønsterukerHva som gjentas
1Et ukentlig mønster
2En fjortendagsrotasjon
4En 4-ukers rotasjon — en beredskaps- eller vaktsyklus

En «uke» er her sju dager fra startdatoen, ikke mandag til søndag, så det virker uansett hvilken ukedag arbeidsområdet ditt begynner på. Ukedagene bevares: en tirsdag i mønsteret lander alltid på en tirsdag.

Parametre

ParameterBetydning
AnsattSeed denne ene ansatte.
OrganisasjonsenhetSeed alle ansatte i denne enheten og dens underenheter.
Alle ansatteSeed alle ansatte i arbeidsområdet.
MånederHvor langt fram det skal gjentas, 0–24. Rundes utover, slik at hver godkjenningsperiode den berører fylles helt. 0 gjentar ingenting: jobben arbeider bare med periodene mønsteret selv dekker — se Teste et helt oppsett.
MønsterukerHvor mange sjudagersblokker mønsteret består av, 1–8.
Mønsterets startdatoDagen mønsteret leses fra. La den stå tom for å lese fra arbeidsområdets startdato — eller ansettelsens startdato hvis den er senere. En dato før en av dem flyttes opp til den.
Overskriv eksisterende tidsregistreringerErstatter arbeidstid som allerede ligger på en måldag. Av som standard.
Godkjenn avregninger automatiskSender inn og godkjenner hver seedede periode, eldste først, på vegne av den ansatte og lederen. Av som standard.

Velg nøyaktig én av Ansatt, Organisasjonsenhet og Alle ansatte. Hver ansatt seedes for seg — med sitt eget mønster, sine egne ansettelsesvilkår og perioder. Med en enhet eller alle ansatte blir en ansatt som ikke kan seedes (ingen ansettelsesvilkår med timelistegodkjenning, et tomt mønstervindu, …) hoppet over og listet med årsaken, mens de andre seedes; med én ansatt stopper kjøringen i stedet.

Hva jobben gjør med hver dag

Dag for dag gjennom det seedede intervallet:

  1. En helligdag røres ikke.
  2. En dag med fravær eller ferie røres ikke — en planlagt ferie i måned 7 overlever kjøringen uendret.
  3. En dag som allerede har arbeidstid får ligge, med mindre du har slått på Overskriv.
  4. Ellers kopieres den tilsvarende dagen fra mønsteret: både registreringer og inn-/utstemplinger, på samme klokkeslett.
  5. En dag mønsteret lar stå tom får sin forventede norm. På en helg eller helligdag er den null, så de dagene forblir tomme.

Deretter beregner jobben tillegg og overtid på hver dag i periodene den dekker — de kopierte dagene, og dager som lå der fra før, for eksempel registreringer hentet inn med en import, som ellers ikke beregnes før den nattlige kjøringen. Til slutt oppretter jobben hver berørte godkjenningsperiode og bringer den til klar.

Innsending og godkjenning er fortsatt ditt med mindre du slår på Godkjenn avregninger automatisk — å gå gjennom periodene selv er ofte hele poenget: se saldoen kjede fra hver periodes avslutning inn i den nestes åpning. Med automatisk godkjenning sender jobben inn og godkjenner hver periode i rekkefølge, slik at oppgjøret kjøres og neste periode åpner på den oppgjorte saldoen. Den stopper ved en periode som ikke kan sendes inn (et blokkerende brudd, eller en tidligere periode som fortsatt er åpen), og melder hvor.

Overskriv når bare arbeidstid. Fravær, ferie og helligdager avgjøres før den i det hele tatt konsulteres, så ingen innstilling av den bryteren kan slette planlagt fravær. Den låser heller ikke opp en periode du allerede har sendt inn eller godkjent.

Slik leses resultatet

FeltBetydning
source_windowDagene mønsteret ble lest fra
resolved_spanDagene som faktisk ble seedet, etter avrunding til hele perioder
days_writtenDager som fikk registreringer
days_skippedDager som ble hoppet over, etter årsak: holiday, leave, has_data, locked
days_erasedRegistreringer fjernet av Overskriv
days_reconciledDager der tillegg eller overtid endret seg da de ble beregnet
periods_readyPerioder opprettet og brakt til klar
periods_skippedPerioder som ble hoppet over — allerede klare, eller allerede sendt inn eller godkjent
periods_approvedPerioder sendt inn og godkjent (med automatisk godkjenning)
employees, employees_skippedHvor mange ansatte som ble seedet, og hvor mange som ble hoppet over
per_employeeDe samme tallene for hver ansatt, med årsaken til at en ansatt ble hoppet over eller hvor godkjenningene stoppet

Med flere ansatte er tallene totaler for alle.

Hold days_skipped.holiday opp mot helligdagene du forventer i det seedede året. Null over tolv måneder betyr at helligdagskalenderen ikke rekker så langt.

Teste et helt oppsett

For å kontrollere at en konfigurasjon beregner de riktige tallene, henter du inn testansatte med en hel periode med registreringer — med en import eller ved å legge dem inn — og kjører jobben med:

  • Alle ansatte (eller enheten du tester),
  • Mønsterets startdato på periodens første dag, og Mønsteruker som dekker det meste av den,
  • Måneder satt til 0, slik at ingenting gjentas utover registreringene du la inn,
  • Godkjenn avregninger automatisk slått på.

Jobben beregner tilleggene, godkjenner periodene og kjører oppgjøret, slik at avregningene viser de endelige saldoene, klare til å sammenlignes med det reglene sier. Implementeringsteamet kjører dette fra et skript med arbeidsområdets API-nøkkel.

Hvis du kjører den igjen

En ny kjøring med de samme parametrene endrer ingenting: dager som allerede har data hoppes over, og perioder som allerede finnes opprettes ikke på nytt. Vil du forme året på nytt, endrer du mønsteruken og kjører igjen med Overskriv slått på.

Feilsøking

ProblemLøsning
Jobben står ikke i listenArbeidsområdet er ikke merket som testarbeidsområde
«no registrations between …»Mønstervinduet er tomt — legg inn uken først eller pek mønsterets startdato mot uken du faktisk la inn
«nothing to register norm time on»Aktivitetslisten har verken standardaktivitet eller prosentfordeling — sett en. At autofylling er slått på i arbeidstidspolicyen gir den ikke i seg selv et mål
«do not enable timesheet approval»Slå på timelistegodkjenning i den ansattes ansettelsesvilkår
«exactly one of employee_id, org_unit_id or all_employees»Velg ett omfang: en ansatt, en organisasjonsenhet eller Alle ansatte
En ansatt ble hoppet overper_employee oppgir årsaken — de samme meldingene som i denne tabellen
Godkjenningene stoppet ved en periodeper_employee oppgir perioden og hvorfor: et blokkerende brudd (for eksempel en arbeidsdag uten registrering), eller en tidligere periode som ikke er godkjent ennå
Hver periodes differanse er hele den arbeidede tidenDe seedede dagene har ingen forventet norm — sjekk at ansettelsesvilkårene dekker det seedede året
Helligdager ble seedet som arbeidsdagerHelligdagskalenderen dekker ikke de månedene
En periode ble hoppet overDen var allerede sendt inn eller godkjent; gjenåpne den først hvis den skulle seedes på nytt