Command bar uitbreiden met knoppen, flows en JavaScript acties.
De command bar (ook wel ribbon genoemd) bepaalt welke acties beschikbaar zijn voor gebruikers binnen model-driven apps.
Deze pagina beschrijft:
Ribbon customization wordt gebruikt voor het aanpassen van gebruikersacties binnen de applicatie.
Toepassingen:
👉 De command bar bepaalt wat gebruikers kunnen doen binnen een formulier, view of subgrid. https://learn.microsoft.com/en-us/power-apps/developer/model-driven-apps/customize-commands-ribbon
Er zijn twee manieren om de command bar aan te passen:
Gebruik wanneer:
Gebruik wanneer:
👉 Ribbon Workbench wordt gebruikt voor geavanceerde scenario’s en volledige controle. https://dev.to/sapotacorp/model-driven-ribbon-command-designer-vs-ribbon-workbench-in-2026-3bnd
Gebruik deze aanpak wanneer mogelijk (voorkeur).
👉 De command designer maakt het mogelijk om knoppen toe te voegen zonder externe tools. https://learn.microsoft.com/en-us/power-apps/maker/model-driven-apps/use-command-designer
Bij het toevoegen van een knop definieer je niet alleen wat er gebeurt, maar ook wanneer en in welke context de actie wordt uitgevoerd.
💡 Belangrijk: kies de juiste techniek op basis van complexiteit en onderhoudbaarheid.
| Scenario | Aanpak |
|---|---|
| Simpele logica / UI gedrag | Power Fx |
| Complexe client-side logica | JavaScript |
| Backend processen / integraties | Power Automate |
| Navigatie / UX | Open form / page |
Afhankelijk van de locatie krijg je andere context mee:
👉 Houd hier expliciet rekening mee bij je implementatie.
Bij grid knoppen moet je expliciet rekening houden met selectie:
👉 Configureer dit correct, anders werkt de knop niet zoals verwacht.
Voorbeelden:
Gebruik JavaScript voor client-side logica of complexe interacties.
executionContext
formContext, niet Xrm.Page
function activateRecord(executionContext) {
var formContext = executionContext.getFormContext();
var id = formContext.data.entity.getId();
if (!id) {
return;
}
Xrm.WebApi.updateRecord("account", id, {
statecode: 0,
statuscode: 1
}).then(function () {
formContext.data.refresh();
});
}
Gebruik Power Automate wanneer:
👉 Minder geschikt voor directe UI feedback.
Gebruik navigatie voor betere UX:
💡 Krachtig voor guided user flows.
Plaats logica op de juiste plek:
👉 Voorkom dat business logica in de ribbon terecht komt.
Knoppen moeten contextbewust zichtbaar zijn om de UI overzichtelijk te houden.
👉 Toon alleen wat relevant is.
| Type | Gedrag |
|---|---|
| Visibility | knop volledig verborgen |
| Enable | knop zichtbaar maar disabled |
💡 Gebruik:
Gebruik Enable Rules wanneer:
Voorbeeld:
Gebruik Power Fx voor eenvoudige visibility logica.
Self.Selected.Item.statuscode = 1 // grid context
User().Email = " admin@brenke.nl"
Mogelijkheden:
Gebruik wanneer standaard regels niet voldoende zijn.
💡 Een goede command bar voelt vanzelfsprekend.
Veel voorkomende problemen:
Ribbon customization maakt onderdeel uit van:
👉 Bepaalt hoe gebruikers werken met het systeem.
Ribbon customization bepaalt welke acties beschikbaar zijn binnen Dataverse.
Door:
ontstaat een oplossing die:
is binnen het platform.