Reserveren artikelen

Status
Niet open voor verdere reacties.

agroenen

Gebruiker
Lid geworden
17 apr 2009
Berichten
15
Hoi,

ik heb drie tabellen:

1. Een tabel met artikelnummers (dit zijn dezelfde artikelen, alleen het nummer geeft dus onderscheid aan)
2. Een tabel met bedrijven
3. Een tabel met een link naar 1, een link naar 2, en twee velden: datum van en datum tot en met.

Een bedrijf kan een artikel lenen voor een bepaalde periode.

Tabel 3 staat als subformulier bij de verschillende bedrijven; het artikelnummer kan in dit formulier geselecteerd worden m.b.v. een keuzelijst.

Hoe kan ik het voor elkaar krijgen, dat als ik in dit subformulier een nieuwe uitlening invul (dus datum van / datum tot en met), ik in de keuzelijst van de artikelen alleen de artikelen te zien krijg die in die periode nog niet uitgeleend zijn...?

Hartelijk dank voor het meedenken vast!
 
Je zult de keuzelijst moeten filteren op datum; daarbij mag je uitgaan van de volgende situaties, gecontroleerd op de laatste ingevoerde records van de artikelen:
1. als een Datum_Uit is ingevuld en Datum_Retour niet, is het artikel uitgeleend en mag het artikel dus niet in de lijst mag voorkomen
2. als een Datum_Uit is ingevuld en Datum_Retour is < dan huidige datum, het artikel retour is en mag het artikel in de lijst voorkomen
3. als er geen record bestaat van een artikel in de uitleentabel, is het in huis en mag het in de lijst voorkomen.
Daar kun je dus vrij makkelijk op filteren.
 
Het probleem is dat de datum_van en datum_tot_en_met die ik invul niet persé de huidige datum hoeven te zijn; hoe ga ik een vergelijk maken tussen de datums die al in de tabel staan, en die ik invul?

Dus bijvoorbeeld:
Bedrijf X heeft artikel 1 geleend van 3-8-2014 t/m 25-8-2014
Bedrijf Y wil een artikel lenen van 8-8-2014 t/m 30-8-2014. Artikel 1 mag dan niet in de lijst voorkomen.
Bedrijf Z wil een artikel lenen van 31-7-2014 t/m 2-8-2014. Artikel 1 moet dan wel in de lijst voorkomen.
 
Je stelt nu een ander probleem: het gaat dus niet (alleen) om uitleningen, maar (ook) om reserveringen. En een reservering ligt doorgaans in de toekomst. Dus er komen wat voorwaarden bij: je zult de datum ook moeten afzetten tegen reserveringsperiodes. Dat is een stuk ingewikkelder, en daarom lijkt het mij beter als je een voorbeeldje post met wat dummy records.
 
Volgens mij komt dat op hetzelfde neer? Een artikel kan niet uitgeleend worden, als-ie dat al is.

Ik zie dat ik maar 100 kb mag uploaden; ik moet dus e.e.a. gaan uitkleden. Wordt vervolgd...
 
Het was even gedoe, de db is een .accdb, en die blijven te groot. Dus ik heb maar een nieuwe in .mdb gemaakt...

Op frm_Subformulier_Reserveringen wil ik alleen artikelnummers op kunnen vragen die nog niet uitgeleend zijn in de ingevoerde periode. Er staan nu twee regels in, die elkaar "overlappen".

Bekijk bijlage Uitgekleed.rar
 
Volgens mij komt dat op hetzelfde neer? Een artikel kan niet uitgeleend worden, als-ie dat al is.
Niet helemaal. Als je alleen het uitlenen vastlegt is het vrij simpel. Dan ligt een artikel in de kast, of niet. Bij reserveringen komt er dus iets bij, want dan moet de controle ook kijken naar toekomstige tijdblokken. En dat is dus een stuk lastiger. Ik kijk zo wel even naar je voorbeeld. Wil je een uitgebreider bestand uploaden, dan kun je dat op een fileshare als mijnbestand.nl o.i.d. wel neerzetten. Halen we hem daar op.
 
Hm; wat mij betreft kunnen uitleningen ook best in de toekomst zijn :)

Had ik eerder moeten weten, van mijnbestand.nl; aan de andere kant heb ik nu wel weer eens een mdb-bestand, ook niet gek natuurlijk!

gr., Anoushka
 
Een reservering is niet hetzelfde als een uitlening, al was het maar omdat een reservering kan vervallen en een uitlening niet :). En bij een vervallen reservering komt de tijd uiteraard weer vrij. Wat meestal inhoudt dat een reserveringsrecord verwijderd mag worden (tenzij je die wilt archiveren natuurlijk), iets dat bij een uitgevoerde reservering uit den boze is. Derhalve zou ik ze, als ik jou was, toch als aparte entiteiten behandelen :).
 
Dan houden we het op Reservering; er moeten periodes in de toekomst vastgelegd kunnen worden.
Heb je enig idee...?
 
Ik heb wel ergens een hotelboek systeem liggen, waar wat onderdelen uit te halen zijn. Daar werkt immers hetzelfde principe. De reden dat ik zo hamer op het verschil tussen uitlenen en reserveren is overigens niet vanwege semantiek, maar vanwege functionaliteit. Zoals ik al zei: een reservering kan vervallen, een uitgeleend artikel niet. Daar zul je dus rekening mee moeten houden in de db. Bovendien wil je in je lijst alleen vergelijken met het laatste uitleenrecord (is immers terug of nog weg, zoals ik al uitlegde) en gaat het bij reserveringen om de complete lijst, althans om de records die om en in de aangegeven tijdsduur liggen. Ook dat is een technisch verschil waar je rekening mee moet houden.
 
Ik heb eerder op internet wel reserverings-voorbeelden gevonden, maar die werken allemaal met een kalenderoverzicht; ze zitten voor mij zo ingewikkeld in elkaar dat ik daar niet veel mee kon. Dus als het systeem dat jij hebt wat simpeler is: graag!
 
Simpel wordt het sowieso niet, want dat is nu eenmaal het karakter van je vraag :).
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan