Automatisch een termijn invullen

Status
Niet open voor verdere reacties.

rick1982

Gebruiker
Lid geworden
14 jan 2009
Berichten
46
Beste Forumlezers,

voor een access 2003 bestand op het werk wil ik graag automatisch een termijn van 3 dagen of 3 maanden toevoegen voor hoelang een item mag duren. Als ik weging A aangeef dient er in een ander vak de datum te komen van de huidige datum + 3 dagen. Als ik weging B aangeef dient de termijn 3 weken te zijn.

Kan iemand mij uitleggen hoe ik dit kan doen?

Groeten

Rick
 
Het lijkt mij al voldoende als je de weging hebt opgeslagen + de startdatum. Ik zou in jouw geval dan een aparte tabel tWeging gebruiken met daarin de velden
Code:
1. WegingID - Autonummering
2. Omschrijving - tekst (Weging A, Weging B etc)
3. Duur - Getal (aantal dagen/maanden/weken etc)
4. DuurCode - Tekst

Je vult zo'n tabel dan zo:
Code:
1 - Weging A - 3 - d
2 - Weging B - 1 - m
3 - Weging C - 3 - m
(ik doe maar wat; het gaat om het idee)
In je tabel heb je dan een veld Weging waarvoor je op je formulier een keuzelijst met invoervak maakt waarin je alle velden zet. Dat veld slaat het veld WegingID op. En de termijn kun je dan met de functie DateAdd.
In mijn voorbeeldje heb ik dus bovenstaande tabel gemaakt en een keuzelijst op het formulier op basis van die tabel. De keuzelijst heet dan cboWeging. In een tekstvak zet je dan deze formule als Besturingselementbron:
Code:
=DateAdd([cboWeging].[Column](3);[cboWeging].[Column](2);[DOCDatum inboeken])
En nu zie je dus elke keer als je een andere weging selecteert een andere termijndatum.
 
In de bijgeleverde database kan je niks fout hebben gedaan, want daar zit niks in :).
 
Deze bevat in ieder geval tabellen en een formulier :). En ja, je deed wel wat fout ;). Iets teveel om allemaal uit te typen, dus kijk maar in de bijgeleverde versie wat er anders is.
 

Bijlagen

Octafish,

kan ik de getoonde termijn (tekstvak1) ook in de database opnemen?

Groeten

Rick
 
Kan, maar waarom zou je? Als je de db goed normaliseert (en dat heb je nu) dan sla je berekende gegevens nooit op. Waarom niet? Je kunt ze altijd opnieuw berekenen als je ze nodig hebt. Zoals nu dus gebeurt. Daarnaast vergroot het de kans op foutieve gegevens in de database, en dat wil je toch niet? Voorbeeldje wat er fout kan gaan (komt uit een echt voorbeeld uit een andere topic):
iemand had in één tabel velden gemaakt voor Datum, Jaar, Maand, Kwartaal en Week. Zodat er makkelijk te filteren was op de verschillende tijdsvakken. Niet alleen moesten al die gegevens worden ingevuld, maar wat dacht je van deze combinatie:
Code:
Datum: 12-3-2015
Jaar: 2014
Maand: 6
Kwartaal: 4
Week: 2
Geen enkel probleem voor welke database dan ook om dat zo op te slaan. Terwijl elke jandoedel met één oogopslag kan zien dat deze gegevens niets met elkaar te maken hebben. Dus ook die persoon heb ik gezegd: gooi alle velden weg behalve [Datum], de rest bereken je vanuit die datum wel als je ze nodig hebt.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan