Avatar billede dgj Nybegynder
24. august 2006 - 11:47 Der er 6 kommentarer og
1 løsning

Hjælp til at opbygge timesag/seddel system

Hej alle sammen, jeg står og vil lege med MySQL og vil lave et timesags program, hvordan skal databasen opbygges

1 eller 2 tabeller eller evt. flere
jeg skal have rækker/kolloner der hedder

Sagsnr, Sagsnavn, og så skal der var boxe hvor man udfylder time eller halve, for hver ugedag, mandag-søndag

Jeg ved ikke om dette kommer til at se rigtigt ud, men jeg forsøger:
                   
                      M    T    O  T  F  L  S
---------------------------------------------------
|Sagsnr  | Sagsnavn | 7 | 6,5 | 4 | 5 | 8 | 0 | 0 |
---------------------------------------------------
|Sagsnr  | Sagsnavn | 7 | 6,5 | 4 | 5 | 8 | 0 | 0 |
---------------------------------------------------
|Sagsnr  | Sagsnavn | 7 | 6  | 4 | 5 | 8 | 0 | 0 |
---------------------------------------------------
|Sagsnr  | Sagsnavn | 7 | 6,5 | 4 | 5 | 8 | 0 | 0 |
---------------------------------------------------
|Sagsnr  | Sagsnavn | 0 |  0  | 0 | 0 | 0 | 0 | 0 |

Er der nogle der kan hjælpe vil jeg blive meget glad
Avatar billede Slettet bruger
24. august 2006 - 14:49 #1
Selve databasen ville jeg nok lave med 2 tabeller:

tabel 1: sag
id, int autoincrement PK
navn, varchar

tabel 2:
sag_id, int
dato, DATE
timetal

Hvis der kun skal kunne angives i hele og halve timer, ville jeg nok vælge at lade timetal være en int, der angiver antal halve timer, men hvis der skal være mulighed for mere detaljeret tidsudregning senere, ville jeg nok bruge en float
Avatar billede dgj Nybegynder
24. august 2006 - 15:28 #2
DATE gør den så man kun kan skrive på den gældende dag, eller hvad ???, for det er ikke så praktisk her
Avatar billede Slettet bruger
24. august 2006 - 15:39 #3
Ikke forstået?

Vi snakker om design af databasen, ikke af selve programmets brugergrænseflade, ikke?
Avatar billede dgj Nybegynder
25. august 2006 - 18:23 #4
jeg tænkte på hvordan den ellers skulle finde ud af hvilken dag man satte noget ind
Avatar billede Slettet bruger
25. august 2006 - 18:49 #5
Det skal vel virke for mere end en enkelt uge?

Med mit forslag, skal man bare indsætte datoen sammen med timetallet og sagsnummeret, og tabellens primærnøgle skal sættes til at være sammensat af sagsnummer og dato.

Der kommer altså til at være en række i tabellen for kombination af dato og sag. Det giver måske en masse rækker, men det er ikke et problem for databasen at håndtere. Og man kan sagtens undlade at lave rækker for kombinationer, hvor der ikke er nogen timer.
Avatar billede senil Nybegynder
28. august 2006 - 15:13 #6
Tabel 1(medarbejder)
ID --nøgle
Navn -- navn
lønsats -- timeløn
Overarbejdesats --
skattekommune

tabel 2 Timer
ln -- line nummer, nøgle
medarbejdeID -- nøgle
sagsid --en sag der er blevet arbejdet på
dato --
tidstart
tidslut
timer
udlæst --værdi som markere om denne line har været udlæst før
godkendt --er linien godkent af leder
lederID -- af hvilken leder
valgfritext --text som er valgfri

tabel 3 sag
sagid
lederid
sagtext
sagsnormerettimer
sagvigtighed

Detter er bare en lille udpluk af ting som et "ordenligt" time registerings skal indholde... Håber det giver lidt tankegang over hvordan man laver sådanne noget.
Avatar billede dgj Nybegynder
30. april 2007 - 10:31 #7
luk
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
Computerworld tilbyder specialiserede kurser i database-management

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