Secure Input/Output in Power Automate Run History

Isn’t it just too easy to see from Flow (Power Automate’s) Runs what data was passed on? A simple switch in the Power Automate designer will secure this.

Default Behavior

By default, if you have access to the Flow, you can simply go in and see the inputs
openData

Secure Input / Output

In the Flow designer, you can select and step and go to Settings
settings

And turn on Secure Input / Output depending on what you want. It says this is still in Preview as of the day of writing this post.
turnOnInputs.png

Once this is Active, it is denoted by a Lock symbol on the step you enabled it on.
denoted by Lock.png

And now, when you try to look at the data, it will hide away the information
securedData.png
Note: Please note that this will run only for the Run History records after this was turned on. The previous records will continue to show the data.

Also, in case you’re curious to know about the Approval Process using Power Automate, you can refer this post – Approval Process using Power Automate

Hope this helps!!

Advertisement

Approval Process using Power Automate

Approvals have been around for quite some time now in Power Automate. Let’s look at the simplest example of how we can make use of Approvals in Flow / Power Automate and then you let your imagination and creativity take over!

Scenario

For the sake of simplicity, I have a custom entity called Request where users submit a Request and the Approval simply has to Approve/Reject.
simpleRequestRecord.png

The Approved/Reject status should be set in Dynamics 365 accordingly. Simple!

Power Automate for Approval

And then, my Power Automate looks like this –

  1. I will trigger this off the CDS connector on create of the Request record and then select Approvals in the next step.
    approvalConnector
  2. The Type of Approval selection is asked.
    typeOfApprova
  3. And my Approval body is simple, just providing the basic details and whom the Approval request should go to. In this case, Kuldeep Gupta
    approvalBody.png
  4. In the next Condition step, based on whether the Outcome is Approve or not, I’ll simply update the record’s status to either Accepted or Rejected.
    condition.png
  5. If Yes, the following will execute
    Yes
  6. And if No, then the below
    No

That’s it. Let’s see it in action!

Approval Process

  1. Let’s say Priyesh has created a Request record in Dynamics
    simpleRequestRecord
  2. As I submit this request, an Email from Power Automate goes out to Kuldeep asking for approval. And right on the email itself, he can chose to Accept/Reject
    approvalReceived
  3. Let’s say the request was Accepted
    responseSubmitted.png
  4. The request will be Approved.
    approvedMessage.png
  5. And in Dynamics, the status of the record will be changed to Accepted as defined in the conditions.
    acceptedRecord.png

Hope this quick tutorial helps!

Update Price feature in D365 PSA v3

Typically, your costs for your clients go up by a certain percentage (%). It’s a standard practice to update the entire Price List consistently as and when there’s an increase.

This is a great feature to update the entire Price List by a defined % and then reflect this in the Estimates in your Project in PSA. Let’s take a look –

Scenario

Let’s say your original SalesPrice for a Developer role is $50
scenario1.png

And the same is reflected in the Estimates in a Project as well. Based on $50 for Developer i.e. resource Priyesh Wagh will spend 12 hours. So 12 * $50 for that week of 1st Dec is $600
originalSalesApplied.png

 

Updating Prices in Sales PriceList

Now, there’s an increase you want to apply. With just a simple change, you’ll be able to do so.

Assuming the PriceList in question here is SalesPriceListUS and you want to add a 10% increment to the same. Simply click on Update Prices button as shown below.
originalPrice.png
And specify the % of increment to be applied. Use Negative number to Decrease.
apply10
And there we go, a 10% to $50 is applied to all items as indicated.
scenario2

Update Price on Project’s Estimates

Similarly, to bring the change to the desired Project, look at the Estimates tab on the Project and click on Update Price button to effect the Prices on the table as well.
applyNew.png

And you’ll see the updated prices in Sales time-phase in the Project Estimates
updatedSalesApplied.png

Hope this helps!!

D365 General Tip: Keeping Currency and PriceList in check

In a hurry, you perhaps selected a similar looking Price List on your Quote and you want to change it.

Example: By mistake, I have selected “SalesPriceListINR” and want to select “SalesPriceListUS
salesINR

But when you try to do this, you can’t see the PriceList you want to set. Why is that?

visiblePLs

Currency

That’s because the Currency selected on the record is Rupee (₹) and your PriceList has the currency US Dollar ($)

rupeeSelected

Change it to US Dollar and you’ll see your PriceLists show up.
USDSelected.png
USDSet.png

And try searching your Price Lists again
correctPriceList

Error while changing PriceList

In a typical scenario, if you have child records dependent on the record you are changing, you’ll see this error.
typicalError.png

