Beheer

# Vragenlijsten voor actieresultaten instellen

Bepaal per actietype welke vragen chauffeurs beantwoorden bij het afronden van een taak: vraagtypen, voorwaarden, resultaten, veldupdates en boordcomputercodes.

Bijgewerkt 7 oktober 2026

**Wie kan dit:** Rolniveau 1000 of hoger (alleen interne gebruikers). Voor Genereren met AI heb je ook de rechten nodig om het platform bij te werken.

Een vragenlijst voor actieresultaten is de set vragen die een chauffeur beantwoordt bij het afronden van een taak, zoals lossen. De antwoorden vormen het [actieresultaat](/nl/help/action-results): of de taak is uitgevoerd, waarom niet, opmerkingen, foto's en handtekeningen. Antwoorden kunnen ook de order bijwerken, bijvoorbeeld het aantal pallets dat echt is geladen of een nieuwe leverdatum.

## Hoe vragenlijsten werken

* Je platform heeft maximaal één vragenlijst per actietype, bijvoorbeeld één voor laden en één voor lossen. Wil je de vragen binnen een type laten variëren, gebruik dan voorwaarden (zie hieronder).
* Als een chauffeur een taak afrondt in OpenMove, vervangt de vragenlijst van dat type het standaard resultaatscherm. Zie [Actievragenlijsten beantwoorden](/nl/help/openmove-questionnaires).
* Dezelfde vragenlijst opent in de gedeelde uitvoeringsweergave van een trip, als iemand daar in een browser een taak afrondt.
* Antwoorden die een chauffeur op een boordcomputer geeft, bijvoorbeeld Transics of Webfleet, worden aan dezelfde vragen gekoppeld (zie **Antwoorden van de boordcomputer** hieronder).
* Zonder vragenlijst kiezen chauffeurs **Uitgevoerd**, **Gedeeltelijk uitgevoerd** of **Niet mogelijk** en typen ze een reden en opmerkingen.

## De vragenlijsten openen

1. Open het zijmenu (☰, rechtsboven) en kies **Instellingen**.
2. Klik op het tabblad **Omgeving**.
3. Open het onderdeel **Vragenlijsten voor actieresultaten**, tussen **Planning** en **Prijzen**.

Het onderdeel toont de knop **Genereren met AI** en een editor met de vragenlijsten als JSON-tekst. Als er nog niets is ingesteld, staat er `{}` in de editor.

## Vragenlijsten maken of wijzigen met AI

De snelste manier om te beginnen is beschrijven wat je nodig hebt, of het informatieblad van je boordcomputer uploaden.

1. Klik op **Genereren met AI**.
2. Voeg eventueel bestanden toe onder **Informatieblad of documenten (optioneel)**: klik op de paperclip of sleep bestanden erop. PDF, Word, Excel, CSV, afbeeldingen en andere gangbare formaten worden geaccepteerd.
3. Beschrijf bij **Instructie** wat je wilt, bijvoorbeeld "Voeg bij lossen een schadevraag met foto toe" of "Maak de vragenlijsten op basis van dit Transics-informatieblad".
4. Klik op **Genereren**. Dit kan een paar minuten duren.
5. Lees de samenvatting die verschijnt. **Bijgewerkt:** noemt de actietypen die zijn aangemaakt of gewijzigd; de andere actietypen blijven precies zoals ze waren.
6. Controleer de nieuwe vragenlijsten in de editor eronder.
7. Klik onderaan de pagina op **Opslaan** om ze te bewaren.

De AI ziet de vragenlijsten zoals ze in de editor staan, inclusief wijzigingen die je nog niet hebt opgeslagen. Je kunt het resultaat dus verfijnen met een vervolginstructie, zoals "Maak de foto optioneel". Er wordt niets bewaard tot je op **Opslaan** klikt. Wil je een resultaat weggooien, verlaat dan de pagina zonder op te slaan.

Klik je op **Genereren** zonder instructie en zonder bestanden, dan zie je **Geef een instructie of upload een document**. Viel er niets te wijzigen, dan zie je **De AI heeft niets gewijzigd.**

