Avatar billede Slettet bruger
19. november 2004 - 06:26 Der er 4 kommentarer og
2 løsninger

Tidsregistrering - løntillæg

Jeg har brugt uger, dage, timer, minutter og sekunder på en excel-fil til lønafregning, som tager højde for før og efter midnat, ugedage, helligdage og i hvilke tidsrum der give henholdsvis tillæg1, tillæg2 og tillæg3. Til dette har jeg i excel brugt HVIS, OG, ELLER, + og - i et stort antal på kryds og tværs.

Nu vil jeg så godt tidsregistreringen/lønafregning I Access, så...

Spg. 1: Når Start er kl 22 om aften og Slut er kl 7 om morgen dagen efter, hvordan for jeg Access så til at regne henover midnat.

Spg. 2: Hvordan får jeg efterfølgende Access til at udregne hvor mange timer og min der er til tillæg1, tillæg 2 osv. - Eks. Hvis Start er kl 22 og Slut er kl 7, så er der fra kl 22 til midnat 2 timer til tillæg1 og fra midnat 7 timer til tillæg2

Giv mig et spark i den rette retning

Mvh
Netmejer
Avatar billede japping Nybegynder
19. november 2004 - 08:37 #1
Sådan vil jeg gøre:
Spg. 1:
Find følgende 3 værdier: A er det antal timer der er tilbage af dagen (24-22=2). B er det antal timer der er fra starten af dagen og til det angivne tidspunkt (7-0=7). Hvis der er flere dage mellem de to tidspunkter, hvilket der nok ikke er i dit tilfælde kan du bruge antal dage mellem de to dage og gange det med 24 timer og det giver så værdien C. Nu har du så TOTAL=A+B+C.

Spg. 2:Hvis du vil have takster for forskellige tidsperioder vil jeg forslå at du laver en tabel med PERIODENR, STARTTID, STUTTID og TAKST. Denne tabel kan du så løbe igennem mht. en given arbejdsperiode. Det er noget i denne retning du skal bruge (arbejdsperioden starter med X og slutter med Y, Ialt er summen af tillægene):
For J=1 To MaxAntalPersoner
  IALT=0
  For  I=1 To MaxPeriodeNr do
    (Find det antal timer TIMERPERIODE(I) der er inden for hver PERIODENR(I))
    IALT(J)=IALT(J)+TIMERPERIODE(I) x TAKST(I)

Ovenstående er en overordnet vejledning og ikke en egentligt programkode.

Jeg håbder du kan bruge det, da jeg ikke har så megen tid i dag.
Avatar billede mugs Novice
19. november 2004 - 09:29 #2
spg1: Ved at lade dine start- og sluttider indeholde dato, måned og år:

2004-11-19 22:00

Vi har set utallige gang i Access kategorien, at brugerne ikke medtager dato, og det går som regel ikke godt. Når du har disse tider, kan du bruge funktionen DateDiff til at beregne forskellen i timer, dage m.v.

spg2: Her behøver du ikke dato, idet jeg antager at tillægene udløses hvert døgn. Som japping siger: En tabel der indeholder starttiderne for tillægene. Herefter kan du i din forespørgsel lave nogle udtryk, der beregner hvor mange timer der til tillæget udløses. For tillæg2 skal beregningen blot være "omvendt", idet Kl 7 jo er en numerisk større værdi end midnat.

Det kan laves på flere måder, dette er kun een af dem.
Avatar billede japping Nybegynder
19. november 2004 - 16:39 #3
Hermed har du også svar fra mig, hvis du kan bruge "noget" af min løsning.
Avatar billede Slettet bruger
22. november 2004 - 02:08 #4
Tak, for det svarene, Jeg har lige fået byttet om på point fordelingen, så japping, hvis du lige giver et svar på det "nye" spørgsmål jeg har lavet, så får du lige de 100 point ekstra du skulle have haft, plus 100 point for besværet.
Avatar billede Slettet bruger
22. november 2004 - 02:13 #5
Hej Japping, her er linket til dine manglende point http://www.eksperten.dk/spm/563738
Avatar billede Slettet bruger
22. november 2004 - 02:19 #6
Hej Japping

Hvis du får tid, så er der yderligere 200 point hvis du kan komme med en mere detaljeret vejledning eller programkode til ovenstående

Link til spørgsmålet: http://www.eksperten.dk/spm/563739

Andre er også velkommen til at komme med deres svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester