Go with the Flow – How to Set Date Based Alerts with Microsoft Flow

With the release of Dynamics 365 (D365) for Operations, one of the most often requested missing features was alerts.  Flow is often mentioned as a replacement and triggers for D365 for Operations—coming in the near future—will provide a wealth of functionality compared to the alerts of Ax 2012.

That said, they can take a bit more work to get things going, like a past due date alert for a purchase order line.

Let’s take an example. I want to send an email message to my team for every purchase order line that is more than 5 days late per our requested receipt date.

First things first – you’ll need to sign up for Flow.

Once you’ve done that, click on “My flows” and “Create from blank.”

setting a date-based alert in Dynamics 365 for Operations

In the flow designer, give the flow a name.

setting a date-based alert in Dynamics 365 for Operations

Then from the services and triggers list, select “Schedule.” This will allow us to run our flow on a recurring basis, such as on a nightly basis.

setting a date-based alert in Dynamics 365 for Operations

Specify the frequency and interval, and use the advanced options to pick a specific start time if necessary.

setting a date-based alert in Dynamics 365 for Operations

Next, we will get records from D365. Click “New step” and select “Dynamics 365 for Operations – Get records.”

setting a date-based alert in Dynamics 365 for Operations

 

You’ll be asked to sign in if you have not used this action before. Once signed in, select the D365 instance you want to connect to, and then select the entity “PurchaseOrderLines.”

setting a date-based alert in Dynamics 365 for Operations

Click “Show advanced options” and enter a filter.

setting a date-based alert in Dynamics 365 for Operations

Our filter for this example will have two parts: selecting only open lines and then filtering on the requested delivery date.

The purchase order status field is an enum and requires a little extra work to filter on. The format required is the following:  FieldName eq Microsoft.Dyanmics.DataEntities.Enum’Value’

This then equates to: PurchaseOrderLineStatus eq Microsoft.Dynamics.DataEntities.PurchStatus’Backorder’

The ‘eq’ is the expression for equality (see the full list here – https://msdn.microsoft.com/en-us/library/hh169248(v=nav.90).aspx).

The date field is a little tricky. Something not immediately obvious with Flow is that you can use a lot of the same functionality as LogicApps even though it is not exposed on the designer. So to calculate our date (today – 5) we can make two LogicApp API calls.

The utcnow function will return the date and time as of when the Flow is executed.  We pass one parameter—the format of the date we want returned to us.

We pass the result of the utcnow function call to adddays, which will add, or subtract, the specified number of days to the date it is given. And again, we pass a date format: RequestedDeliveryDate lt @{adddays(utcnow(‘yyyy-MM-dd’), -5, ‘yyyy-MM-dd’)}

The “lt” expression gives us a “less than” condition. Enclosing the above in @{ …} tells Flow that these are function calls to be executed.

So our complete filter expression looks like this:

PurchaseOrderLineStatus eq Microsoft.Dynamics.DataEntities.PurchStatus’Backorder’ and RequestedDeliveryDate lt @{adddays(utcnow(‘yyyy-MM-dd’), -5, ‘yyyy-MM-dd’)}

Next, we add an email action. I’m using o365, but there a multiple methods to send an email. You could also send a text message using Twillio, tweet, etc.

setting a date-based alert in Dynamics 365 for Operations

Click in one of the fields and notice the dynamic content displayed on the right-hand side. Click “See more” to reveal all fields from our entity.

Note what happens when you click on a field. Our send action is automatically embedded within a “Apply to each” loop, which will iterate over all the records we select from D365, and send one email for per past due purchase order line.

setting a date-based alert in Dynamics 365 for Operations

Compose your subject and body using the dynamics content, mixed with plain text, save, and run!

setting a date-based alert in Dynamics 365 for Operations

 

When you run the flow manually, or from the info icon on the “My flows” page, you can view the execution history, and trouble shoot any errors.

setting a date-based alert in Dynamics 365 for Operations

Useful References

By | 2017-09-29T16:53:18+00:00 September 28th, 2017|Dynamics 365|Comments Off on Go with the Flow – How to Set Date Based Alerts with Microsoft Flow

About the Author:

Rob Dowsett
Rob has been working in the Microsoft Dynamics channel for over 13 years, currently as Solution Architect for Dynamics 365 Enterprise at Sikich. Throughout his career, Rob helped build a thriving Dynamics AX practice with a team of over 20 and gained multiple Microsoft President Club awards.
This material has been prepared for general informational purposes only and is not intended to be relied upon as accounting, tax, or other professional advice. Please refer to your advisors for specific advice.
private equity services construction accountants Agriculture Services Construction Services Non-Profit Services Government Services