## De vragenlijsten zelf bewerken

1. Typ of plak in de editor. Gebruik de knoppen bovenaan de editor om de tekst op te maken of een wijziging ongedaan te maken.
2. Let op de marge van de editor: een fout in de JSON, zoals een ontbrekende komma of een ontbrekend aanhalingsteken, wordt op die regel gemarkeerd. Zolang de tekst niet geldig is, is **Opslaan** uitgeschakeld.
3. Klik onderaan de pagina op **Opslaan**.
4. Test de vragenlijst door een taak van dat type af te ronden op een testtrip (zie **Een vragenlijst testen** hieronder).

De tekst is een object met één item per actietype. Elk item heeft `enabled` (alleen vragenlijsten met `true` worden gebruikt), een lijst `questions` en een lijst `resultMappings`. Dit voorbeeld vraagt of het lossen goed is gegaan, vraagt om een reden als dat niet zo is, en verzamelt een handtekening als dat wel zo is:

```
{
  "unload": {
    "enabled": true,
    "questions": [
      {
        "id": "delivered",
        "label": "Were all goods delivered?",
        "type": "select",
        "order": 1,
        "options": [
          { "value": "yes", "label": "Yes", "setsResultStatus": "succeeded" },
          { "value": "partly", "label": "Partly", "setsResultStatus": "partiallySucceeded" },
          { "value": "no", "label": "No", "setsResultStatus": "failed" }
        ]
      },
      {
        "id": "why",
        "label": "What went wrong?",
        "type": "text",
        "order": 2,
        "conditions": [{ "questionId": "delivered", "operator": "notEquals", "value": "yes" }],
        "fieldMapping": { "target": "actionResult", "fieldPath": "reason" }
      },
      {
        "id": "signature",
        "label": "Signature of the receiver",
        "type": "signature",
        "required": false,
        "order": 3,
        "conditions": [{ "questionId": "delivered", "operator": "equals", "value": "yes" }]
      }
    ],
    "resultMappings": []
  }
}
```

### Actietypen

De sleutel van elk item is het actietype waarvoor het geldt:

| Sleutel                                | Taak                                     |
| -------------------------------------- | ---------------------------------------- |
| load                                   | Laden                                    |
| unload                                 | Lossen                                   |
| attachTransportEquipment               | Een trailer of container koppelen        |
| detachTransportEquipment               | Een trailer of container ontkoppelen     |
| genericAction                          | Algemene actie                           |
| refuel, customs, weighing, wait, break | Tanken, douane, wegen, wachten en pauzes |

## Vragen

| Instelling               | Wat het doet                                                                                                                                                                                                                        |
| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| id                       | Een unieke naam voor de vraag binnen de vragenlijst, zoals delivered. Voorwaarden en resultaatkoppelingen verwijzen ernaar. Wijzig hem niet meer zodra chauffeurs antwoorden hebben gegeven.                                        |
| label                    | De vraag die de chauffeur ziet.                                                                                                                                                                                                     |
| type                     | Het soort antwoord (zie de volgende tabel). Zonder type is de vraag een tekstvraag.                                                                                                                                                 |
| required                 | Of de chauffeur moet antwoorden voordat hij kan afronden. **Een vraag is verplicht, tenzij je "required": false instelt.**                                                                                                          |
| order                    | De positie in de vragenlijst, laagste eerst.                                                                                                                                                                                        |
| description, placeholder | Hulptekst onder de vraag en de grijze tekst in een leeg veld.                                                                                                                                                                       |
| options                  | De keuzes van een keuzevraag, elk met een value (opgeslagen) en een label (getoond). Een optie kan ook het resultaat bepalen (zie **Het resultaat bepalen**), of een andere vraag er een vervolgvraag van maken met nextQuestionId. |
| conditions               | Wanneer de vraag wordt getoond (zie **Een vraag alleen tonen als die van toepassing is**).                                                                                                                                          |
| validation               | Grenzen voor het antwoord: minLength en maxLength (tekens), min en max (getallen, inclusief) en decimals (cijfers na het decimaalteken).                                                                                            |
| fieldMapping             | Waar het antwoord naartoe wordt geschreven (zie **Antwoorden in de order schrijven**).                                                                                                                                              |
| externalIds              | De codes die een boordcomputer voor deze vraag gebruikt (zie **Antwoorden van de boordcomputer**).                                                                                                                                  |

