Gå til innhold

Beregning av statistikk og diagrammer + et kalenderspørsmål


Anbefalte innlegg

God morgen folkens

Kanskje litt tidlig på en søndagsmorgen enda, men jeg har et spørsmål ang beregning av statistikk i forbindelse med et timerapporteringssystem jeg jobber med.

 

I systemet er det ønskelig at det for hver mnd skal beregne faktureringsgrad av timene som er rapportert. Spørsmålet mitt er hvordan man enkelst kan gjøre dette, og ikke minst at det blir riktig gjort. I første omgang er det snakk om å beregne statistikk for en enkelt person, og ikke sum av alle.

 

Jeg tenkte først at dette var lett som bare det (sier ikke at det ikke er det likevel), men etterhvert har det dukket opp et par småting som kanskje gjør det litt mer komplisert enn det er.

 

Mitt første forslag var å hente ut fra databasen alle registrerte timer, og på bakgrunn av infoen som er registrert beregne forholdet mellom timene som er registrert som fakturerbare, og timene som ikke er det. Dette gir meg et forholdstall, ja, men det sier jo kun noe om timene som faktisk ER registrert.

 

Dersom man tar utgangspunkt i at en mnd har 160 arbeidstimer (som benyttes i dette firmaet (hvertfall som overordnet antall)) så blir det jo litt feil dersom man har rapportert totalt 150 timer og alle er fakturerbare, og så får ut 100% faktureringsgrad. Samme gjelder også dersom noen legger ned mange timer overtid, og på den måte f.eks logger fler enn 160 fakturerbare timer, i tillegg til noen som ikke er fakturerbare. De kan jo da IKKE oppnå 100% fakturerbarhet, selv om det egentlig skulle vært det i forhold til de 160 timene som en mnd består av.

 

Jeg føler at jeg på en måte også må få tatt hensyn til det antall timer som man SKAL jobbe i en mnd (antall arbeidsdager * 8). Jeg ser for meg at dette tallet kanskje må beregnes for hver enkelt mnd, og så benyttes til beregninger videre. Dette gir meg enda en utfordring, da f.eks i mai mnd som har en masse røde dager som går utover vanlig lørdag og søndag.

 

I tillegg skal dette presenteres i diagramform, kanskje helst et kakediagram. Foreløpig har jeg tenkt å benytte meg av Google sitt API, da det virker som det gjør nytten hvertfall i første omgang.

 

Så spørsmålene:

1. Hva blir riktigst måte å beregne faktureringsgraden på? Er jeg inne på noe i beskrivelsen min over ?

 

2. Kjenner du til en kalender jeg kan bruke som vil gi meg alle helligdager i et år, som jeg kan bruke til å beregne hvor mange arbeidsdager det er i et år, og i hver enkelt måned ? Gjerne en som tar for seg hele Norden, da firmaet har flere nordiske kontorer.

 

3. Hvilke andre diagram API'er bør jeg vurdere ?

 

Håper på noen gode svar nå folkens :)

Lenke til kommentar
  • 2 uker senere...
Videoannonse
Annonse

Ikke at jeg har peiling i det heletatt på faktureringsgrader, men utifra din beskrivelse så har jeg følgende forslag:

 

1. i hver måned har du en CRONJOB som gjør følgende;

 

Henter all informasjon som er lagret av brukeren

 

Sjekker om antall registrerte dager = totalearbeidsdager den måneden.

 

Scratch that, ser problemet...

 

Hva med, løsning 2.

 

Hver natt kl. 24. Går et script igjennom dagens arbeidstimer. Hvis man har jobbet antall timer som skal jobbes den dagen, legger den inn i to kolonner( timer->7, overtid->0). For ettersom jeg ser dette, må det bli løst pr. dags. basis.

 

Har brukeren jobbet mer enn 7 timer, blir feltene slik(timer->7, overtid->3), under 7 timer(timer->3,overtid->0).

 

i slutten av måneden har du så et script som kjører igjennom kolonnene for hver bruker, sjekker om hv

 

Ok, tror jeg er på rett vei nå.

 

Du må nok ha et script i slutten av måneden som går igjennom hver bruker på en dags basis.

 

pr.dag;

1.Sjekker opp hvor mange timer som SKAL jobbes. ( fra array elns.)

2. Sjekker opp hvor mange timer som er jobbet. ($timer->?)

3.Sjekker overtid ( $overtid->?)

4. legger alle timene som er fakturerbare(Faktureringstimer-> $timer)-> i en array.feks

 

så går det igjennom alle faktureringstimene og det burde gå om jeg har forstått riktig..

 

Litt ueffektiv løsning muligens men bør fungere om jeg ikke har oversett noe

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...