Flow-tastrophe? Conquer Flows with a smile using Flow Execution History

Introduction

A common query arises these days: why utilize the Flow Execution History tool when Microsoft provides its own set of debugging tools within the Power Automate portal? The answer lies in a straightforward truth: those acquainted with Microsoft’s user interfaces for debugging are familiar with the challenges they can pose. Often, these interfaces are a work in progress, making the process of troubleshooting, at times, a frustrating endeavor. The Flow Execution History tool emerges as a solution to this age-old struggle.

Crafted to serve as your primary hub for debugging flows, it shares a kinship with the esteemed Plugin Trace Viewer developed by Jonas Rapp for debugging plugins. This tool is a testament to the principle that specialized solutions can significantly enhance the efficiency of complex workflows.

The Struggle

Have you ever encountered the challenge of debugging a series of Power Automate flows? Picture the tedious process of clicking through, searching for that specific flow, and repeatedly hitting ‘show more runs’ without an efficient filter in sight. It’s a situation that can be frustrating for anyone. Most Power Automate users have experienced this at least once. It can feel like a significant amount of time is spent trying to identify the problematic run. Fortunately, there’s now a solution. The Flow Execution History tool can help you save valuable time in this process

Features

Let’s explore some of the essential features that make this tool invaluable.

Single List of Runs

This feature allows users to select specific flows they want to focus on, and then view all flow runs related to those selected flows in one consolidated list. This streamlined view makes it easier to track and analyze the execution history of specific flows.

Advanced Filtering

The tool offers advanced filtering capabilities, which enable users to narrow down the list of flow runs based on a specified time span. This is particularly useful for quickly pinpointing problematic flow runs without having to manually sift through a large number of entries in the maker portal.

Flow Run Correlation

This feature provides a clear visual representation of how flows are interconnected. Users can easily see if certain flows are triggering other flows and view the entire flow thread. This helps in understanding the dependencies and interactions between different flows, which is crucial for troubleshooting complex workflows.

Additional Features

The Flow Execution History tool offers an array of advanced functionalities designed to streamline your workflow management:

  • Export to CSV and Excel: Seamlessly transfer data from the tool to CSV and Excel formats. The preconfigured conditional formatting ensures that your exported data retains its visual clarity.
  • Detailed Flow Run Links: Access detailed information about flow runs with ease. The tool provides direct links to flow run details, allowing for quick and precise examination.
  • Browser and Profile Preferences: Tailor your experience by choosing your preferred browser and profile settings when opening flow run details. This level of customization ensures an optimal viewing experience.
  • Color-Coded Flow Names: Simplify the process of identifying specific flow runs by utilizing color-coded flow names. This visual aid significantly enhances the efficiency of navigating through your workflows.
  • Error Details for Failed Flows: Quickly access and review error details for failed flows. This feature provides crucial insights into the reasons behind flow failures, enabling prompt resolution.
  • Detailed Trigger Outputs: Gain a comprehensive view of trigger outputs directly from the tool. This feature allows for detailed examination and filtering of trigger outputs, providing invaluable insights into flow execution.

And this is just the beginning. The Flow Execution History tool is committed to evolving and introducing even more features in the future, promising a continuously improved experience for Power Automate users.

Support Development

If you find the Flow Execution History tool helpful and would like to contribute to its ongoing development and improvement, you can show your appreciation by buying me a coffee! Your support goes a long way in helping to maintain and enhance this tool for the Power Automate community.

Buy Me a Coffee

Thank you for your generosity and for being a valued member of the Power Automate community!

Conclusion

In the realm of Power Automate, the Flow Execution History tool emerges as a critical asset for efficient workflow management. It addresses the common challenges faced during debugging, providing a systematic approach to troubleshooting complex flows. With features like a single list of runs, advanced filtering, and flow run correlation, users gain the ability to navigate their workflows with precision and ease.

No longer will users need to endure the arduous process of endless clicking and searching in hopes of finding the elusive problematic run. The Flow Execution History tool streamlines this process, saving time and minimizing frustration.

Much like Jonas Rapp’s Plugin Trace Viewer revolutionized plugin debugging, this tool is set to become an invaluable companion for every Power Automate enthusiast. Embrace it, and witness a significant boost in efficiency and troubleshooting proficiency. Bid farewell to the ‘Flow-tastrophe’, and usher in a new era of seamless workflow management.

Experience the difference today – let the Flow Execution History tool be your guiding light in the world of Power Automate.

Power BI Embedder for XrmToolBox

Introduction

