Uitkomsten expressies in Access formulier naar tabel

Status
Niet open voor verdere reacties.

Pierie87

Nieuwe gebruiker
Lid geworden
4 jun 2014
Berichten
2
Beste mensen,

Momenteel ben ik bezig met het opzetten van een database voor mijn wetenschappelijke stage. Ik gebruik hiervoor een formulier in Access.
In dit formulier heb ik enkele expressies verwerkt. Oa. om de leeftijd van een persoon tijdens de ingreep te berekenen (datum procedure - geboortedatum). Alle formules werken goed, echter ik zag gister dat de uitkomst van deze berekeningen niet worden opgenomen in de tabel/de database.

Ik las ergens dat uitkomsten van expressies niet op worden genomen in de database, klopt dit? En heeft iemand hier een oplossing om deze uitkomsten wel in de database te krijgen?

Alvast bedankt.

Groeten
 
Ik las ergens dat uitkomsten van expressies niet op worden genomen in de database, klopt dit?
Dat heb je prima gelezen! En dat moet je vooral ook zou houden.... Berekeningen die zijn gebaseerd op niet-veranderende gegevens, sla je namelijk nooit op in een tabel. Nergens voor nodig. Je kunt ze namelijk altijd berekenen. In een tabel sla je gegevens op die niet-afhankelijk zijn van elkaar. Een geboortedatum is Patiënt-eigen, en verandert doorgaans niet, en een behandeldatum is ook exact wat het is: de datum waarop iemand is behandeld. En die ligt ook vast. Ergo: het verschil tussen de twee kun je altijd (correct) berekenen door ze van elkaar af te trekken. En de uitkomst van die berekening is volledig afhankelijk van de twee brongegevens. En daarom is opslaan volkomen zinloos, en levert zelfs een grotere foutenkans op! Want stel dat je één van de twee gegevens verandert (heeft iemand tóch de verkeerde behandeldatum ingevuld, dan verandert het veld met de berekende uitkomst niet automatisch mee. Moet je dat alsnog weer berekenen...

Omdat ze bij Microsoft werkelijk geen flauw benul hebben van zelfs maar de simpelste database principes, hebben ze in de nieuwere versies een berekend veld gebouwd, dat je zou kunnen gebruiken om de berekening te maken. Dat een échte database bouwer hier van gruwt, zal hopelijk wel duidelijk zijn, en bovendien verlies je stante pede alle compatibiliteit met andere database systemen, dus alleen daarom al zou ik nooit een berekend veld gebruiken. Dan zou ik eerder nog een tabelmacro maken die het verschil berekent. Maar nogmaals: het is een volslagen overbodig veld, en op basis van het principe dat je dataredundantie zoveel mogelijk probeert te voorkomen (en zeker niet zelf te creëren) zou ik dus de berekening in de query houden.
 
Beste Michel,

Dank voor de reactie! Er rest mij nog een vraag. Na het invoeren via Access wil ik mijn database graag overzetten naar SPSS. Wat gebeurt er dan met deze expressies? Kan ik de database incl expressie overzetten?
 
Dat hangt er een beetje vanaf hoe je die export gaat doen; als je in SPSS de berekeningen ook kunt maken, zou ik alleen de bronvelden exporteren. Kun je daarin níet rekenen, dan zou ik de uitkomsten meenemen in de export, en die worden dan als data geëxporteerd, dus niet als formule. Hetzelfde geldt overigens ook als je naar Excel exporteert, dan krijg je ook de pure data te zien. Overigens kun je in Excel de formules uiteraard makkelijk nabouwen, en dat doe ik zelf dus vaak als ik een export doe naar Excel.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan