[sql] hoe zijn kalender/urenregistratie databases opgebouwd.

Pagina: 1
Acties:
  • 165 views sinds 30-01-2008
  • Reageer

  • shades
  • Registratie: September 2001
  • Laatst online: 19-05 08:57
Ik wil een urenregistratiesysteem ontwikkelen maar ik weet niet precies hoe ik moet beginnen. Beetje vaag misschien. Onze afdeling beheerd voor een toko een 30 taal applicaties. De tijd die iemand(kan meerdere zijn) aan een applicatie spendeerd moet gelogd worden waarna er per week/maand/jaar gekeken kan worden hoeveel uur beheer er aan die ene applicatie tijd is besteed.

Mijn vraag is wat de beste manier op datum W, X uur op te schrijven voor applicatie Y en beheerder Z. X is gewoon een getal, Y en Z verwijzingen naar een andere tabel maar het gaat mij op W. Ik zat eerst te denken aan gewoon 1 / 365(366) en dan een routine schrijven die de maand, dag en week daaruit kan herleiden of zijn er betere methoden om dit te doen.

Graag suggesties of ervaringen van mensen die hier al mee bezig zijn geweest.

https://k1600gt.nl


  • OZ-Gump
  • Registratie: November 2002
  • Laatst online: 14-05-2024

OZ-Gump

terug van weggeweest

Waarom zou je niet gewoon een DateTime veld gebruiken? Hierin kun je zowel datum als tijd kwijt. Met een functie als DateDiff kun je dan het verschill tussen twee waardes opzoeken.

Mijn idee: een start datumtijd en een stop datumtijd invullen: dan kun je in de toekomst ook mooi aangeven wanneer iemand dan aan die applicatie gewerkt heeft.

My personal website


  • ripexx
  • Registratie: Juli 2002
  • Laatst online: 00:04

ripexx

bibs

Waarom schrijf je eerst niet eens je eisen uit op papier, dan weet je ook waar uiteindelijk je datamodel aan moet voldoen. Zoals jij het u stelt zou ik gewoon een model maken waarin je een tabel beheerders hebt en een tabel applicaties. Daarnaast heb je een tabel uren met waarin je gewoon in registreert de applicatie, medewerker/beheerder, start datum-tijd en eind datum-tijd.

Met wat slim gebruik van de verschillende DB functies moet je aardig snel je overzichten kunnen maken. ;) (Natuurlijk geheel afhankelijk van je gebruikte (R)DBMS)

buit is binnen sukkel


  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
men neme:

tbl_registratie; met daarin de tijd (rekenen per kwartier), de datum, een FK op de project-tabel en een FK op de personeelstabel

de rest moet je zelf kunnen bedenken...
OZ-Gump schreef op 03 februari 2004 @ 13:30:
Mijn idee: een start datumtijd en een stop datumtijd invullen: dan kun je in de toekomst ook mooi aangeven wanneer iemand dan aan die applicatie gewerkt heeft.
Ben zelf ook eens begonnen op deze manier, werd me echter door iemand van de werkvloer afgeraden, kost wat extra tijd en is foutgevoelig(er). Neemt overigens niet weg dat het met het oog op control / auditing een zeer goede oplossing is :)

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • shades
  • Registratie: September 2001
  • Laatst online: 19-05 08:57
ripexx schreef op 03 februari 2004 @ 13:39:
Waarom schrijf je eerst niet eens je eisen uit op papier, dan weet je ook waar uiteindelijk je datamodel aan moet voldoen. Zoals jij het u stelt zou ik gewoon een model maken waarin je een tabel beheerders hebt en een tabel applicaties. Daarnaast heb je een tabel uren met waarin je gewoon in registreert de applicatie, medewerker/beheerder, start datum-tijd en eind datum-tijd.

Met wat slim gebruik van de verschillende DB functies moet je aardig snel je overzichten kunnen maken. ;) (Natuurlijk geheel afhankelijk van je gebruikte (R)DBMS)
Een functioneel ontwerp heet dat geloof ik he ? Dat van die start- en stoptijd is wel een interessante optie ja.. maar is het mogelijk om in sql2000 (ik gebruik de desktopvariant) slechts een datum (dag) in te vullen. Volgens mij propt hij er automatisch ook nog een tijd aan vast en dat is niet handig.
FvKnijff schreef op 03 februari 2004 @ 14:50:
men neme:

