Ik ben bezig met een systeem waarin met dossier wordt gewerkt. Deze dossiers bestaan uit een aantal velden welke in de loop van de tijd kunnen aangepast worden.
Het probleem is dat de klant de eis stelt dat rapportages uit het verleden weer opnieuw uitgeprint kunnen worden. Dus wanneer een oude rapportage opnieuw wordt uitgeprint dienen veranderingen na de oorspronkelijke datum van de rapportage niet meegenomen te worden. Er moet dus worden bijgehouden welke veranderingen zo'n dossier meemaakt.
Ik heb zelf een paar opties bedacht.
Verder hebben de eerste 2 punten het nadeel dat bijgehouden moet worden welke query er is losgelaten op de database om hetzelfde rapport weer te kunnen genereren.
Een andere moglijkheid is bij te houden welke velden nu precies zijn veranderd. Maar dit lijkt mij best complex worden. Volgens mij moeten er dan kolomnamen uit de dossiertabel in een kolom worden opgeslagen. Iets wat mij niet echt lekker in de oren klinkt. Verder worden in de toekomst zeer waarschijnlijke nieuwe type dossiers toegevoegd aan het programma met andere velden. Er zou dus een algemene oplossing voor moeten komen.
Ik ben benieuwd of andere leden ideeen hebben over dit probleem en/of mij een richting kunnen geven voor een oplossing
Het probleem is dat de klant de eis stelt dat rapportages uit het verleden weer opnieuw uitgeprint kunnen worden. Dus wanneer een oude rapportage opnieuw wordt uitgeprint dienen veranderingen na de oorspronkelijke datum van de rapportage niet meegenomen te worden. Er moet dus worden bijgehouden welke veranderingen zo'n dossier meemaakt.
Ik heb zelf een paar opties bedacht.
- Een trigger aan een update query in de database te hangen. Op die manier kan automatisch het oorspronkelijke dossier worden gekopieerd en het huidige dossier worden aangepast.
- Via de code kan een nieuwe dossier worden aangemaakt.
- Alle gegenereerde rapportages opslaan & indexeren en weer heropvraagbaar maken.
Verder hebben de eerste 2 punten het nadeel dat bijgehouden moet worden welke query er is losgelaten op de database om hetzelfde rapport weer te kunnen genereren.
Een andere moglijkheid is bij te houden welke velden nu precies zijn veranderd. Maar dit lijkt mij best complex worden. Volgens mij moeten er dan kolomnamen uit de dossiertabel in een kolom worden opgeslagen. Iets wat mij niet echt lekker in de oren klinkt. Verder worden in de toekomst zeer waarschijnlijke nieuwe type dossiers toegevoegd aan het programma met andere velden. Er zou dus een algemene oplossing voor moeten komen.
Ik ben benieuwd of andere leden ideeen hebben over dit probleem en/of mij een richting kunnen geven voor een oplossing