# Berekende velden

Bereken scores, totalen en dynamische tekst op basis van formulierantwoorden.

## Berekende velden

Onzichtbare velden die waarden berekenen op basis van antwoorden — quizscores, ordertotalen, leadratings of samengevoegde tekst. Ze worden in real time bijgewerkt terwijl de respondent het formulier invult.

<h2 id="how-it-works">Hoe het werkt</h2>

<p>
  Berekende velden zijn onzichtbaar voor respondenten, maar berekenen waarden op basis van logische regels die jij definieert. Ze slaan een{' '}
  <strong>getal</strong> of <strong>tekst</strong> op als resultaat, en worden live bijgewerkt naarmate de respondent vragen beantwoordt.
</p>

<p>
  De werkwijze: je maakt een berekend veld aan, stelt een beginwaarde in en voegt vervolgens{' '}
  <a href="/nl/building-forms/conditional-logic">logische regels</a> toe met de actie <strong>Waarde berekenen</strong>. Elke regel voert
  een bewerking uit (optellen, vermenigvuldigen, instellen, enz.) wanneer aan de voorwaarde is voldaan.
</p>

<h2 id="adding">Een berekend veld toevoegen</h2>

<p>
  Typ <code>/</code> op een lege regel en kies <strong>Calculated Field</strong> uit de categorie Lay-out. Het werkt alleen op het hoogste
  niveau van het formulier — niet binnen een kolom of een herhalende groep. Stel in:
</p>

<ul>
  <li>
    <strong>Veldtype</strong> — getal of tekst
  </li>
  <li>
    <strong>Naam</strong> — hoe je er in logicaregels en @-vermeldingen naar verwijst. Dit is ook de sleutel van het veld, dus de waarde
    gaat onder die naam naar integraties en callbacks
  </li>
  <li>
    <strong>Beginwaarde</strong> — de startwaarde voordat regels worden uitgevoerd. Typ een vaste waarde (bijv. <code>0</code> voor een
    score) of kies een <a href="/nl/building-forms/hidden-fields">verborgen veld</a> van hetzelfde type (getal of tekst) om de berekening te
    starten vanuit een URL-parameter. Als de parameter ontbreekt of ongeldig is, begint het veld op <code>0</code> (getal) of leeg (tekst)
  </li>
</ul>

<h2 id="numeric-operations">Numerieke bewerkingen</h2>

<p>Dit zijn de exacte items in de bewerkingskiezer van een actie Waarde berekenen.</p>

<h2 id="text-operations">Tekstbewerkingen</h2>

<h2 id="operation-values">Bewerkingswaarden</h2>

<p>Elke bewerking gebruikt een waarde die ofwel:</p>

<ul>
  <li>
    <strong>Een vaste waarde</strong> is — een specifiek getal of een tekst die je invoert (bijv. altijd <strong>10</strong> optellen)
  </li>
  <li>
    <strong>De waarde van een ander veld</strong> is — kies een vraag, verborgen veld of berekend veld zodat de waarde dynamisch is (bijv.
    de waarde optellen die de respondent heeft ingevoerd bij V2)
  </li>
</ul>

<p>
  Een numerieke bewerking wordt overgeslagen wanneer de waarde leeg is of geen getal is, en delen door 0 wordt ook overgeslagen, zodat het
  huidige totaal ongewijzigd blijft. Antwoorden op vragen die door logica verborgen zijn, tellen niet mee — een verborgen vraag heeft
  helemaal geen waarde, dus het antwoord bereikt nooit een berekening.
</p>

<p>
  Elke overeenkomende regel Waarde berekenen wordt uitgevoerd, in documentvolgorde, op de lopende waarde — ze stapelen zich op in plaats van
  met elkaar te concurreren. Eén uitzondering op de documentvolgorde: een regel die een berekend veld <em>leest</em>, wordt altijd
  uitgevoerd na de regel die het <em>schrijft</em>, zodat een score klaar is voordat er iets op vertakt. Regels die elkaars velden in een
  lus schrijven, worden gemarkeerd als publicatiewaarschuwing die de keten benoemt, dus doorbreek de lus in plaats van erdoorheen te
  publiceren.
</p>

<h2 id="examples">Voorbeelden</h2>

