
De Power Automate gebruikersinterface biedt een uitstekende manier om Flows te documenteren en voor referentiedoeleinden te gebruiken. Het inzicht in welke flows op welke tenant in welke omgeving zijn gemaakt is echter matig. Bovendien is het lastig om door eerder ingerichte Flow acties te klikken op zoek naar eerdere oplossingen bij het inrichten van Flow acties.
Een eenvoudige App maakt dit wel mogelijk. In de App kunnen Flows worden geregistreerd, zodat er een totaal administratie kan worden gevoerd van alle Flows die in verschillende tenants zijn aangemaakt. In de App kan daarnaast de HTML code ui de Flow designer worden geplakt. Zodra het record wordt bewaard, start een Flow die de verschillende stijlen uit de stylesheets toevoegt, met als resultaat een stand-alone HTML pagina die weer gemakkelijk kan worden getoond in een web site. Deze HTML file wordt door een tweede Flow hiervoor op een Azure Storage gezet.
Nu vergt het schrijven naar Azure Storage Accounts een premium connector. Door een Flow in een Teams dataverse neer te zetten, is geen premium licentie nodig.
De diagram spreekt voor redelijk zich, maar samengevat wordt op het moment dat in de App een flow record wordt bewaard
De tweede Flow staat in een Teams solution en wordt automatisch gestart op het moment dat op SharePoint de Flow Diagram file wordt neergezet. Deze Flow doet niets anders dan met de inhoud van deze file een blob op Azure Storage aan te maken.
// A namespace defined for the sample code// As a best practice, you should always define // a unique namespace for your librariesvar dts = window.dts || {};(function () { // Define some global variables var myUniqueId = "_myUniqueId"; // Define an ID for the notification var currentUserName = Xrm.Utility.getGlobalContext().userSettings.userName; // get current user name // Code to run in the form OnLoad event this.formOnLoad = function (executionContext) { var formContext = executionContext.getFormContext(); var iFrame = Xrm.Page.ui.controls.get('IFRAME_Flow'); iFrame.setSrc(formContext.getAttribute("dts_flowdiagramurl").getValue()); var message = "iFrame source" + formContext.getAttribute("dts_flowdiagramurl").getValue() // display the form level notification as an INFO formContext.ui.setFormNotification(message, "INFO", myUniqueId); // Wait for 5 seconds before clearing the notification window.setTimeout(function () { formContext.ui.clearFormNotification(myUniqueId); }, 5000); }}).call(dts);