I can finally announce that my first XrmToolbox tool is publicly available. It’s called Power BI Embedder and it allows you to embed Power BI reports into the forms on your Model-Driven apps.

GitHub Repository

The idea about the tool popped up in Brussels during the session “XML Hacks – Customisation Tips for Dynamics 365 Solutions” by Marc Gerner where he showed an example of how you can embed Power BI report into the form via manipulating the form XML. I thought it’s quite repulsive for most users out there and because of that it’s maybe not used at all.

How to do it via XML is actually quite good documented on the official Microsoft docs page, but still, let’s see how can you do it with the Power BI Embedder tool for XrmToolBox.

Download

You can get the tool like any other tool via the Tool Library inside the XrmToolBox by searching for Power BI Embedder. Once it’s downloaded you can find it in the Tools tab.

The UI

The UI is quite simple and allows you to easily populate all the required fields to achieve the final goal.

The first section called Target is the part where you choose the location where your Power BI report will be embedded. You are guided with 4 dropdowns to the final location which will be the form.

The next section is the Formatting one that allows you to choose the Section Name that will actually overwrite the current section label. and the height of the section that handled by the Rowspan attribute.

The third step is where the magic starts to happen and it’s the most complex one because you need to search up all the required data needed.

Power BI Config section

The only prerequisite is that you have your report published online. After you did this go open https://app.powerbi.com to find the right parameters.

The group ID is the first thing you need to find here and it’s quite easy if you want to use the report that is located in the place called My Workplace. In that case, the Group ID parameter will always be equal to 00000000-0000-0000-0000-000000000000.

If you are not that lucky you will need to dig a bit more for the Group ID value. It’s not hidden that deep.

Go to the workplace that contains your Power BI report, open Reports tab and open up the report you want to embed. Check out the URL from the browser and it should like something like the one below.

https://app.powerbi.com/groups/420ab21a-031a-48ce-97ec-061af35ed1dd/reports/8699df09-bf84-4d0e-bf06-37d5df426f49

GUID after the groups part is the Group ID that you are looking for, 420ab21a-031a-48ce-97ec-061af35ed1dd in this example.

The next one up is Report ID and it’s quite easy when you already have the report URL.

Report ID is the GUID that is positioned after the reports part in the URL.

https://app.powerbi.com/groups/420ab21a-031a-48ce-97ec-061af35ed1dd/reports/8699df09-bf84-4d0e-bf06-37d5df426f49

Report ID in the upper example is 8699df09-bf84-4d0e-bf06-37d5df426f49.

The URL parameter is the base address of the URL you got from the report URL which is https://app.powerbi.com in most cases but can be something like https://xyz.powerbi.com.

Before the final step, you need to check what is the value of the Embed Power BI Setting in the top menu. You need to set this value to Yes, otherwise, your report will not render on the form.

Your form should look something like the one below.

Once you set the settings to Yes you are ready to publish your first report on the form by pressing the Publish Report button from the upper menu.

After a few seconds, you can load your form in the browser and if you did everything right you should see the report there.

Great you have your report embedded in the form. This report is still not aware of the context of the form on which it’s rendering, but we can fix that very easy.

Filtering

Click on the Filter checkbox first to enable the Filter section.

You can see 3 contacts on the report from the last example that are child records under 2 accounts.

Jane Doe and John Doe are created under the Contoso account. Ivan Ficko is created under the Span account.

We would like to filter the report based on the account record that is opened.

First, you need to open the report in the Power BI editor and find out the name of the table that you want to do filtering on. You can easily find the name by looking at the Fields tab on the right and copy the exact same name of the table that you find there. The casing of the table name is important in this step.

The table name in our case is Contacts.

The next one up is the column that you want to be filtered against the field on the actual form. The field that we are looking for here is called Account Name, but we need to find the right schema name from the fields list. The right schema name for Account Name is parentcustomerid.

The final thing here is to choose the field that will be used in the filter is the field on the Account form. We need to select accountid which will held the value of the current Account loaded on the form.

The goal is to show all Contacts that have Account Name (parentcustomerid) equal to Account ID (accountid) on the report on the form.

Finally, we can again press the Publish Report button to see the result on the form.

Let’s show how the form would look like if we open the Contoso account form and confirm that only John and Jane are showing in the report.

Well done you are now ready to use the tool for other scenarios that will fit your needs.

Feedback

I hope that you will find the tool useful. Since this tool is a community tool feel free to post your feedback and ideas for features so we can make the tool even better.

Please post the issues/feature requests on the GitHub repository!