<p>
  <strong>Quizscores</strong> — Maak een berekend veld "Totaalscore" met beginwaarde <strong>0</strong>. Voeg logische regels toe: als V1
  gelijk is aan "Ja", <strong>Voeg 10 toe</strong>; als V2 groter is dan 5, <strong>Voeg toe</strong> de waarde van V2. De score wordt live
  bijgewerkt terwijl de respondent antwoorden geeft.
</p>

<p>
  <strong>Dynamische prijzen</strong> — Een productorderformulier heeft een getalveld voor de hoeveelheid en een Dropdown voor de maat
  (Klein, Middel, Groot). Maak een berekend veld "Prijs". Logische regels: als de maat "Klein" is, <strong>Instellen op 10</strong>; als
  "Middel", <strong>Instellen op 15</strong>; als "Groot", <strong>Instellen op 20</strong>. Voeg daaronder een regel zonder voorwaarden toe
  die Prijs <strong>Vermenigvuldigen</strong> met het hoeveelheidsveld. Regels worden van boven naar beneden uitgevoerd, en een regel zonder
  voorwaarden wordt altijd uitgevoerd. Voer <strong>@Prijs</strong> door naar de bedankpagina. Om die berekende prijs rechtstreeks in
  rekening te brengen, zie <a href="/nl/building-forms/payment-collection#dynamic-pricing">Dynamische prijsstelling</a> in Betalingen
  verzamelen.
</p>

<p>
  <strong>Leadkwalificatie</strong> — Drie Star Rating-vragen beoordelen budget, tijdlijn en bevoegdheid. Een veld "Leadscore" gebruikt{' '}
  <strong>Optellen</strong> voor elke beoordeling. Een logische regel controleert: als Leadscore groter is dan 12,{' '}
  <strong>Volgende pagina instellen</strong> op "Prioriteit opvolging"; anders doorsturen naar de standaard bedankpagina.
</p>

<p>
  <strong>Tekst samenvoegen</strong> — Een tekstberekend veld "Volledige naam" begint leeg. Logica voegt <strong>@Voornaam</strong> toe, dan
  een spatie, dan <strong>@Achternaam</strong>. Gebruik <strong>@Volledige naam</strong> op de bedankpagina of in e-mailmeldingen.
</p>

> 💡 **Combineer met logica**
> <p>
>     Berekende velden werken ook als bronnen voor voorwaarden. Één regel berekent een waarde, een andere reageert erop — bijv. "als Totaal > 50, ga naar de Premium-pagina." Zo bouw je meerstapsscoring zonder ook maar één regel code.
>   </p>

<h2 id="pre-populating">Andere velden vooraf invullen</h2>

<p>
  Een zichtbaar veld kan starten met de waarde van een berekend veld, zodat de respondent een berekende waarde controleert in plaats van die
  zelf te typen. Typ <kbd>@</kbd> aan het begin van een Text Input-, Text Area-, Email-, Phone Number-, Website URL- of Number-veld en kies
  het berekende veld. De respondent kan de waarde nog steeds wijzigen.
</p>
<p>
  Het invoerveld neemt de eerste waarde over die het berekende veld heeft — meestal de beginwaarde, of het verborgen veld dat deze voedt.
  Latere wijzigingen door logische regels vervangen niet wat al in het invoerveld staat. Wil je een waarde tonen die blijft bijwerken,
  gebruik dan in plaats daarvan een <a href="/nl/building-forms/answer-piping">@-vermelding</a> om hem in tekst door te voeren. Zie{' '}
  <a href="/nl/building-forms/field-configuration#default-values">Standaardwaarden van andere velden</a> voor meer details.
</p>
<h2 id="next-steps">Volgende stappen</h2>
<div class="not-prose grid gap-3 sm:grid-cols-2">
  - [Antwoord doorvoeren](/nl/building-forms/answer-piping) — Toon berekende waarden in het formulier of in e-mails
  - [Bedankpagina](/nl/building-forms/custom-thank-you) — Toon berekende resultaten na het indienen
  - [Formulierinstellingen](/nl/building-forms/form-settings) — Meldingen, toegangsbeheer en meer
  - [Uiterlijk en thema](/nl/branding-domains/appearance-theming) — Thema, omslagafbeelding, logo, donkere modus
</div>