tbl_registratie; met daarin de tijd (rekenen per kwartier), de datum, een FK op de project-tabel en een FK op de personeelstabel

de rest moet je zelf kunnen bedenken...
Dit klinkt inderdaad wel eenvoudig en dat moet het ook zijn (zoiets had ik al uitgedacht). Ik ga deze insteek uitwerken. Er hoeft overigens niet echt geaudit te worden over wat mensen doen maar is meer om te kijken welke applicatie de meeste aandacht vraagt. Op die manier zouden ze e.e.a. kunnen budgetteren..

https://k1600gt.nl


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
shades schreef op 03 februari 2004 @ 17:50:
[...]


Een functioneel ontwerp heet dat geloof ik he ? Dat van die start- en stoptijd is wel een interessante optie ja.. maar is het mogelijk om in sql2000 (ik gebruik de desktopvariant) slechts een datum (dag) in te vullen. Volgens mij propt hij er automatisch ook nog een tijd aan vast en dat is niet handig.

[knip]
Klopt.
Maar als je alleen een datum add in je tabel, dan zal hij alleen de datum noteren.
Als je b.v. opgeeft today.now als parameter-inhoud, dan zal hij ook de tijd erin zetten.
Maar dan nog kan je natuurlijk met .format je waarde formateren op je form.

The best thing about UDP jokes is that I don't care if you get them or not.


  • shades
  • Registratie: September 2001
  • Laatst online: 19-05 08:57
Remc0 schreef op 03 februari 2004 @ 19:58:
[...]

Klopt.
Maar als je alleen een datum add in je tabel, dan zal hij alleen de datum noteren.
Als je b.v. opgeeft today.now als parameter-inhoud, dan zal hij ook de tijd erin zetten.
Maar dan nog kan je natuurlijk met .format je waarde formateren op je form.
Okidoki. Ik ga ermee aan de slag..

https://k1600gt.nl


  • Remco
  • Registratie: Januari 2001
  • Laatst online: 21-05 08:21
Ik ben nu ook toevallig bezig met een tijd-registratie systeem.
Zie:
[rml]Remc0 in "[ VB.NET] Topmost"[/rml]

Ik heb een aantal velden m.b.t. een datum.
- Een invoer-veld (wanneer de registratie word ingevoerd, dit om eventuele latere discussies aan te kunnen gaan)
- Een registratie-datum, de datum waarop de registratie betrekking heeft.

Het invoer-veld geef ik een today.now waarde mee.
Dit geeft als invoerwaarde de datum en een tijd.

Het registratie-veld selecteren ze uit een datetimepicker, en geef ik als invoerwaarde in mijn query:
DateTimePicker1.Value.ToString("dd-MM-yyyy")
Dit geeft dan een mooi formaat.

Op deze wijze kan ik dus het registratie-veld aanroepen in mijn programma, zonder de datum te moeten formatteren.

The best thing about UDP jokes is that I don't care if you get them or not.


  • shades
  • Registratie: September 2001
  • Laatst online: 19-05 08:57
Remc0 schreef op 03 februari 2004 @ 21:13:
Ik ben nu ook toevallig bezig met een tijd-registratie systeem.
Zie:
[rml]Remc0 in "[ VB.NET] Topmost"[/rml]

Ik heb een aantal velden m.b.t. een datum.
- Een invoer-veld (wanneer de registratie word ingevoerd, dit om eventuele latere discussies aan te kunnen gaan)
- Een registratie-datum, de datum waarop de registratie betrekking heeft.

Het invoer-veld geef ik een today.now waarde mee.
Dit geeft als invoerwaarde de datum en een tijd.

Het registratie-veld selecteren ze uit een datetimepicker, en geef ik als invoerwaarde in mijn query:
DateTimePicker1.Value.ToString("dd-MM-yyyy")
Dit geeft dan een mooi formaat.

Op deze wijze kan ik dus het registratie-veld aanroepen in mijn programma, zonder de datum te moeten formatteren.
Die datetimepicker is leuk maar niet als je je proggy webbased gaat maken :) maar daar kom ik wel uit.

https://k1600gt.nl

Pagina: 1