|
Tip 26 - Archiveren van gegevens bij een update
Het komt vaak voor dat men gewijzigde
gegevens wil archiveren, zoals bijv. oude prijzen in
een voorraad-databank. Bij het invoeren van een nieuwe prijs
zou het dan handig zijn de oude prijs ergens te archiveren
samen met de wijzigingsdatum. Dit kan op allerlei manieren.
De eenvoudigste is wellicht via een script aangestuurd door
een button naast het prijsveld. Die button zou
New Price
kunnen heten.
De kern van het script zou dan als
volgt kunnen beschreven worden:
- eerst een vraag om de actie te
bevestigen ("U staat op het punt een prijswijziging in
te voeren...", enz.);
- daarna wordt de oude prijs
gearchiveerd naar een archiefveld (dat mag een gewoon
tekstveld zijn) via het Set
Field commando gevolgd door
&
"¶" en eventueel
voorafgegaan door "Vorige
prijs geldig tot " & DateToText(Today) & ":
"
- bij elke prijswijziging wordt
dus een lijn toegevoegd in het archiefveld (best dus
een veld te gebruiken met een scroll bar).
- opmerking: om te voorkomen dat
een prijs niet gearchiveerd wordt bij een gewone
wijziging, kan de toegang tot het veld afgesloten
worden, zodat het nog enkel te bereiken is via
New
Price.
Uiteraard zijn talrijke varianten
mogelijk: de datum onderbrengen in een datumveld indien het
nodig is erop te zoeken; het veld Prijs enkel
toegankelijk maken in Browse mode, enz.
|