Bedrijfslogica — geavanceerd
Deze pagina behandelt de diepere opties van bedrijfslogica. Ze laten u complexe prijsstelling uitdrukken — tijdgebonden kosten, "of/of"-voorwaarden, en regels die van andere tarieven afhangen. Ze zijn krachtig, dus test wijzigingen daarna in een echte berekening.
Voorwaarden combineren: evaluation sets
Standaard moeten alle voorwaarden van een tarief waar zijn (een en). Met een evaluation set drukt u of-logica uit:
- Voorwaarden met dezelfde evaluation set-naam worden met of gecombineerd — als er één van slaagt, is de set voldaan.
- Verschillende evaluation sets moeten allemaal slagen (ze worden met en gecombineerd).
Om te zeggen "geldt voor tankers of gastankers, en alleen wanneer GT > 5.000", zet u de twee scheepstype-voorwaarden in één evaluation set en de GT-voorwaarde in een andere.
Meer soorten voorwaarden
Naast de basis numeriek/tekst/boolean/datum-voorwaarden:
- Array — controleer een waarde tegen een lijst. Kies een array-operator (zoals in / niet in) en voer de waarden in (één per regel).
- Datum — tussen — kies de operator tussen en geef een tweede waarde voor het einde van het bereik. (Numerieke voorwaarden bieden eveneens tussen / niet tussen met een tweede waarde.)
- Schema — match tegen tijdvensters. U voegt schema-items toe, elk met een van en tot (een waarde plus een schematype), en een schema-operator. Gebruik het voor dag/nacht- of openingstijdenprijzen. Een bronveld min/max kiest de te toetsen tijden.
- Tijdsduur — vergelijk een duur: een waarde plus een periode (bijv. uren, dagen) met een tijdsduur-operator. Gebruik het voor "langer dan 24 uur".
Periodeberekeningen
Een periodeberekening rekent per tijdseenheid en is de meest configureerbare berekening:
- Periode + periodehoeveelheid — de tijdseenheid en hoeveel ervan (bijv. per 1 dag).
- Bronveld min / max — de start- en eindtijden waartussen wordt gemeten (bijvoorbeeld aankomst en vertrek).
- Interval hoeveelheid — hoe de gemeten tijd in factureerbare eenheden wordt gestapt.
- Minimum hoeveelheid / maximum hoeveelheid — een ondergrens en een plafond op het aantal berekende eenheden (bijv. minimaal 1 dag, maximaal 30).
Zo bouwt u "ligplaatsgeld per begonnen dag, minimaal één dag".
Berekeningsvolgorde
Heeft een tarief meer dan één berekening, dan bepaalt berekeningsvolgorde (een getal) de volgorde waarin ze draaien — belangrijk wanneer de ene berekening voortbouwt op het resultaat van een andere. Lagere getallen draaien eerst.
Afhankelijkheden
Afhankelijkheden laten het gedrag van een tarief afhangen van iets anders:
- Tariefafhankelijkheid — verwijs naar een ander tarief via zijn code tariefsysteem (bijvoorbeeld pas deze kostenpost alleen toe wanneer een ander tarief is toegepast).
- Tariefgroep-afhankelijkheid — hetzelfde, maar verwijzend naar een hele systeemcode tariefgroep.
- Adresafhankelijkheid — stuur gedrag aan vanuit een adres (met een adrestype en aanvullende gegevens).
Daarom zijn systeemcodes belangrijk: afhankelijkheden vinden hun doel via de code, dus een code hernoemen of wijzigen kan een afhankelijkheid breken.
BTW voorwaarden
Met het tabblad BTW voorwaarden kan de BTW-behandeling per voorwaarde variëren, zodat de juiste BTW-code automatisch wordt gekozen op basis van de gegevens — in plaats van één vaste BTW-code voor het tarief.
Customer filters
Het logische type Customer filter (geïntroduceerd in de basis) beperkt een regel tot een specifieke klant, klant financieel-record of debiteurnummer — een snelle manier om een tarief (of voorwaarde) op slechts één debiteur van toepassing te laten zijn.
Line grouping
Line grouping bepaalt hoe resulterende bedragen op factuurregels worden gecombineerd (bijvoorbeeld "eenmaal per aanloop toepassen"). Het heeft geen bewerkbaar formulier in dit scherm en wordt apart geconfigureerd — hebt u het nodig, overleg dan met uw beheerder.
Geavanceerde bedrijfslogica wijzigt wat er in rekening wordt gebracht. Voer na een wijziging een echte berekening uit (of gebruik de testrun van de kostencalculator) en controleer de cijfers voordat u erop vertrouwt.