But as simple as the wordings are, you’ll need to do the needful and make sure there are no Currency dependent records associated.

 

Hope this helps!

 

 

Territories enabled for OOB Hierarchical relationship in Sales Hub

With the 2019’s Wave 2 Update releasing, the out-of-the-box Sales Territory entity has been enabled with Hierarchy settings.

Define Hierarchy

Let’s say you are in Sales Hub and in App Settings, look for Sales Territories on the left-hand menu.

menuNavi

settingMenu

It’ll show up all Territories, open the same and add a Parent territory
Let’s say, I opened Japan, I’ll add Asia-Pacific as the parent of the territory
addedParent

Once I do so, I can see the saved changes using the View Hierarchy button on the ribbon on either the Main Form on the public View.

Note: It won’t immediately appear once you enter a Parent and save, please reload the page.
viewHier.png

actualView.png

 

Please note that this is only for Unified Interface and not available for the classic UI. Also, this is only for the Sales Enterprise license.

Although the feature says it’s only available for Unified, I was able to catch it in classic UI as well. But this is discouraged since we are moving towards Unified UI and classic UI will soon be gone.

Hope this quick tip helps! 🙂

Set Lookups in Xrm.WebApi D365 v9 correctly. Solving ‘Undeclared Property’ error

Using Xrm.WebApi needs you to be careful with the field names and what to use when. Especially, when you are dealing with Lookups.

One of the most common errors you’ll come across is the one like below – “An undeclared property (fieldname you entered) which only has property annotations in the payload but no property value was found in the payload.

error

This is confusing as to what needs to be put in while setting the lookup.

If you have done the below, entered the name of the field which is all in small caps  –

object[“msdyn_resourcerequirement@odata.bind”] = “/msdyn_resourcerequirements(<Guid>)”;

This will result in the above error!!!

 

You’ll need to put the Schema name of the lookup field instead and this should solve your problem –

correctName.png

and the code should look like this –

object[“msdyn_ResourceRequirement@odata.bind”] = “/msdyn_resourcerequirements(<Guid>)”;

And this should totally work for you!!

Hope this helps! 🙂

Create your own Insight Cards with Power Automate in Sales Insights

Sales Insight’s cards are not just restricted by what is provided by Sales Insights for your Org, you can make your own using Power Automate too. Here’s how –

Requirements

These features aren’t free under Free Features of Sales Insights. Sales Insights license is for $50/user/month. More info on licensing here – Sales Insights Licensing

For free features, only pre-defined Insight Cards show up. You don’t get to create your Cards. To try this feature, you can create a 30-day Sales Insight trial.

Scenario

Let’s say you have a custom field on the Account called as Renewal Date which holds a Date of renewal for an account. And you want to create an Insights card to show up whenever this date is within 5 days –
fieldOnForm

Create a new Insights Card using Power Automate

Let’s say you have Sales Insights already setup in your Org and you have moderate knowledge of Power Automate (formerly known as Flows)

  1. Navigate to Sales Insights settings in Sales Hub > Global Settings > under Assistant Studio, look for Home and you’ll see a button to Create a new Insight card.
    navigateToCards.png
  2. Since our requirement is a pretty common one and Power Automate has a template for it already, you can select one or even start from scratch.
    template
  3. Make sure all the permissions are correct and you’re set to modify a Power Automate Template (or create from scratch)
    permissions.png
  4. Let’s say you are making this run on a daily business during your non-business hours.

Little Tweak to store a Reminder Date in D365

I wanted to have a custom reference of the Reminder Date in my own way in D365 instead of making the Power Automate query more complex.
I’ve created a Calculated Date field for RenewalReminder to store date of 5 days before the Renewal Date and this will be maintained for all records.
renewalDateField
So that the field stores 5 days prior to the Renewal Date
fieldValue.png
(I’ve hidden it away in actual implementation later on)

In the past, I’ve implemented a similar scenario to store current date used for views in D365, reference Blog: Store ‘Today’s Date’ in a field to use in workflow conditions in D365 CE

Design Power Automate

Since we’ve chosen a template to get a reference from, feel free to remove/modify whatever you need to –

  1. Now, I want to Flow to be triggered every day at UTC midnight
    flowPart1
    Details: Every midnight, fetch me Accounts where I RenewalDate has passed so that selective Accounts will be queried, and then I want to create cards for those accounts in the next step.
    And I’m only comparing the RenewalReminder field value to the current date since it will run everyday
    dateConfig.png
  2. In the final step, for Each account, I’ll create a Card with the Account’s details which the user needs to see.
    createCard.png
    I’ve set some properties which are quite self-explanatory. I’ve made the Open button on the card to open the record itself.
    And I’ve also made the card to show up only until the Renewal Date. (Maybe setup a separate process for Accounts past renewal date)

    And that’s that! Your Power Automate is ready to create Insight Cards which remind you of an upcoming renewal

