[Access] 2 tabellen met 2 relaties

Pagina: 1
Acties:

  • TweakersOnly
  • Registratie: September 2000
  • Laatst online: 12:58
Ik ben bezig met een delphi-applicatie welke het verlof van medewerkers registreert. Op een dag kan een medewerker verschillende keren als afwezig gemeld staan, bijvoorbeeld wanneer een medewerker tijdens zijn vakantie ziek wordt.

Aan elke absentie (ziekte, feestdag) wordt een verlofsoort geplakt. Ik wil eigenlijk de dubbelboeking van twee verlofsoorten registreren. Daarvoor heb ik een tabel Verlofsoort en Dubbelboeking.

In de tabel Dubbelboeking wil ik 3 velden registreren:
- Uniek ID
- Verlofsoort1
- Verlofsoort2

Er bestaat dus 2 keer een 1:N relatie tussen de tabel Verlofsoort en Dubbelboeking. Als ik dit in Access probeer te realiseren, wordt er een soort dummytabel van verlofsoort aangemaakt, wat volgens mij niet de bedoeling is. Weet iemand hoe ik dit kan realiseren?

  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 09:50

mulder

ik spuug op het trottoir

Begint goed.

Is het niet
Tabel Medewerker:
MedewerkerId

Tabel Verlof:
VerlofId
MedewerkerId
VerlofSoort

Query:
SELECT * (<-sorry) FROM Verlof WHERE MedewerkerId = '?'

oogjes open, snaveltjes dicht


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 13:02

gorgi_19

Kruimeltjes zijn weer op :9

Wat is zo onlogisch aan drie tabellen?

Tabel 1:
WerknemerID autonumber
dsfdsfsd

Tabel 2:
VerlofID Autonumber
Verlofnaam Text

Tabel 3: 'koppeltabel'
ID autonumber
WerknemerID
VerlofID
StartDatum
EindDatum

Volgens mij is dit de enige mogelijkheid met een N:M relatie (door middel van een tussentabel)

offtopic:
Jippie, eerste post.. ;)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Waarom zou je die dubbelboeking willen opslaan? Dat is in feite toch een procesgegeven, aangezien je het uit de andere verlofboekingen kunt filteren?

  • TweakersOnly
  • Registratie: September 2000
  • Laatst online: 12:58
Don Facundo schreef op 30 juli 2002 @ 20:28:
Begint goed.

Is het niet
Tabel Medewerker:
MedewerkerId

Tabel Verlof:
VerlofId
MedewerkerId
VerlofSoort
Die indeling heb ik al voor een aantal andere tabellen idd. :) In de tabel Verlof komt daarbij nl. ook de begin- en einddatum voor. Het kan in de praktijk voorkomen dat er twee records uit de tabel Verlof voor een medewerker tegelijkertijd voorkomen. Ik wil daarom in de tabel Dubbelboeking een tweetal velden "Verlofsoort1" en "verlofsoort2" plaatsen, welke de prioriteitsregels tussen twee verlofsoorten moet voorstellen.

Voorbeeld: Als ik in de tabel Dubbelboeking "Ziekte" als verlofsoort1 definieer en "Tandarts" als verlofsoort2, dan heeft de verlofsoort "Ziekte" de prioriteit, wanneer op een dag 2 x een record uit de tabel Verlof voor een medewerker voorkomen en de verlofsoorten in deze records respectievelijk "Ziekte" en "Tandarts" zijn.

Verwijderd

TweakersOnly schreef op 30 juli 2002 @ 20:51:
[...]

Ik wil daarom in de tabel Dubbelboeking een tweetal velden "Verlofsoort1" en "verlofsoort2" plaatsen, welke de prioriteitsregels tussen twee verlofsoorten moet voorstellen.
Als er een duidelijke volgorde in zit kan je gewoon een extra kolom toevoegen aan verlofsoort met een nummer die prioriteit aangeeft. Dee verlofsoort met de hoogste prioriteit wordt dan gebruikt.

[ Voor 0% gewijzigd door Verwijderd op 30-07-2002 21:11 . Reden: Typo ]


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 09:50

mulder

ik spuug op het trottoir

Geloof dat dit dan netter is:
Table Verlof:
VerlofId
MedewerkerId
VerlofsoortId
StartDate
EndDate

Table VerlofSoort:
VerlofSoortId
Name
Priority

oogjes open, snaveltjes dicht


  • TweakersOnly
  • Registratie: September 2000
  • Laatst online: 12:58
Don Facundo schreef op 30 juli 2002 @ 21:07:
Geloof dat dit dan netter is:
Table Verlof:
VerlofId
MedewerkerId
VerlofsoortId
StartDate
EndDate

Table VerlofSoort:
VerlofSoortId
Name
Priority
Yeps, daar had ik ook al aan gedacht, alleen lijkt het me voor de gebruiker lastig om de afzonderlijke prioriteit van > 10 verschillende verlofsoorten vast te stellen.

Verwijderd

TweakersOnly schreef op 30 juli 2002 @ 22:09:
[...]
Yeps, daar had ik ook al aan gedacht, alleen lijkt het me voor de gebruiker lastig om de afzonderlijke prioriteit van > 10 verschillende verlofsoorten vast te stellen.
1) De administrator onderhoudt toch de verlofsoorten, niet de gebruiker (= medewerker)? De medewerker die zijn uren boekt hoeft mijns inziens helemaal niet op de hoogte te zijn van de prioriteiten.

2) Hoezo zou dat moeilijk vast te stellen zijn? Of bedoel je moeilijk te onderhouden? Als je niet weet hoe je een eenvoudige en mooie onderhoudsfunctie hiervoor moet maken heb ik nog wel een idee:
- maak een lijst met alle verlofsoorten, met naast iedere verlofsoort een pijltje omhoog en naar beneden (uitzondering: bovenste geen pijltje omhoog, onderste geen pijltje naar beneden)
- als er op 1 van de pijltjes wordt gedruk, worden de prioriteit van de bijbehorende verlofsoort en zijn buurman in de richting van het pijltje verwisseld

NB: Als ik het totaal mis heb, moet je het me nog maar eens uitleggen wat je precies wil, want dit is wat ik er tot nu toe van kan maken.

Enjoy :)
Pagina: 1