đŸ”ĸ Choices

← Terug naar Develop

Choices (voorheen Option Sets) worden gebruikt om gebruikers te laten kiezen uit een vooraf gedefinieerde lijst met waarden.

Door gebruik te maken van Choices wordt invoer gestandaardiseerd, verbetert de datakwaliteit en wordt de werking van businesslogica, rapportages en integraties voorspelbaar.

Choices vormen een belangrijk onderdeel van een goed ontworpen Dataverse datamodel.

Consistent data starts with controlled data entry.


đŸŽ¯ Doel

Deze richtlijnen ondersteunen teams bij:


🧠 Wat is een Choice?

Een Choice is een kolomtype waarbij gebruikers kunnen kiezen uit een vooraf gedefinieerde lijst met waarden.

Voorbeelden

Status
- Actief
- Inactief

Type
- Intern
- Extern

Categorie
- Standard
- Premium
- Custom

Voordelen

✅ Consistente gegevensinvoer

✅ Ondersteuning van businesslogica

✅ Betere rapportages

✅ Minder invoerfouten

✅ Herbruikbare definities


🌍 Lokale versus Globale Choices

Binnen Dataverse bestaan twee typen Choices.


Lokale Choice

Een lokale Choice behoort uitsluitend toe aan ÊÊn kolom.

Kenmerken

Wanneer gebruiken?

✅ Waarden zijn uniek voor ÊÊn tabel

✅ Hergebruik is niet nodig

Voorbeeld

Project
    ↓
Projecttype

- Intern
- Extern
- Innovatie

Globale Choice

Een globale Choice kan door meerdere kolommen en tabellen worden gebruikt.

Kenmerken

Wanneer gebruiken?

✅ Dezelfde waarden worden op meerdere plekken gebruikt

✅ Rapportages moeten dezelfde definities gebruiken

✅ Consistente businesslogica is gewenst

Voorbeelden

Status

- Actief
- Inactief
Prioriteit

- Laag
- Normaal
- Hoog

Richtlijn

Gebruik een globale Choice zodra dezelfde definitie op meerdere plaatsen kan worden gebruikt.


✅ Keuze: Lokaal of Globaal?

Situatie Advies
Alleen gebruikt door ÊÊn kolom Lokale Choice
Mogelijk hergebruik in toekomst Globale Choice
Gebruikt in meerdere tabellen Globale Choice
Centrale rapportages gebruiken dezelfde waarden Globale Choice
Specifiek voor ÊÊn proces Lokale Choice

Richtlijn

Bij twijfel heeft een globale Choice meestal de voorkeur.


đŸˇī¸ Naamgeving

Display Name

Gebruik een functionele en begrijpelijke naam.

Voorbeelden

Status
Category
Type
Priority

Richtlijnen

✅ Beschrijvend

✅ Begrijpelijk voor eindgebruikers

✅ Enkelvoud

✅ Functioneel


Schema Name

Formaat

<publisher>_<name>

Voorbeelden

unc_status
unc_category
unc_type
unc_priority

Richtlijnen

✅ Publisher prefix verplicht

✅ Lowercase

✅ Underscores gebruiken

✅ Geen spaties


🧩 Waarden (Options)

Iedere Choice bestaat uit ÊÊn of meerdere waarden.

Richtlijnen

✅ Gebruik duidelijke labels

✅ Vermijd afkortingen

✅ Gebruik consistente terminologie

✅ Gebruik dezelfde taal binnen de gehele oplossing

✅ Houd waarden stabiel


Voorbeeld

Label Value
Director 420550000
CEO 420550001
Management 420550002
Advisor 420550003

Belangrijk

De numerieke Value wordt technisch gebruikt door:

Wijzig deze waarden nooit handmatig nadat ze in gebruik zijn genomen.


🔄 Lifecycle van Choices

Choices ontwikkelen zich vaak gedurende de levensduur van een oplossing.

Toegestaan

✅ Nieuwe opties toevoegen

✅ Labels aanpassen wanneer noodzakelijk

✅ Opties deactiveren

Vermijd

đŸšĢ Verwijderen van gebruikte opties

đŸšĢ Hergebruik van bestaande waarden voor een andere betekenis

đŸšĢ Wijzigen van option values


âš ī¸ Impact op Business Logic

Choices worden vaak gebruikt binnen:

Hierdoor kunnen wijzigingen grote impact hebben.

Voorbeeld

Status = Actief

wordt mogelijk gebruikt in:

Richtlijn

Analyseer altijd de impact voordat een Choice wordt gewijzigd.


🌐 Choices en Integraties

Choices worden in integraties meestal opgeslagen als een numerieke waarde.

Voorbeeld

Label: Active
Value: 420550000

Richtlijnen

✅ Houd option values stabiel

✅ Documenteer mappings naar externe systemen

✅ Gebruik consistente keuzes over meerdere oplossingen

Vermijd

đŸšĢ Hardcoded waarden in integraties

đŸšĢ Onbekende betekenis van option values


📊 Datakwaliteit

Choices dragen direct bij aan datakwaliteit.

Voordelen

✅ Minder vrije tekstvelden

✅ Minder spelfouten

✅ Consistente rapportages

✅ Betere zoekresultaten

✅ Eenvoudigere validaties

Richtlijn

Gebruik waar mogelijk een Choice in plaats van vrije invoer.


🔍 Checklist

Ontwerp

Naamgeving

Waarden


✅ Best Practices

Doe

✔ Gebruik globale Choices voor herbruikbare definities

✔ Gebruik duidelijke labels

✔ Houd waarden stabiel

✔ Documenteer de betekenis van keuzes

✔ Analyseer de impact van wijzigingen

✔ Gebruik Choices in plaats van vrije invoer waar mogelijk


Vermijd

✘ Duplicatie van vergelijkbare Choices

✘ Hardcoded option values in code

✘ Verwijderen van gebruikte opties

✘ Wijzigen van bestaande option values

✘ Onduidelijke afkortingen

✘ Vrije tekst wanneer een Choice mogelijk is


🔗 Relatie met andere onderwerpen

Onderwerp Relatie
Entity Guidelines Choices vormen onderdeel van het datamodel
Columns Choice is een specifiek kolomtype
Business Rules Gebruikt Choices voor validaties en logica
Cloud Flows Gebruikt Choice waarden in automatiseringen
Integrations Choice waarden worden vaak uitgewisseld met externe systemen
Naming Conventions Bepaalt naamgeving van globale Choices

📌 Samenvatting

Choices helpen bij:

👉 Gebruik lokale Choices voor specifieke situaties en globale Choices zodra hergebruik, rapportages of consistente definities belangrijk worden binnen de oplossing.