Seeing it Run

Now, every day when the Power Automate runs, it will create Insight cards for you and they’ll appear as you’ve configured them. In this case, For Alpine Ski House account, the Renewal Date is 20th Nov, so the card has started showing up since 5 days before the Renewal Date (Date stored in RenewalReminder for referencing, you can choose your own way to do so in Flows)
cardShowUp

Even in your Dashboards, since you’re the owner of the record and it’s set to show only to the owner, you’ll see it and clicking on the Open button will open the Account record itself
clickOpen.png

Hope this helps!!

Import multiple Users in Office 365

One of the common asks to import multiple users in Office 365 is to be able to create multiple users in most efficient way possible.

Here’s a quick guide to do so using Import multiple users feature in Office 365 Admin Center.

Download Template for Importing Users

  1. Let’s say you are in the Admin Center using portal.office.com. Under Users, You’ll find a button to Add Multiple Users
    addMultipleButton
  2. And the feature let’s you download a template with some sample data in case you’re unsure of what to enter.
    downloadTemplate.png
  3. Once downloaded, you’ll get the Excel in your system
    downloaded
  4. Now, you’ll see some sample data which you can simply delete to add your actual data.
    sampleData.png

    deleteSampleData.png

  5. And let’s say, your data looks like this. I’ve added Kuldeep Gupta and Subhash Mahato, 2 users with some info.
    sampleData

Import Back into O365

Now, we are set to import this in O365.

  1. On the same feature, look for Browser button to import.
    browserExcel
  2. Click Verify to validate the info entered for any errors. Once verified, you can click Next.
    verify
    clickNext.png
  3. On the next step, I’ll assign licenses and proceed by clicking Next.
    assignLicenses
  4. Once the processing is done, users will be added
    importCompleted
  5. And you’ll see 2 new users in O365 with the selected licenses
    2newUsers.png

Hope this was easy! 🙂

 

Viewing Emails as conversations on the Activity Timeline in D365 CE

When you have Timeline and you actually use it to check related Activities, won’t it be really cool to see which emails are in a chain? Like which ones are a part of the conversation?

Well, that’s exactly what this little but extremely beneficial feature let’s you do.

Now, can you tell, by just looking at the below Activities that have come in and arranged sequentially (traditionally)?

distinctEmailViews

In the pic above, they are all a part of the same email chain but have come at different times so appear distinct and you can’t easily make out that they actually are a part of the same email conversation.

So now, you can now view Email activities as conversations on the Activity Timeline!

Personal Settings

  1. Open your Personal Settings in D365 CE and go to Email tab as shown below. Look for ‘Show emails as conversation on Timeline‘ feature and turn it on.
    setting

Viewing Emails as Conversations

Now, it’s pretty easy to look at activities that are a part of the same email conversation. And they are denoted by a visual cue that indicates they are chained together –

inConversationEmails.png

Note: This feature is available only on the Unified Interface and won’t be available on the Timeline on the classic UI.

 

Hope this quick tip helped!

A manager is required for non-project time entries, absence, and vacation error in D365 PSA v3

In PSA v3, there occurs a scenario where Resources (Users) have to enter about their absenteeism and they’re not able to submit the request successfully on the Time Entry grid.

Error while Submitting Absence/Vacation & Non-Project Time Entries

  1. Typically, when a Resource has to make an entry for Absence but doing the below
    absenceTypeEntry
  2. And then clicking on Submit.
    submittingTE.png
  3. But, doing so gives an error!
    errorMessage.png

Let’s look at what was missing in readying the system for using PSA for the Resources –

Adding Manager for a Resource

Evidently from the error message itself, a Manager is required to approve the non-project time entries. Here’s how you can set it up!

  1. In PSA, it is required that ‘Manager’ is set for a Bookable Resource to be able to submit an absence/vacation/non-project time entry. Quite logical.
    So, In User record (associated with the Bookable Resource record of the actual user), the Manager should be assigned.
    missingManager.png
  2. Like below, if there’s a manager present, the Resource should have no trouble submitted non-project/absence Time Entries.
    managerAdded
  3. And once this is set, the entries should be submitted without an issue like below –
    entrySubmitted.png

What can the Manager do?

  1. Once this type of Time Entry has been submitted, the Manager can see it under Approval entity in their PSA under Absences/Vacations for Approval
    approvalArrived

Hope this was helpful!