Tip #1368: Missing a flow?

Today’s tip is from Rilsina Pegado. Got a tip of your own? Send it to jar@crmtipoftheday.com.

If you happen to face a situation where your flows are not visible after signing into https://flow.microsoft.com/ > My Flows or by checking default solution with global admin login. Or if you removed flow from the solution and need to find it later…

Go to Admin center > Select your environment > Resources > Flows.

Cover photo by Humphrey Bolton / Invisible stream, Cracoe

Tip #1367: Tell apart create, update, and delete events

It’s not every day one gets to chime in on a post from Jerry, the lifetime tipster and Power Automate connoisseur. In this post Jerry talks about When a record is created, updated, or deleted trigger in CDS (current environment) connector and how to tell the event that triggered the flow using a clever combination of checks on Modified On and Created On attributes.

I think there is a not necessarily better but certainly a simpler way to achieve the same.

Continue reading

Tip #1366: Make file type field required

We recently got a great new field type in CDS called the file type field. This allows creation of fields that contain files, and it is very useful for scenarios like the following:

  • Order needs to have a copy of the purchase order before the order can proceed
  • application must include a copy of applicant’s driver’s license

In the past our only options were to put the file in attachments or Sharepoint, both of which are 1:N file storage mechanisms. So while we could handle files, we couldn’t dependably verify that a specific file had been supplied.

With the file field I can tell that a file has been added if the “purchase order” or “driver’s license” field contains data. Super.

But how do I make the field required? None of the normal requirement tools can work with file fields. This is likely due to the file being stored in Azure Blob. You can’t require it at the field level, and you cannot require it with a business rule, and you cannot check if it contains data via workflow.

Use business process flow

In most cases like I listed above, the file is required before reaching a specific stage in the process. Use business process flow and make the field required in the process flow. This makes the field required before changing stages or completing the process, but doesn’t make the field required to create or update the form.

Cover photo Nora Belrose / CC BY-SA

Tip #1365: Dynamics 365 App for Outlook checker

Checkers are everywhere. It used to be a game immortalized for me by Segura and Wormold in Our Man in Havana. Nowadays it’s ubiquitous software that just keeps poking their nose into the intricate world of citizenmanship. We have Power Apps checker, Flow checker, Solution checker, Portal checker, Power BI checker (phew, got carried away a bit).

If that wasn’t enough, Amey Holden reports from the field there is a new kid on the block. (While we’re at it, send your tips to jar@crmtipoftheday.com).

Troubleshooting issues with Dynamics 365 App for Outlook just got a little easier. Fire up the app in your outlook and hit Ctrl+Alt+Y to fire up the App for Outlook Checker which gives you a head of useful diagnostic information, handy links for errors plus the ability to export error logs and also clear the apps local cache.

Cover image is a scene from Our Man in Havana adaptation of the Greene’s novel.

Tip #1364: Customizing opportunity close status reasons

So you followed tip 1290 and you customized your opportunity close form. Great! But now that you did that, users don’t see all of the win/lose status reasons to select when closing the opportunity. What’s up with that?

First thing to remember is that the custom opportunity close is a quick create form for a different entity called Opportunity Close. If you make changes to the status reasons of opportunity, opportunity close doesn’t automatically know about them.

The way to inform opportunity close of your customized status reasons is to add them (including the same option set value) to the opportunitystatuscode field on opportunity close. If the values of status reason from opportunity are in the opportunity close opportunitystatuscode field, users closing an opportunity using the custom opportunity close field will see the correct options.

Cover image Pye Records / Public domain

Tip #1362: Trigger Power Automate on Associate / Disassociate

Many to many relationship is everywhere, from good old marketing lists to web roles in Power Apps portals. The secret sauce is in the little hidden intersect entity holding the relationship together, those of you who used FetchXml Builder from XrmToolBox to craft a query, are very familiar with. The messages to control the relationship are appropriately named Tweedledum and Tweedledee Associate and Disassociate.

Wouldn’t that be nice to be able to automate some business processes when records are associated and disassociated? For example, when someone is added to a marketing list we might want to say hello or, when someone is no longer a portal administrator, we’d like to say “Nyah nyah nyah nyah nyah nyah”?

These little messages have been tormenting us for as long as I can remember. Power Automate has given me a glimpse of hope by accepting [manually entered] intersect entity name but refusing to fire when the records were added or removed. Currently there is no other way to intercept those messages except writing a plugin. Or is there?

Well, plugin is still required but we don’t have to write anything because we can use webhooks.

Continue reading

Tip #1361: For whom the bell tolls

Who hasn’t heard of Sydney Harbour Bridge?! But didn’t you know awesome footage of its construction is available? More importantly, did you know that the bridge toll is only charged one way – in the direction of the city? It also varies depending on time of the day and day of the week but that’s less important for our discussion.

Power Platform also charges toll in the form of request limits and capacity add-on. Unlike Sydney Harbour Bridge toll however, Power Platform observes and taxes your travel in both directions.

Hold on, you might say, what does it even mean?! I call Common Data Service, not other way around. Well, actually, you are going to be called by CDS if you register a webhook. Turns out, that’s counted as an API call or, rather, Power Platform request.

Our good friend Marius Agur Hagelund Lind and Stephen Siciliano, Partner PM Director, Power Automate at Microsoft(a.k.a. the guy who “owns” Power Automate) had a conversation on the subject just couple days ago.

Marius
Will webhooks/service buses registered on message steps count as a platform request as part of the “api limits”? E.g: if I register a webhook to an Azure Function on read of account, will that “cost” 1 platform request?

Yes, any inbound or outbound calls (in this case, to service bus or functions), count as a request that the limits apply to. 

Stephen, Power Automate Deity

Tîpp Jäår
Now, what were you saying about varying that charge depending on time and day?…

Cover image by RodhullandemuOwn work, CC BY-SA 3.0, Link

Tip #1360: Customizing the activity timeline

You migrate data to Dynamics 365/Common Data Service and in the migration, you close activities. After the migration, the activity timeline shows the migration account in the top line of every activity.

Say you want to have the timeline display something other than the account who closed the task. How do you customize this layout?

  1. Open the form in the legacy customization experience.
  2. Go to properties of the timeline/social pane
  3. Click the activity tab and change “display activity using” to “card form.”

From the “select a card form for each activity” section, select the card form you want to use for each activity type–change the activity type and select the card form you want to display in the timeline.

If you don’t want to show the modified by, remove it from the card form.

Be careful when editing the card form–if you make too many changes, the timeline may stop working correctly–be sure you test any changes that you make before releasing them.

Cover image: Wikimedia Commons

Tip #1359: Whose fault is it in Power Automate?

Smart people are very useful. Sometimes just talking to them helps you understand the technology better. Consider, for example, John Liu educating ignorant yours truly about the intricacies of failing Power Automate flows.

tl;dr

For a flow run to be a success, all execution paths including those containing skipped actions, must complete.

Continue reading