Rekenregel 10042: Flexibele rekenregel
Deze rekenregel berekent het resultaat van een zelf ingegeven formule.
Invoer:
- Waarde D
- Ja/Nee E
- Ja/Nee F
- Waarde G
- Waarde H
- Waarde I
- Waarde J
- Waarde K
- Waarde L
- Berekenen
- Leeftijd van
- Methode leeftijd van
- Leeftijd tot
- Methode leeftijd tot
- Percentage
- Maximum
- Minimum
- Prorata in dienst
- Prorata uit dienst
- Afronding
- Waarde A
- Waarde B
- Waarde C
- Activeren in CAO
- Grondslag M
- Standaard prorata
- Gewerkte dagen
- Werkbare dagen
- Teller
- Noemer
- Grondslag N
- Grondslag O
- Grondslag P
- Grondslag Q
- Ja/Nee R
- Ja/Nee S
- Ja/Nee T
- Methode parameter C
- Waarde U
- Waarde V
- Waarde W
Let op:
De waardes A, B en C (21, 22 en 23) zijn alleen via Boeken loonmutaties in te geven en kunnen niet gedeeld worden met andere looncomponenten. Voor parameter C is er nog de keuzemogelijkheid in een aantal methodes (38):
- 1 Boeking op C als normale parameter
- 2 Boeking op C overschrijft berekende formule uitkomst
- 3 Boeking op C wordt opgeteld bij berekende formule uitkomst
Volgorde waarin parameters worden verwerkt
- Alleen als parameter 'Berekenen' (10) op Ja staat, de rekenregel verder verwerken.
- Alleen als de leeftijd van de medewerker, rekening houdend met de gekozen methodes in parameter 12 en 14, tussen de waarde in parameter 11 en 13 ligt, de rekenregel verder verwerken.
- Pas de formule in het formuleveld toe. Hou rekening met vervanging van lege waarden.
- Vermenigvuldig met parameter 'Percentage' / 100.
- Evalueer het 'Maximum' en 'Minimum' uit parameter 16 en 17.
- Pas 'Prorata in dienst' en/of 'Prorata uit dienst' toe als parameter 18 en/of 19 op Ja staan.
- Pas 'Afronding' toe op basis van parameter 20.
- Pas Standaard prorata (26) toe op de velden Days worked (27) en Workable days (28).
Berekenen Ja/Nee
Indien 'Berekenen Ja/Nee' niet is gekoppeld dan wordt deze op 'Ja' gesteld. Is de parameter wel gekoppeld maar is er in de historie geen waarde aanwezig, dan wordt deze op 'Nee' gesteld. Indien 'Berekenen Ja/Nee' de waarde 'Nee' heeft dan is het resultaat 0.
Methode leeftijd
Het toetsen aan de 'Methode leeftijd van' (veld 12) en 'Methode leeftijd tot' (veld 14) wordt gedaan door de leeftijd van de medewerker te bepalen aan de hand van de opgegeven methode. Indien geen methode(n) is (zijn) ingevuld wordt getoetst met de eventueel meegegeven leeftijd. De volgende methodes zijn mogelijk:
- 0 Op begindatum deze periode
- 1 Op einddatum deze periode
- 2 Op einddatum vorige periode
- 3 Op betaaldatum van deze periode
- 4 Op 1 januari van dit jaar
- 5 Op 31 december van dit jaar
- 6 Op 31 december van vorig jaar
De methode 7 'Precieze leeftijdbepaling', wordt niet ondersteund binnen de flexibele rekenregel.
Prorata bij in en uit dienst
Prorata bij in en uit dienst houdt in:
Bedrag / Werkbare dagen in de periode, rekening houdend met het geldige rooster, niet rekening houdend met in- en uitdiensttreding * Werkbare dagen in periode, rekening houdend met geldige rooster, rekening houdend met in en uitdiensttreding.
Bij in en uit dienst gaan, kan worden afgeweken van de standaard prorata door middel van de velden Pro-rata In service 18) en Pro-rata End employment (19). Pro-rata In service en Pro-rata End employment worden bepaald aan de hand van een factor. De factor wordt berekend door de velden Counter (29) en Denominator (30) op elkaar te delen. Als Counter niet is gevuld, wordt gerekend met parameter Days worked in period according to contract. Als Denominator niet is gevuld, wordt gerekend met parameter Workable days in period according to timetable. Counter en Denominator hebben geen invloed op de standaard prorata.
Als voor prorataberekeningen bijvoorbeeld met kalenderdagen moet worden gerekend, kan dat plaatsvinden door als Counter in te geven Kalenderdagen in periode binnen contract en als NoemerKalenderdagen in periode volgens rooster.
Afronding
De volgende methodes zijn aanwezig voor de 'Afronding' (20) van het eindresultaat:
Code |
Omschrijving |
---|---|
1 |
Afronden op 2 decimalen |
2 |
Afronden op gehelen |
3 |
Afronden op gehelen naar boven |
4 |
Afronden op gehelen naar beneden |
Standaard prorata
Het veld Standaard prorata (26) heeft de volgende keuzemogelijkheden:
- 0 Geen prorata berekening
- 1 Prorata door middel van het werkelijke aantal dagen
- 2 Prorata door middel van het gemiddelde aantal dagen
- 3 Omgekeerde prorata door middel van het gemiddelde aantal dagen
- 4 Omgekeerde prorata door middel van het gemiddelde aantal dagen, waarbij het bedrag niet negatief kan worden
- 5 Prorata door middel van het gemiddelde aantal dagen en bij in en uit dienst door middel van het werkelijke aantal dagen
- 6 Omgekeerde prorata met behulp van het gemiddelde aantal dagen en bij in en uit dienst door middel van het werkelijke aantal dagen
De factor wordt bepaald aan de hand van de waarde in de velden Days worked als teller en Workable days als noemer.
Basis CAO Stamnummer 100.009.900 Flexibele rekenregel
Kopieën hiervan zijn mogelijk.
Op het tabblad 'Formule' kan een formule worden ingegeven om het resultaat te berekenen. De formule houdt rekening met de bij de invoer gegeven waardes. Dit tabblad is alleen beschikbaar voor consultants. Via de knop 'Toon formule' krijgt u een kort overzicht van de mogelijkheden. De knop 'Controle' test de formule op fouten. U kunt op het tabblad Werking lezen wat de component doet. Per looncomponent is één formule van toepassing.
Vul een formule in. U kunt hierbij de volgende tekens of woorden gebruiken:
- Operatoren: * + - /
- Haakjes ( )
- Letters abcdefghilkl of ABCDEFGHIJKL (Let op: om iedere letter blokhaken gebruiken)
- Spaties
- De functies MAX (formule; formule; …), MIN (formule; formule; …), IF (formule; waarde als formule = WAAR; waarde als formule = ONWAAR), ROUND (formule; decimalen)
- Als u de functionaliteit Multiple employments gebruikt, kunt u ook de functie VERHOUDINGDV() gebruiken.
- Voorbeeld IF ( MAX ( [A]; [B] ) > [C] ; [D] * [E] ; [D] / [E] )
Alleen de parameters met een letter die gebruikt worden in de formule, worden gebruikt in de berekening. Zijn nog meer parameters gekoppeld, maar niet gebruikt in de formule, dan worden deze overgeslagen.
Zijn parameters wel gebruikt in de formule, maar niet gekoppeld aan een looncomponentveld, dan wordt de waarde vervangen door een standaardwaarde, afhankelijk van de operator die ervoor staat. Staat in de formule voor een parameter een * of /, dan wordt de waarde 1, staat hier een + of -, dan wordt de waarde 0.
Voorbeeld:
Formule = A * B + C. Als B leeg is, komt hier A * 1 + C te staan. Als C leeg is komt hier A * B + 0 te staan.
Is parameter 15 Percentage niet gevuld, dan wordt de waarde vervangen door 100%.
Ontstaat op een plaats in de formule een waarde 0 / 0, dan moet de resultaatwaarde van dat gedeelte van de formule 0 worden. De rest van de formule zal wel gewoon doorrekenen.
Voorbeeld:
De waarde 9 - 0 / 0 + 17 resulteert in de waarde - 8.
U kunt gebruik maken van de volgende formules:
Formule |
Resultaat |
Voorbeeld |
---|---|---|
ABS(par) |
Geeft de absolute waarde van de parameter |
ABS([A]) = 10 wanneer parameter A = -10 |
INT(par) |
Geeft het gehele getal van de parameter (afkappen) |
INT(2.3) = 2 |
MAX(par1;par2) |
Geeft de maximale waarde van 2 parameters terug |
MAX(2;3) = 3 |
MIN(par1;par2) |
Geeft de minimale waarde van 2 parameters terug |
MIN(2;3) = 2 |
MOD(par1;par2) |
Geeft de restwaarde van de deling van parameter 1 door 2 terug |
MOD(7;3) = 1 |
AND(par1;par2) |
Logische AND |
AND([A];[B]) geeft 0 terug indien A=0 of B=0 |
OR(par1;par2) |
Logische OR |
OR([A];[B]) geeft 1 terug indien A=1 en B=1 |
ROUND(par1;par2) |
Afronden op par2 decimalen |
ROUND(0.6666;2) geeft 0.67 |
IF(par1;par2;par3)
|
Geeft een waarde terug afhankelijk van parameter1 |
IF([A]>[B];[C];[D]) Geeft de waarde van C terug als A groter dan B; anders wordt D teruggegeven |
PERIODE1(par1) |
Neemt de waarde over van periode 1 of bij in dienst als dit later ligt dan periode 1 |
PERIODE1([A]) geeft de waarde van A uit periode 1 |
CUMULATIEF(par1) |
Neemt de cumulatieve waarde over |
CUMULATIEF([A]) geeft de cumulatieve waarde tot en met de huidige periode van A |
VORIGEPERIODE(par1) |
Neemt de waarde over uit de vorige periode |
VORIGEPERIODE([A]) geeft de waarde van A uit de vorige periode |
Indien met Ja/Nee parameters wordt gewerkt dan moet de parameter vergeleken worden met de waarden "WAAR" of "ONWAAR".
Voorbeeld:
IF(([E]=WAAR);5;6) levert 5 op indien [E] = Ja; levert 6 op indien [E] = Nee.
Functie VERHOUDINGDV()
Deze functie kan alleen worden toegepast op een grondslag.
Het resultaat van deze is afhankelijk van de input:
- Komt de grondslag binnen als DV, dan is het resultaat de waarde van de grondslag op AV
- Komt de grondslag binnen als AV, dan is het resultaat de waarde van de grondslag op DV
Voorbeeld:
Een vergoeding van 150 euro moet worden berekend naar rato van parttime percentage. Het parttime percentage mag op arbeidsverhouding niet meer dan 100% zijn. De medewerker werkt op DV1 60% en op DV2 45%.
Uitwerking:
De looncomponent wordt per dienstverband berekend. Waarde D = 150. Het parttime percentage telt in grondslag M.
De formule wordt dan: MIN ( 100 ; VERHOUDINGDV([M]) ) * [D] * [M] / VERHOUDINGDV([M]) / 100
De functie wordt twee keer gebruikt. In het eerste deel van de formule wordt er omgerekend naar arbeidsverhouding om het maximum te kunnen bepalen. In het tweede deel wordt dat resultaat weer teruggerekend naar dienstverband. Dit alles is volgens het principe: DV = AV * DV / AV
Als je de formule omzet in de getallen uit het voorbeeld dan krijg je het volgende:
Resultaat DV1: MIN ( 100 ; 105 ) * 150 * 60 / 105 / 100 = 85,71
Resultaat DV2: MIN ( 100 ; 105 ) * 150 * 45 / 105 / 100 = 64,29
Totaal = AV = 85,71 + 64,29 = 150
Tabblad Formule
Op het tabblad Formula vult Profit het veld Operation met een beschrijving van de formule. Dit gebeurt aan de hand van de tekst in het formuleveld en de omschrijving van de parameters op het tabblad Parameter. De letters die verwijzen naar de parameters in de formule worden vervangen door de omschrijving van de bijbehorende parameter: de formule 'A * B * C' toont Profit als 'Bedrag * Percentage * Factor'.
Functie WAARDENT() en WAARDEBT()
Met deze functies kunt u het NT-deel of BT-deel van de waarde van een grondslag opvragen. Deze functies zijn toegevoegd voor het uitvoeren van de Kleinebanenregeling.
Voorbeeld:
WAARDENT(Loon Sociale verzekeringen) haalt de het normale tariefdeel op van de grondslag Loon Sociale Verzekeringen.