⚙️ Plugin Usage

← Terug naar Plugin & Custom API Development

Het registreren, configureren en toepassen van Plugins binnen Dataverse.

Onderwerpen


Doel

Plugins worden gebruikt voor het uitvoeren van server-side business logica binnen de Dataverse event pipeline.

Deze pagina beschrijft hoe Plugins worden geregistreerd, geconfigureerd en toegepast binnen een oplossing.

Voor richtlijnen rondom architectuur, ontwikkeling, testing en services:

👉 Zie Plugin & Custom API Development.


Event Pipeline

Plugins reageren op gebeurtenissen binnen Dataverse.

Veelgebruikte events zijn:

Bij iedere gebeurtenis kan een Plugin worden uitgevoerd binnen een specifieke fase van de pipeline.


Plugin Stages

PreValidation

Wordt uitgevoerd vóór de platformvalidatie.

Typische toepassingen:


PreOperation

Wordt uitgevoerd binnen de database transactie.

Typische toepassingen:

Wijzigingen worden onderdeel van dezelfde transactie.


PostOperation

Wordt uitgevoerd nadat de gegevens zijn opgeslagen.

Typische toepassingen:


Execution Modes

Plugins kunnen synchroon of asynchroon worden uitgevoerd.

Synchronous

Wordt uitgevoerd tijdens de gebruikersactie.

Gebruik voor:

Aandachtspunt:

De gebruiker wacht op voltooiing van de Plugin.


Asynchronous

Wordt uitgevoerd op de achtergrond.

Gebruik voor:

Aandachtspunt:

De gebruiker ontvangt niet direct resultaat van de verwerking.


Plugin Registration

Plugins worden geregistreerd via de Plugin Registration Tool.

Per Plugin Step wordt minimaal vastgelegd:

Richtlijn

Registreer uitsluitend de stappen die daadwerkelijk nodig zijn.

Voorkom onnodige registraties en overlap tussen meerdere Plugins.


Filtering Attributes

Bij Update-events moeten Filtering Attributes worden gebruikt.

Voorbeeld:

telephone1
emailaddress1

Voordelen

Richtlijn

Gebruik altijd Filtering Attributes tenzij er een duidelijke reden is om dit niet te doen.


Plugin Trace Logs

Gebruik Plugin Trace Logs voor monitoring en troubleshooting.

Log bijvoorbeeld:

Richtlijn

Log voldoende informatie voor analyse, maar voorkom overmatige logging.


Veelgebruikte Scenario's

Server-side Validatie

Valideert gegevens onafhankelijk van de gebruikte interface.

Voorbeelden:


Automatische Verwerking

Voert logica uit op basis van gebeurtenissen.

Voorbeelden:


Integraties

Start vervolgprocessen richting externe systemen.

Voorbeelden:


Best Practices

Houd Plugins klein

Laat een Plugin slechts één verantwoordelijkheid hebben.


Gebruik Services

Plaats business logica in services en houd de Plugin beperkt tot:


Gebruik de juiste Stage

Scenario Stage
Validatie PreValidation
Datamutatie PreOperation
Vervolgactie PostOperation

Gebruik Async waar mogelijk

Gebruik synchroon alleen wanneer directe verwerking noodzakelijk is.


Veelgemaakte fouten

✘ Geen Filtering Attributes gebruiken

✘ Te veel logica in de Plugin zelf

✘ Externe calls vanuit synchrone Plugins

✘ Onnodige database bevragingen

✘ Geen foutafhandeling

✘ Overmatig gebruik van Plugin Steps


Relatie met andere onderwerpen

Onderwerp Relatie
Plugin & Custom API Development Ontwikkelrichtlijnen voor server-side logica
Custom API Usage Alternatieve implementatietechniek
Logic Implementation Guidelines Ondersteunt de keuze van de juiste techniek
Monitoring & Logging Richtlijnen voor logging en analyse

Samenvatting

Plugins maken het mogelijk om server-side logica uit te voeren binnen de Dataverse event pipeline.

Een goede Plugin implementatie:

Hierdoor ontstaan oplossingen die performant, betrouwbaar en onderhoudbaar zijn binnen het Power Platform.