04 - Oefening Berekeningen
Je hebt geleerd hoe je regeltotalen, subtotalen, BTW en eindtotalen berekent. Kun je de berekeningen zelf uitvoeren?
Denkvraag — Bereken de factuur
Bekijk de volgende factuurregels:
| Omschrijving | Aantal | PrijsPerStuk |
|---|---|---|
| Tarwebloem 25 kg | 8 | € 12.50 |
| Roggebloem 10 kg | 4 | € 14.80 |
| Bakpoeder 1 kg | 20 | € 3.25 |
Vraag 1: Bereken het regeltotaal per regel.
Vraag 2: Bereken het subtotaal, BTW (21%) en eindtotaal.
Vraag 3: Schrijf de expressie die je in de ReportSummary zou plaatsen voor het eindtotaal, opgemaakt als valuta.
Vraag 4: Een business object heeft een veld Lines.Price van het type Money. Je wilt het regeltotaal berekenen (prijs × aantal). Welke functie gebruik je, en waarom niet gewoon *?
Denk na voor je doorgaat naar het antwoord.
Stop hier. Bereken alles voordat je verder scrolt.
Antwoorden
Vraag 1
Details
Antwoord: Regeltotalen
| Omschrijving | Berekening | Regeltotaal |
|---|---|---|
| Tarwebloem 25 kg | 8 × 12.50 | € 100.00 |
| Roggebloem 10 kg | 4 × 14.80 | € 59.20 |
| Bakpoeder 1 kg | 20 × 3.25 | € 65.00 |
Vraag 2
Details
Antwoord: Totalen
| Bedrag | |
|---|---|
| Subtotaal | € 224.20 |
| BTW 21% | € 47.08 |
| Eindtotaal | € 271.28 |
Controle: 224.20 × 0.21 = 47.082 → afgerond € 47.08. Eindtotaal: 224.20 + 47.08 = € 271.28.
Vraag 3
Details
Antwoord: Expressie
{Format("{0:€ #,##0.00}", Round(Sum(Lines.Quantity * Lines.Price) * 1.21, 2))} Of als je het tekstvak uitsluitend voor het eindtotaal gebruikt (zonder statische tekst), kun je ook de TextFormat op € #,##0.00 instellen en de expressie kort houden:
{Round(Sum(Lines.Quantity * Lines.Price) * 1.21, 2)} Onthoud: TextFormat werkt alleen bij een puur veld of expressie, niet bij gemengde tekst.
Vraag 4
Details
Antwoord: Money-velden
{MulM(Lines.Price, Lines.Quantity)} Money-velden zijn geen gewone decimalen — ze bevatten ook een valuta. De standaard operator * werkt niet op Money-objecten. Gebruik MulM() voor vermenigvuldigen, SumM() voor optellen, enzovoort. Controleer in het woordenboek altijd het veldtype: staat er Money? Dan gebruik je de Money-functies.
Hands-on — In de designer
Als je tijd hebt:
- Open een gekopieerd rapport met een DataBand
- Voeg in de DataBand een tekstvak toe met het regeltotaal
- Voeg een ReportSummary toe met tekstvakken voor subtotaal, BTW en eindtotaal
- Stel de opmaak in op
€ #,##0.00 - Schakel naar Afdrukvoorbeeld en controleer de berekeningen
Meer in deze rubriek
- 01 - Geavanceerde Expressies
- 02 - Oefening Geavanceerde Expressies
- 03 - Berekende Velden
- 04 - Oefening Berekeningen
- 05 - Systeemvariabelen
- 06 - Oefening Systeemvariabelen
- 07 - Subrapporten
- 08 - Oefening Subrapporten
- 09 - Afdrukken en Exporteren
- 10 - Oefening Exporteren
- 11 - Factuur Bouwen
- 12 - Oefening Factuur