### Vraagtypen

| Type           | De chauffeur                                                                                                                                                                                    |
| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| text           | Typt vrije tekst.                                                                                                                                                                               |
| number         | Typt een getal. Zowel 12,5 als 12.5 wordt geaccepteerd.                                                                                                                                         |
| select         | Kiest één optie.                                                                                                                                                                                |
| multiSelect    | Vinkt een of meer opties aan.                                                                                                                                                                   |
| boolean        | Gebruikt een ja/nee-schakelaar. Het antwoord wordt opgeslagen als true of false.                                                                                                                |
| date, datetime | Kiest een datum, of een datum en tijd.                                                                                                                                                          |
| photo          | Maakt een foto of kiest er een van de telefoon.                                                                                                                                                 |
| signature      | Laat iemand op het scherm tekenen.                                                                                                                                                              |
| message        | Leest een instructie, zoals "Maak foto's van de verzegeling". Hier hoeft geen antwoord op te komen. Voeg "messageState": "important" toe om het als **Let op** te tonen in plaats van **Info**. |

## Een vraag alleen tonen als die van toepassing is

Geef een vraag `conditions` om hem alleen in bepaalde gevallen te tonen. Een vraag met meerdere voorwaarden wordt alleen getoond als ze allemaal kloppen. Een verborgen vraag is nooit verplicht en het antwoord erop wordt niet gebruikt.

Een voorwaarde vergelijkt het antwoord op een eerdere vraag met een `value`:

| Operator               | Klopt als het antwoord                                                                         |
| ---------------------- | ---------------------------------------------------------------------------------------------- |
| equals / notEquals     | precies gelijk is / niet gelijk is aan de waarde. Gebruik bij ja/nee-vragen "true" of "false". |
| contains               | de waarde bevat.                                                                               |
| greaterThan / lessThan | een getal boven / onder de waarde is. De waarde moet een getal zijn.                           |
| isEmpty / isNotEmpty   | leeg is / is ingevuld. Deze hebben geen waarde nodig.                                          |

Een voorwaarde kan ook naar de order kijken in plaats van naar een antwoord. Stel `"source": "field"` in, een `target` (`action` of `consignment`) en een `fieldPath`, met dezelfde paden als bij **Antwoorden in de order schrijven**. Vraag bijvoorbeeld alleen naar de temperatuur van de trailer als de eerste goederenregel van de zending een kenteken heeft:

```
"conditions": [{ "source": "field", "target": "consignment", "fieldPath": "goods.0.licensePlate", "operator": "isNotEmpty" }]
```

Zo dekt één vragenlijst meerdere varianten van dezelfde taak, zoals verschillende afdelingen of klanten. Als het veld helemaal niet gelezen kan worden, wordt de vraag getoond.

Voor "vraag dit pas na dat antwoord" geef je de optie in plaats daarvan een `nextQuestionId`. De vraag die daarin staat wordt een vervolgvraag: die wordt pas getoond, en is pas verplicht, als die optie of een andere optie die ernaar verwijst is gekozen. Haar eigen voorwaarden blijven gelden.

## Het resultaat bepalen

De antwoorden bepalen het resultaat van de taak. Transportial kijkt in deze volgorde en gebruikt de eerste die van toepassing is:

1. **Resultaatkoppelingen.** Het eerste item in `resultMappings` waarvan alle `conditions` kloppen, stelt de `resultStatus` en `resultReason` in. Gebruik deze voor combinaties, zoals "gedeeltelijk geleverd en meer dan 5 stuks over".
2. **Opties.** Een gekozen optie met `setsResultStatus` stelt die status in, en `setsResultReason` de reden.
3. **Standaard.** Anders is het resultaat **Uitgevoerd**.

