Dieser Beitrag bezieht sich auf die Version:
Dynamics 365 for Finance and Operations
Dynamics 365 for Finance and Operations
Kommentar hinzufügen
Dies ist ein Beitrag aus der Serie »Erste Schritte in Microsoft Dynamics 365 for Finance and Operations«
Microsoft Dynamics 365 for Finance and Operations stellt mich als langjährigen Entwickler von Dynamics AX vor viele kleine und grössere Herausforderungen. Begleitet mich deshalb in dieser Serie auf meiner Reise durch unbekannte Gewässer ;-)
Alle Beiträge dieser Serie anzeigen
|
|
|
|
|
|
|
Im folgenden Beitrag möchte ich zeigen, wie man mit Hilfe eines Events eine Methode einer Tabelle erweitern kann.
Nachdem man sich das gewünschte Projekt erstellt/geöffnet hat kann man über das Kontextmenü des Projektes unter Add > New item eines neues Objekt vom Typ Class erstellen. Dieser Klasse gibt man noch einen Namen, wichtig dabei ist die Endung _Extension.
Danach steht eine einfache Klasse zur Verfügung, die sich wie folgt darstellt
Nun ändern wir über das Attribut ExtensionOf die Klasse, ergänzen sie um den Modifier final. Solcherart gekennzeichnete Klassen werden auch als Augmentation-Klassen bezeichnet.
Nun wechseln wir wieder in den Application Explorer, suchen uns dort jene Tabelle die wir erweitern wollen und öffnen über das Kontextmenü der Tabelle und der Option Open designer diese im Arbeitsbereich.
Hier erweitern wir den Knoten Events, wählen das jeweilige Event aus und wählen im Kontextmenü dieses Events - im Beispiel das onValidatingWrite() - die Option Copy event handler method.
Dadurch wird ein Code-Snippet in die Zwischenablage kopiert welches wir in unserer Augmentation-Klasse einfügen können.
Nun geht’s ans Umsetzen der eigentlichen Logik, im Beispiel habe ich eine sehr einfache Prüfung eines Feldes implementiert.
Der letzte Schritt ist nun der Build/Rebuild der Solution bzw. des Projektes und ein möglichst erfolgreicher Test der Anpassung.
Dieser Beitrag wurde basierend auf der Version 7.3 mit Platform-Update 12 und installiertem Fleet Management Sample Application erstellt.