DeDupe Rules Auto Publisher is available​ for previous​ Dynamics versions

overview.png

Some of the people asked if I can make this solution available for earlier versions of Dynamics. After some struggle when trying to create a v8.1 environment I finally managed to port the solution all the way down Dynamics CRM 2016 or to be more precise to version 8.0.

Download v1.1.0

Now you can install the solution on following versions:

  • Dynamics CRM 2016 (v8.0)
  • Dynamics CRM 2016 Update 1 (v.8.1)
  • Dynamics 365 (v8.2+)

Feel free to report the issues that you have related to this version or just post a suggestion for a new feature.

CRM Google Maps – New Release v1.2.0.0

map

New release of CRM Google Maps is ready for download.

Global zoom setting

You can now set global zoom level that will be default zoom level on every map. This setting will work only if you have only one marker on the map. If there are few markers on the map optimal zoom will be calculated.

Screenshot 2018-03-03 20.26.48.png

Zoom parameter

This parameter can be set on each map individually and that value will override the global zoom value that is set in the configuration page. This parameter is also relevant only if there is only one marker set on the map.

Screenshot 2018-03-03 20.28.32

Refresh

The refresh button is added to the map, so from now on you can press it to refresh map with new data that is changed on the form.

Screenshot 2018-03-03 20.30.35

Feel free to post feature suggestions in the comments section below.

Fight your randomly unpublished duplication rules

duplicate-content-image

If you ever used duplicate rules in Dynamics CRM you probably experienced that your rules unpublish randomly. That’s not 100% random because it’s only triggered when you import and publish the unmanaged solution, but it’s not done every time.

The action that triggers this is Publish All Customization that you invoke every time you import unmanaged solution to the CRM.

I made an managed solution to make your life easier by automating the republishing unpublished duplication rules after those rules are unpublished by Publish All Customization action.

You can find solution on the link. Solution is easy to configure and you will be able to use it in just few minutes after initial configuration.

overview

Check it on GitHub

After initial configuration you just need to select which rules you want to be automatically republished.

CRM Google Maps – New features

new_version_57780d0b4a56b

The new version of CRM Google Maps is released, which includes some new features.

Download here

New features

  • Added support for multiple addresses
  • Added option to show Google addresses on markers
  • Added option to change marker icon

Multiple Addresses

Now you can configure web resource to show more than one address on the same map.

multiple_addresses

Google Addresses on markers

You can use the option to show address that Google fetched based on your address in the address field which will include full information about the address (street, zip code, country, region, city).

Image 195

Custom marker icons

You can define your custom marker icon that will be shown on the map.

Image 199

Advanced configuration

I have also added features Wiki page that will guide you how to set up those new features.

CRM and Google Maps integration

google_maps_integration

I found that Bing maps are not that precise when it comes to finding exact address on the map. Every one who need something on Dynamics CRM with map uses them because it’s OOB functionality that doesn’t need much time to set up, but is it the best way to do it?

The idea behind this one is to make a solution that is easy to setup for non-developer persons that want to integrate Google Maps into their CRM system.

This integration allows users to easily change API key for the Google Maps that is a must prerequisite for maps to work and a first step that must be done. Users can define which address field will be displayed on the map by setting the custom web resource parameter in the web resource settings window.

The final result will be a marker on the map on the address location with a popup that will show the address details.

maps_example

Installation and configuration guide can be found on the GitHub page of the project, where you can also find new releases of the CRM solution that is ready for import on your CRM organization.

CRM Google Maps GitHub page

This is an initial version of Google Maps integration that will be updated in future with new features.

Feel free to send comments on the solution, report bugs that you find or even maybe post a feature suggestion.

 

CRM workflows report

mangagedmonitoringconsole

How do you manage to monitor workflows on all your CRM instances? Do you even check if some workflows have failed in past days?

I had the same problem for a long time and then I thought maybe it’s time to make some tool that will help me to monitor all those CRM instances. The idea behind this tool is that I wanted to make something that will send me a report at night about all instances that I need to monitor so I can start resolving the issues when I come at work in the morning.

Result of one report is shown on the image below

Image 162

The email contains a table with all the organizations that have some failed/waiting workflows where you can open those workflows with clicking on the workflow name and error log that is attached as TXT file where you can find all the errors in the execution of the console app.

More information and actual release of the app can be found on my Github profile. This is only an initial release that will be updated with more features and fixed bugs.

I hope that you will find this tool useful and if you have any questions regarding this tool you can send me an email or comment below.