```
"resultMappings": [
  {
    "conditions": [
      { "questionId": "delivered", "operator": "equals", "value": "partly" },
      { "questionId": "itemsLeft", "operator": "greaterThan", "value": "5" }
    ],
    "resultStatus": "failed",
    "resultReason": "Too many items not delivered"
  }
]
```

| Status             | Getoond als                 | Effect                                  |
| ------------------ | --------------------------- | --------------------------------------- |
| succeeded          | **Uitgevoerd**              | Geen.                                   |
| partiallySucceeded | **Gedeeltelijk uitgevoerd** | Telt als uitgevoerd.                    |
| failed             | **Niet mogelijk**           | De zending moet opnieuw worden gepland. |
| cancelled          | **Geannuleerd**             | Telt als uitgevoerd.                    |

Wat een mislukte taak in gang zet, lees je in [Statussen uitgelegd](/nl/help/status-lifecycles).

## Antwoorden in de order schrijven

Een `fieldMapping` schrijft het antwoord op een vraag naar een veld. Het heeft een `target`, een `fieldPath` en optioneel een `strategy` en een `transform`.

| Doel         | Veldpaden                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| actionResult | reason en remark van het resultaat. requestedRescheduleAt legt een nieuwe datum vast waar de ontvanger om heeft gevraagd, waarmee herplanning start. Elke andere naam wordt onder die naam bij het resultaat opgeslagen.                                                                                                                                                                                                                                                                 |
| action       | startTime, endTime, eta, etd, remark, duration (seconden) en externalAttributes.<name>. Bij een fotovraag voegt documents de foto toe aan de documenten van de taak, waar planners hem op de actiekaart zien.                                                                                                                                                                                                                                                                            |
| consignment  | remark, description, constraints.delivery.startingDateTime, constraints.delivery.endingDateTime en externalAttributes.<name>. Goederen: goods.<field> (elke goederenregel), goods.0.<field> (de eerste regel, tellend vanaf 0) of goods.0.containedGoods.1.<field> (het tweede item in de eerste trailer of container). Goederenvelden: quantity, name, description, remark, barCode, weight, grossWeight, loadMeters, en voor trailers en containers licensePlate, seal en equipmentId. |

De `strategy` bepaalt wat er met het antwoord gebeurt:

| Strategie             | Effect                                                                                                                                                                                                            |
| --------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| overwrite (standaard) | Vervangt het veld door het antwoord.                                                                                                                                                                              |
| recordDifference      | Laat het veld ongemoeid. Wijkt het antwoord ervan af, dan legt het resultaat een verschil vast, zoals 33 gemelde pallets waar de order 32 zegt. Gebruik dit om de order te controleren in plaats van te wijzigen. |
| appendComment         | Voegt een regel "vraag: antwoord" toe aan de opmerking van het doel.                                                                                                                                              |

Antwoorden worden geschreven zoals ze zijn gegeven. Om een datum in een ander formaat te schrijven, voeg je `"transform": { "type": "dateParse", "format": "dd-MM-yyyy HH:mm" }` toe; `"type": "addDuration"` zet een aantal seconden om in zoveel tijd vanaf nu.

Een `overwrite` op de zending wijzigt de order voor iedereen, ook voor je klant. Gebruik `recordDifference` als je alleen wilt weten wat de chauffeur aantrof.

## Antwoorden van de boordcomputer

Chauffeurs met een boordcomputer beantwoorden vragen op dat apparaat. Transportial koppelt die antwoorden aan je vragenlijst via `externalIds`: per systeem (`transics` of `webfleet`) de code die de boordcomputer stuurt. Antwoorden op vragen zonder koppeling worden niet op de vragenlijst toegepast.

* **Transics.** Gebruik de code uit de "Info columns" van je informatieblad, zoals `SNR` voor een zegelnummer. Heeft een vraag geen code, gebruik dan de exacte omschrijving uit het blad. Geef opties beide coderingen: de antwoordtekst als `value` en de antwoordcode in hun eigen `externalIds`.
* **Webfleet.** Gebruik de naam van het veld in het orderbericht.

