|
Tip 98 -
Het totaal van alle openstaande facturen dynamisch
tonen
Eerst de vraag: "Ik heb een databank
voor onze facturen waarin ik ook de betalingen
registreer. Op elke factuurfiche staat dus het
factuurbedrag en het saldo. Kan ik op het scherm
permanent zien voor hoeveel onze klanten bij ons nog in het
krijt staan, m.a.w. kan ik het totaal van alle saldi
permanent en dynamisch zien, zonder dat ik een script of een
rapport hoef te maken?"
Ja dat kan, en het is niet eens
moeilijk. We doen dit via een self-join-relatie
waarbij de facturenbank in zichzelf op zoek gaat naar alle
saldi groter dan 0 (of groter dan 1 indien we geen gedoe
willen met afrondingen). Die saldi tellen we dan op met
de Sum-functie
en klaar is kees.
Hier gaan we dan:
1) Creëer in Define
Fields een veld Trigger (type = calculatie) en
zet als formule gewoon het cijfer 1. Elke nieuwe record
krijgt dus 1 als trigger.
2) Creëer in Define
Relationships een self-join-relatie tussen de
facturenbank en zichzelf op basis van Trigger
= Trigger; op die manier vindt
elke factuur dus alle andere facturen.
3) Creëer voor elke factuur in
Define Fields een calculatieveld Saldo
openstaand met als formule:
If(Saldo > 0, Saldo,
"")
Op die manier toont dit veld het
saldo enkel wanneer de factuur nog onbetaald is.
4) Bereken nu het totaal van de
saldi door in Define Fields het calculatieveld
Saldi Totaal aan te maken met als formule:
Sum(Selfjoin via
Trigger::Saldo openstaand)
Dit veld Saldi Totaal kan op
elke lay-out van de facturenbank geplaatst worden, zodat het
totaal van wat de klanten nog schuldig zijn permanent
zichtbaar is.
|