Mit PowerApps Component Framework (PCF) das User Interface gestalten und erweitern
Bericht vom online Treffen der Gruppe PowerPlatform am 18.02.2025.
Zum ersten online Treffen in diesem Jahr lud die Themengruppe PowerPlatform eine anerkannte Spezialistin in Sachen PowerApps Component Framework (PCF) ein:
Diana Birkelbach, seit vielen Jahren Microsoft MVP und über 25 Jahre bei der ORBIS SE mit dem Thema Sonderentwicklung für Dynamics 365 (und den Vorgänger-Versionen) befasst. Sie entdeckte 2019 ihre Leidenschaft für die Erstellung und Integration von PCF-basierten Lösungen. Insidern ist sie unter anderem durch ihre Webseite „Dianamics PCF Lady“ bekannt, auf der auch viele Informationen zum PowerApps Component Framework zu finden sind.
Gruppenleiter Maximilian Hofmann wies im Rahmen seiner Begrüßung zunächst auf die vorgesehene Arbeitsweise der Gruppe hin:
- Die Gruppe selbst setzt die Themen
- Keine One-Man-Show – die Gruppe lebt von Interaktion
- Lebhafte Diskussion ist Teil des Community-Gedankens
- Regelmäßige Teilnahme an den Gruppentreffen
Dann gab er das Wort an Diana Birkelbach, die in den nachfolgenden rund 60 Minuten auf die Funktionalität von PCF-Komponenten einging und zahlreiche Beispiele für konkrete Anwendungsszenarien mitbrachte.
Grundsätzlich geht es bei PCF darum, die Standardfunktionalitäten von Power Apps basierten Lösungen zu erweitern und den Bildschirm-Dialog zu optimieren (ein Anpassen und Erweitern des User Interface). Sie sind typischer Teil eines in der Regel firmenspezifischen Customizings. PCF-Komponenten werden nach festem Muster in einer Visual Studio Umgebung erstellt und in bestehende Lösungen eingebunden. Sie können in Model-Driven Apps, in Canvas Apps, in Custom Pages oder auch in Power Pages zum Einsatz kommen. Sie sind – eine sinnvolle Programmierung vorausgesetzt – wiederverwendbare Bausteine, was Entwicklungskosten einsparen kann. So können beispielsweise zusätzliche Eingabefelder bereitgestellt, grafische Darstellungen (Diagramme) eingebunden, vorhandene Tabellen erweitert, Ausgabewerte werteabhängig farbig dargestellt oder Drittanbieter-Lösungen eingebunden werden.
Diana Birkelbach erläuterte Aufbau und Verwendung der Manifest Datei, ging auf die PCF-Methoden in der index.ts-Datei ein und zeigte etliche Anwendungsmöglichkeiten für PCF-Komponenten. Hier auf die einzelnen Beispiele konkret einzugehen, würde den Rahmen des Berichtes sprengen.
Zum Abschluss ihrer Präsentation nannte Diana Birkelbach dann drei Faktoren, die vor der Verwendung von PCF-Komponenten unbedingt bedacht werden sollten:
- „Don’t use a PCF unless you really need one!“
Der Einsatz von PCF Komponenten führt immer ein Stück weit weg vom Standard. Dies führt zu erhöhtem Testaufwand bei Releasewechseln, zu zusätzlichem Maintenance Aufwand und man muss den Support sicherstellen. - PCF Komponenten möglichst generisch erstellen
Je allgemeiner eine Funktionalität ausgelegt ist, desto eher kann eine Komponente auch an anderer Stelle eingesetzt werden. - Funktionalität von PCF-Komponenten „schmal halten“
Niemals mehrere Funktionalitäten in eine einzige PCF-Komponente mit hinein packen. Funktionalität einer PCF-Komponente sauber dokumentieren (Baukasten-Prinzip).
In der anschließenden Fragerunde wurde deutlich, dass bislang nur ganz wenige Personen aus dem Teilnehmerkreis PCF-Komponenten eingesetzt, geschweige denn selbst erstellt hatten. Um sich in das Thema PowerApps Component Framework einzuarbeiten verwies Diana Birkelbach auf ihre Webseite, ihre Videos bei YouTube, aber auch auf die Ressourcen bei Microsoft Learn. Mitgliedern der Gruppe PowerPlatform wird außerdem die Präsentation über den gruppeneigenen Teamskanal zur Verfügung gestellt.
Nächster Termin im April
Das nächste virtuelle Treffen ist für den 24. April 2025 geplant. Es wird um das Thema Lizensierung von Power Apps, Schwerpunkt Multiplexing, gehen. Referentin ist Natasa Krstin von Microsoft.
Sie sind an einer Mitarbeit in dieser Gruppe PowerPlatform interessiert und möchten am Erfahrungsaustausch teilhaben? Dann wenden Sie sich bitte an die Geschäftsstelle (info@mbuf.de).