```
{
  "id": "seal",
  "label": "Seal number?",
  "type": "text",
  "required": false,
  "externalIds": { "transics": "SNR" },
  "fieldMapping": { "target": "consignment", "fieldPath": "goods.0.seal", "strategy": "recordDifference" }
}
```

Antwoorden van de boordcomputer komen één voor één binnen. Verplichte vragen kunnen daardoor onbeantwoord blijven, en een ongeldig antwoord wordt overgeslagen in plaats van dat de rest wordt geweigerd. Het resultaat verandert alleen als een antwoord het instelt.

Standaard wordt elk antwoord van de chauffeur ook bij de taak getoond, ook antwoorden waarvoor je geen vraag hebt. Wil je alleen gekoppelde antwoorden vastleggen, zet dan **Alle antwoorden van de boordcomputer vastleggen** uit bij de boordcomputerintegratie. Zie [Boordcomputers](/nl/help/board-computers).

Upload het informatieblad bij **Genereren met AI** en vraag om de vragenlijsten te maken: de codes worden dan voor je ingevuld. Controleer ze met de codes die op je Transics-account zijn geregistreerd, want die kunnen afwijken van het blad.

## Reageren op verschillen

Als een antwoord een verschil vastlegt, of een antwoord van de boordcomputer als ongeldig wordt overgeslagen, geeft Transportial de gebeurtenis **Na een vragenlijst-conflict**. Kies die als trigger van een workflow, een meldingsregel of een berichtautomatisering, bijvoorbeeld om de planner of de klantenservice te informeren. Zie [Workflows](/nl/help/workflows) en [Meldingsregels](/nl/help/alert-rules).

## Een vragenlijst testen

1. Maak een testtrip aan met een taak van het actietype en start de trip.
2. Klik op de trip op het icoon **Uitvoeringsweergave delen** om de link te kopiëren, en open die in een nieuw browsertabblad.
3. Klik bij de taak op **Starten** en daarna op **Afronden**.
4. Beantwoord de vragen en controleer of vervolgvragen verschijnen wanneer dat hoort.
5. Klik op **Afronden** en controleer het resultaat bij de taak in de trip. Zie [Actieresultaten bekijken](/nl/help/action-results).

## Problemen oplossen

* **De vragenlijst verschijnt niet.** Controleer of `enabled` op `true` staat, of de sleutel overeenkomt met het actietype van de taak en of je de instellingen hebt opgeslagen.
* **Een vraag verschijnt nooit.** Controleer de voorwaarden: de `questionId` moet een eerdere vraag zijn, en de `value` moet precies overeenkomen met de `value` van de optie, niet met het label.
* **De chauffeur kan niet afronden.** Een vraag is verplicht, tenzij hij `"required": false` heeft. Verborgen vragen zijn nooit verplicht.
* **Het verkeerde resultaat wordt ingesteld.** Resultaatkoppelingen gaan voor opties, en de eerste passende koppeling wint. Zet de meest specifieke koppeling bovenaan.
* **Een veld wordt niet bijgewerkt.** Controleer het `fieldPath` met de lijsten hierboven, of de strategie `overwrite` is en, bij het doel `consignment`, of de taak bij een zending hoort.

## Gerelateerde artikelen

* [Actieresultaten bekijken](/nl/help/action-results)
* [Actievragenlijsten beantwoorden](/nl/help/openmove-questionnaires)
* [Planning en routering voor het platform configureren](/nl/help/platform-planning-and-routing-settings)
* [Boordcomputers registreren](/nl/help/board-computers)
* [Statussen uitgelegd: orders, zendingen, trips en acties](/nl/help/status-lifecycles)

## Nog steeds hulp nodig?

Ons supportteam beantwoordt graag al je vragen over Transportial.

[Contact met support](/nl/contact)[Een probleem melden](/nl/report-issue)

---
Canonical page: https://transportial.com/nl/help/action-result-questionnaires
