Rekenen en Vergelijkingen: verschil tussen versies

Uit ZaaksysteemWiki
Ga naar: navigatie, zoeken
(Rekentekens)
(Voorbeelden)
Regel 159: Regel 159:
 
= Voorbeelden =
 
= Voorbeelden =
 
{| class="wikitable"
 
{| class="wikitable"
 +
|-
 +
!Situatie
 +
!Implementatie
 
|-
 
|-
!Waarde
+
|Een totaalprijs bestaat uit meerdere onderdelen. De prijzen voor deze onderdelen worden in de zaak vastgelegd, maar niet de totaalprijs. Op het sjabloon moet echter wel de totaalprijs genoemd worden.
!Magicstring
 
!Output
 
|-
 
|Akkoord
 
|<nowiki>[[ voorbeeld_kenmerk == "Akkoord" ]]</nowiki>
 
|1
 
|-
 
|Geweigerd
 
|<nowiki>[[ voorbeeld_kenmerk == "Akkoord" ]]</nowiki>
 
 
|
 
|
 +
{| class="wikitable"
 
|-
 
|-
|20
+
!Onderdeel
|<nowiki>[[ voorbeeld_kenmerk >= 15 + 15 ]]</nowiki>
+
!Prijs
|1
 
 
|-
 
|-
|Ik ben akkoord met dit besluit.
+
|Parkeervergunning
|<nowiki>[[ voorbeeld_kenmerk ~= "akkoord"]]</nowiki>
+
|<nowiki>[[prijs_parkeervergunning]]</nowiki>
|1
 
 
|-
 
|-
|[ Bouwvergunning, Kapvergunning, Sloopvergunning ]<br>
+
|Bezoekersvergunningen</nowiki>
|<nowiki>[[ "Kapvergunning" in voorbeeld_kenmerk ]]</nowiki>
+
|<nowiki>[[prijs_bezoekersvergunningen * aantal_bezoekersvergunningen]]</nowiki>
|1
 
 
|-
 
|-
|22
+
|Totaalprijs
|<nowiki>[[ constant("pi") > voorbeeld_kenmerk / 7</nowiki>
+
|<nowiki>[[prijs_parkeervergunning + prijs_bezoekersvergunningen * aantal_bezoekersvergunningen]]</nowiki>
|
+
|}
 
|}
 
|}

Versie van 6 nov 2015 om 09:22

Algemeen

Rekenen en vergelijkingen kunnen op meerdere plekken in het systeem gebruikt worden, namelijk:

Constanten

De volgende constanten kunnen gebruikt worden bij het rekenen of vergelijken:

Simpele notatie Complexe notatie Waarde
:pi constant("pi") 3.141592653

Rekenen

Met formules kan de output aangepast worden door te rekenen met de kenmerkwaarde(n):

  • Met elk type kenmerk kan gerekend worden, zolang de waarde een correct getal is
  • Waardes die geen getal zijn worden als 0 geïnterpreteerd
  • Delen door 0 geeft geen output

Rekentekens

De rekentekens die gebruikt kunnen worden zijn:

Naam Teken Voorbeeldformule Output
haakjes () 6 * ( 2 + 2 ) 24
keer/maal * 6 * 2 12
gedeeld door / 6 / 2 3
plus + 6 + 2 8
min - 6 - 2 4

De volgorde waarin de rekentekens verwerkt worden is alsvolgt: Haakjes wegwerken -> Keer/delen (van links naar rechts), Plus/min (van links naar rechts).

5 + 4 / (3 - attribute.voorbeeld_kenmerk) * attribute.example_kenmerk
5 + 4 / (3 - 1) * 7
5 + 4 / 2 * 7
5 + 2 * 7
5 + 14
19
[[ voorbeeld_kenmerk + 6 / 3 * example_kenmerk ]]
[[ 4 + 6 / 3 * 2 ]]
[[ 4 + 2 * 2]]
[[ 4 + 4 ]]
[[ 8 ]]
8

Afronding

De output wordt alsvolgt afgerond:

Formule Output formule Output in valutakenmerk Output in overige kenmerken
6 / 3 2 2,00 2.00
5 / 3 1.666666666... 1,67 1.67

Tip: Gebruik eventueel Kenmerkformatting om de getallen af te ronden op gehele waarden.

Vergelijken

Met vergelijkingen kan gecontroleerd wordt of een waarde aan een bepaalde conditie voldoet. De output is dan "1" als de conditie waar is en "" als de conditie niet waar is. In deze vergelijkingen kunnen ook berekeningen opgenomen worden.

Operators

De operators die gebruikt kunnen worden zijn:

Naam Teken Voorbeeld Antwoord
is gelijk aan == 2 + 2 == 4 Waar
is niet gelijk aan != 2 + 2 != 5 Waar
groter dan > 5 > 5 Niet waar
kleiner dan < 1 < 1.1 Waar
groter of gelijk aan >= 5 >= 5 Waar
kleiner of gelijk aan <= 1 <= 1.1 Waar
bevat tekst ~= "eks" in "tekst" Waar
komt voor in in 5 in [ 1, 2, 3, 4 ] Niet waar

Voorbeelden

Situatie Implementatie
Een totaalprijs bestaat uit meerdere onderdelen. De prijzen voor deze onderdelen worden in de zaak vastgelegd, maar niet de totaalprijs. Op het sjabloon moet echter wel de totaalprijs genoemd worden.
Onderdeel Prijs
Parkeervergunning [[prijs_parkeervergunning]]
Bezoekersvergunningen</nowiki> [[prijs_bezoekersvergunningen * aantal_bezoekersvergunningen]]
Totaalprijs [[prijs_parkeervergunning + prijs_bezoekersvergunningen * aantal_bezoekersvergunningen]]