Toggle Auto Save for Dynamics 365 CRM environment | Power Platform Admin Center

There have been many changes over the years to the Features / Behaviors which previously used to sit in System Settings in classic Dynamics CRM. Now, that things have moved to the Power Platform Admin Center, here’s how you can change the Auto Save On / Off

Power Platform Admin Center

Let’s see how you can change the Auto Save feature for each Dynamics 365 instance

  1. Go to https://admin.powerplatform.microsoft.com/, in Environments, select the Environment whose Auto Save you want to change – click on Settings.

  2. Expand the Product tab and go to Behavior.

  3. In Behavior settings, you’ll see Auto save which could be On or Off based on the current setting which you can toggle.


  4. Finally, once you change simply click on Save and the bottom right corner which must’ve been highlighted to Save if you changed a Setting.


  5. And that’s it, the records won’t be saved until you deliberately Save upon updating data in the same.

Hope this helps!

Here are some more Dynamics 365 / Power Apps Admin Center posts you might want to check –

  1. Admin Center URLs under M365 – Power Platform, Teams, SharePoint, Power BI
  2. Turn Teams On / Off at Org Level, provisioning users | M365 Admin Center Tip
  3. Convert environments between Production and Sandbox | Power Platform Admin Center [Quick Tip]
  4. Create new Sandbox and copy Production over to it in PowerPlatform Admin Center
  5. New ‘Capacity’ analytics on PowerPlatform Admin Center
  6. Create new CDS Environment and Database quickly from PowerApps Admin Center

Thank you!

Wave 2 2021 Early Access is now available | Opt-in

As per MS Docs, the Key Dates for the Wave 2 Features are as below –

Reference Link: https://docs.microsoft.com/en-us/dynamics365-release-plan/2021wave2/?WT.mc_id=DX-MVP-5003911

Note: Since these are Early Access Features, not all features would necessarily make it to the final Wave 2 2021 release. Kindly try these features in a Sandbox environment only and test the same.

Microsoft Docs for details on Opt-in Features

Dynamics 365 Release Plan 2021 Wave 2 Early Access –
https://docs.microsoft.com/en-gb/dynamics365-release-plan/2021wave2/features-ready-early-access?WT.mc_id=DX-MVP-5003911

Power Platform Release Plan 2021 Wave 2 Early Access –
https://docs.microsoft.com/en-gb/power-platform-release-plan/2021wave2/features-ready-early-access?WT.mc_id=DX-MVP-5003911

Here’s how you can Opt-in

  1. Navigate to https://admin.powerplatform.microsoft.com/ in your tenant and go in one of the Sandbox environments you want to enable the Wave 2 2021 Features on.


  2. Click Update now as seen and enter the name of the Org in the prompt


  3. Once you confirm, the update will start applying. It’ll take about 20 mins to an hour based on how large your environment is.


Check updates

Once completed, you’ll see that the status is now On for Wave 2 2021 Updates Early Access.



Navigate to About in your App selection screen –



And you’ll see that the Updates have been applied



Here are some more Dynamics 365 Power Platform / Administrator related posts you might want to check out-

  1. Recover deleted D365 PowerApp environment using PowerShell
  2. Enable/Disable the need to Approve Email for Mailboxes in Dynamics 365 CRM CE
  3. Create a support Queue in Dynamics 365 CRM
  4. Create new Sandbox and copy Production over to it in PowerPlatform Admin Center
  5. Office 365 Admin: Quickly Enable Multi-factor authentication for users
  6. Turn Teams On / Off at Org Level, provisioning users | M365 Admin Center Tip
  7. Convert environments between Production and Sandbox | Power Platform Admin Center [Quick Tip]
  8. Make On-Demand Flow to show up in Dynamics 365 | Power Automate

Performance Insights for Model-Driven Apps | [Preview]

One of the important aspects of ‘User Adoption’ is also ensure that the Model-Driven App you’ve designed for your Org’s Users stays optimized and ensures the users get the best of it.

Let’s see how we can utilize Performance Insights to help us optimize our Model-Driven App!

Performance (Preview)

Performance Insights is in Preview and here’s how you can access the same.

  1. Go to https://make.powerapps.com/

  2. Now, in your Apps below, select the Model-Driven App you want to view Performance metrics of.


  3. Now, once you open, you’ll see the metrics as below


    Let’s understand how you can read these metrics and take actionable actions on the same.


Understanding the Insights

These insights are categorized based on severity. Let’s see which needs your attention the most –

  1. The Insights can be narrowed based on the timeframe of 24 hours, Unfortunately, I have only 1 Date to show in my case.


  2. I recommend paying special attention to the ones with Warning on them


  3. Now, looking at the first one for example is PluginTraceLog which I left ON while I was working on Plugins on this environment in the App.
    So, if I select the first one


    The right hand pane will detail out what the issue is and what Area to focus on.



  4. Also, if you look at the How to improve part, it’ll point you to the Microsoft Docs for the suggested workaround/action.


    It’ll take you to the Microsoft Docs section of the particular issue in question –


  5. In case you have a new environment and didn’t work inside the App significantly for a particular time frame, you’ll see this message.



    Here’s the complete Microsoft Docs article on the detailed Performance Insights for Model-Driven Apps –
    https://docs.microsoft.com/en-us/powerapps/maker/common/performance-insights-overview?WT.mc_id=DX-MVP-5003911

Here are some more Model-Driven and Canvas Power Apps posts you might want to check out –

  1. HTML Text control in Canvas Power Apps | Power Platform
  2. Disable Recent Records from Dynamics 365 Lookup Control | Model-Driven Apps [Quick Tip]
  3. Advanced Lookup in Model-Driven Apps | Power Platform
  4. New App Designer for Model-Driven Apps | Power Platform
  5. Rich Text Control for Canvas and Model-Driven App | Quick Tip
  6. Form Access Checker in new Power Apps Form Designer | Model-Driven Apps in Dynamics 365
  7. How to add Rating Values to Rating Models in D365 Field Service and PSA
  8. Log Canvas Power App telemetry data in Azure Application Insights | Power Apps
  9. Transition effect on Gallery Items when hovered over in a Canvas Power App | [Quick Tip]
  10. Retrieve Hashtags from Text in a Canvas Power App | Power Platform

Thank you!

Advanced Lookup in Model-Driven Apps | Power Platform

Here’s a super useful feature now available in Dynamics 365 for Model-driven Apps called as Advanced Lookups.

Turn on Advanced Lookup from Behavior Settings

You’ll need to go to the Power Platform Admin Center (PPAC) –

  1. Navigate to Behavior

Using Advanced Lookups

Here’s how the experience will be for you while using Advanced Lookups

  1. Now, once this is enabled, in Dynamics 365 – for example – a Parent Account lookup on Account will work as below –


  2. And it will open this dialog where you’ll see a much wider view of the Advanced Lookup and help your find the record using navigation/filtering options


    Denoted by Red arrow, you can even switch between different available System Views for the selected Table (entity).
    Denoted by Green, you can either create a record on the fly or filter to show only records that you own.
  3. Once you select to switch a view, you’ll be able to select between different System Views.




  4. And once you select a record (Of course you can only select 1 record at a time) and click done, it’ll be done.


    And it’ll be added to the lookup field as follows.


  5. Also, only the views which you’ve selected in your Model-Driven App will appear and not all. For Example, in the Sales Professional App, I’ve selected only a handful of views and not all. So, only those will show up.


  6. Also, please make sure when you select Views and not all, please make sure you do select the Lookup View


  7. Else, if you don’t select this view, it’ll result in Runtime errors which I observed while trying to experiment on what views I can select. Hence, make sure that you select the Lookup Views along with other views which you require.

Here are Canvas Power Apps / Model-Driven Apps which you might like –

  1. New App Designer for Model-Driven Apps | Power Platform
  2. Rich Text Control for Canvas and Model-Driven App | Quick Tip
  3. Form Access Checker in new Power Apps Form Designer | Model-Driven Apps in Dynamics 365
  4. How to add Rating Values to Rating Models in D365 Field Service and PSA
  5. Language format for Whole Number field in Dynamics 365 CE
  6. Custom Help Pages and Guided Tasks for Unified Interface in Dynamics 365
  7. Filter records in a View owned by a Team you are a member of | Dynamics 365 CRM
  8. Show custom ribbon button based on Security Role of the logged in User in Dynamics 365 | Ribbon Workbench in XrmToolbox
  9. Duration field in Dynamics 365 converts Hours value to Days in Dynamics 365 | [Flow Workaround to convert in Hours and Mins]
  10. Find deprecated JS code used in your Dynamics 365 environment | Dynamics 365 v9 JS Validator tool | XrmToolBox

Thank you!

Admin Center URLs under M365 – Power Platform, Teams, SharePoint, Power BI

Here’s a quick summary of the Admin Center URLs of each of these Dynamics 365 / Power Platform Admin Centers –

All Admin Centers under M365 Admin Centers

Here’s the link to all Admin Center under your O365 tenant based on your subscription and your Role in the tenant – https://admin.microsoft.com/Adminportal/Home?source=applauncher#/alladmincenters

Power Apps / Power Automate / Power Platform Admin Center (PPAC) / Dynamics 365

Here’s how you can access the Power Platform Admin Center

  1. http://admin.powerplatform.com/ – It will redirect to –
    https://admin.powerplatform.microsoft.com/

    From here, you can access the D365 Environments

Power BI Admin Portal

Here’s the URL for the Power BI Admin Portal – https://app.powerbi.com/admin-portal

It’ll open up the Admin Portal which looks like this

SharePoint Admin Center

Here’s how you can check the link of the Admin Center for SharePoint – https://cft158-admin.sharepoint.com/

So basically, https://[domain]-admin.sharepoint.com/

Here, domain is the one that you created while creating the tenant. Example: you didn’t add a custom domain and your domain then look like this in your username admin@[cft158].onmicrosoft.com

And it will look like this –

Teams Admin Center

Here’s a link to the Teams Admin Center and it’ll look like below- https://admin.teams.microsoft.com/dashboard

Hope this was useful.

Here are some more D365 / Power Platform Admin related posts which might be helpful –

  1. Turn Teams On / Off at Org Level, provisioning users | M365 Admin Center Tip
  2. Convert environments between Production and Sandbox | Power Platform Admin Center [Quick Tip]
  3. Create new Sandbox and copy Production over to it in PowerPlatform Admin Center
  4. New ‘Capacity’ analytics on PowerPlatform Admin Center
  5. Create new CDS Environment and Database quickly from PowerApps Admin Center
  6. Sign up for a Dynamics 365 Project Operations (Lite Deployment) environment and provision a new instance | Power Platform

Thank you!

There are missing dependencies. Install the following solutions before installing this one: “Active” | Connection References missing in Power Platform Solution

While importing and Unmanaged Solution into another environment, you must’ve come across these error messages like “There are missing dependencies. Install the following solutions before installing this one: “Active”

Now, there are various factors as to why this error is seen. I’ll try to cover one of them. Missing Connection References! Let’s take a look.

So, out of other reasons, one could by that there are some Flow’s Connection References that are not yet added to the Solution when it was exported out.

Error on Import

Let’s say you trying to import this Unmanaged Solution in an environment.

  1. This is your Source Solution which you want to Export and Unmanaged and Import into other environment.

  2. You see the following error on Import.

  3. Now, there are many other reasons why you are getting this error. But, in this case, it’s about missing Connection References from the Source Solution

Adding Connection Reference

In my case, it was missing adding the Connection References in the Source Solution, so here’s what I did –

  1. Go to the Add existing in your source Solution

  2. Look for Connection Reference (preview)

  3. When I add that, I can select what all Connection References are available to add.
    Here, you’ll have to select all those Connection References which you have utilized in your Solution Components.
    To understand more on Connection References, here’s a post by Alex Shlega’s posts on Connection Reference – https://www.itaintboring.com/powerapps/connection-references/

  4. When you click that, it’s added behind the scenes. Now, export the Unmanaged Solution again.



Re-Importing into Source Instance

Now, In your Source Instance, re-import this newest Unmanaged Solution.

  1. Now, importing the 1.0.0.2 version, you’ll see no issues.

  2. And when you click next, you’ll be asked to Create a Connection right away

  3. In this example, I’m supposed to create a CDS (Current Environment) connection. Because that’s what I had selected as a Connection Reference while exporting from the Source Instance.

    Skipping a few intermediate steps. My connection is created as below.

  4. Going back to the Import tab where I was importing the Solution, I’ll just refresh as directed.

  5. Any my Connection is available.

  6. I can just continue to Import as usual and it’ll be imported.

Hope this helps!

Here are some more Power Platform related posts you might want to check out –

  1. Using triggerBody() / triggerOutput() to read CDS trigger metadata attributes in a Flow | Power Automate
  2. Send a Power App Push Notification using Flow to open a record in Canvas App | Power Automate
  3. Count of total CDS records returned in a Canvas Power App connection [Quick Tip]
  4. Call HTTP Request from a Canvas Power App using Flow and get back Response | Power Automate
  5. Implement character length validation in a Canvas Power App | Power Platform
  6. Accept HTTP Requests in a Flow and send Response back | Power Automate
  7. Terminate a Flow with Failed/Cancelled status | Power Automate
  8. Generate Dynamics 365 record link in a Flow using CDS connector | Power Automate
  9. Launch URL on a Data Table Text column selection in a Canvas PowerApp | SharePoint Lists
  10. Get Dynamics 365 field metadata in a Canvas App using DataSourceInfo function | Common Data Service
  11. Call a Dynamics 365 Action from Flow [Bound and Unbound Actions] | Power Automate
  12. Setting Retry Policy for an HTTP request in a Flow | Power Automate

Thank you!!

Convert environments between Production and Sandbox | Power Platform Admin Center [Quick Tip]

In most scenarios, you might need to either –

  1. Convert from Production to Sandbox or
  2. Convert from Sandbox to Production

Converting from Production to Sandbox

  1. Navigate to Power Platform Admin Center’s environments section – https://admin.powerplatform.microsoft.com/environments
    Select the environment you want to convert (you can even navigate inside this environment)

  2. You’ll be asked for confirmation. It states that any services will be unavailable during this conversion.

  3. Process initiated. It takes a few minutes.

  4. In Progress.

  5. Since there’s no refresh button to show you it’s completed, you’ll have to check back in a few minutes in the same link as above – https://admin.powerplatform.microsoft.com/environments
    You’ll find that the conversion must’ve been completed by now.


    Similarly, the opposite holds true while converting from Sandbox to Production! Hope this quick tip helps!

Here are some more Admin/PowerPlatform posts you might want to check out –

  1. Create new Sandbox and copy Production over to it in PowerPlatform Admin Center
  2. New ‘Capacity’ analytics on PowerPlatform Admin Center
  3. Create new CDS Environment and Database quickly from PowerApps Admin Center
  4. CDS For Apps Analytics instead of Organization Insights. Power Platform Admin Center

Thank you!

Send a Power App Push Notification using Flow to open a record in Canvas App | Power Automate

Let’s say most of your users are using custom Canvas Power Apps to follow their business tasks and rely on Canvas Apps for their actions inside Dynamics 365.

There could be scenarios where you want to notify them conditionally of important items that need their attention.

Scenario

Let’s say you have a few users whom you want to tell them that an Opportunity was Won. It could be a team or a single User.

Here’s what my scenario is – A PowerApp Notification is sent to designated User(s) using Flow. When an Opportunity is Won

A Power App Notification is received

And when user clicks he Notification, Canvas Power will open and show that record.

But of course, your implementation/applications for this can be limitless!! This is just my example!

Flow

Here’s what the Flow looks like –

  1. I’m triggering the Flow on Update of the Opportunity. You can use Trigger Conditions to make sure your Flow is triggered only on the update of the Opportunity Win

  2. [Optional, according to my scenario] I want to send this to the Owner of the Opportutnity for now. Of course, it makes sense to send it to others. But let’s keep it simple for now. 🙂
    So, I’m capturing Email address here to be used further down



  3. [Optional, according to my scenario] Further, I’m only checking if the Status was Won. Status Reason = 3 meaning Opportunity was Won


  4. Next, once your condition is satisfied, you can search for this Connector and Action in your Steps in the Flow.


  5. For now, you only have this one Action which you’ll need.


  6. This is how it looks –
    Recipient Item – 1 holds the Email address of the User to whom the notification will be sent to. More can be added by using the + Add new item button.
    Message holds what should be displayed when the notification is received to the end user.
    Open App – Yes/No. Boolean to set if the Power App is supposed to be Opened upon selecting the Notification or not.
    Parameters – You can pass parameters to the Canvas App and use it inside Canvas App. Example: To open the record directly if the App is designed in that way.



  7. First thing you need to do is to create a specific connection for this so that you can use it to open the specific App in Power App.


  8. You can give your Connection a name and then the ID of the App must be entered. Once done, click create.

  9. In case you’re wondering where you’ll get the App ID. You can find the Canvas App ID in the Details section of your Canvas Power App, you’ll only need that to be copied


  10. And you can enter the below options –
    In my example, I’m sending an alert to the email I captured in #2 above.. In your case, you can set this dynamically and add more as well by clicking on “+ Add new item

    In Message, I’ll enter what the notification should read.
    Open App is set to Yes. Means if I click the notification, it’ll open the Canvas Power App whose ID I used above to create the Connection.

    Parameters, this is optional. If you want to open the specific record, you can pass the GUID like this and in the next section, we’ll see how we can open the record using that.

Canvas Power App

In the previous step, remember we sent the Guid as parameter to the Canvas Power App, here’s what you can do to read the record and use it to open the specific record.
Here’s how you can read Parameters passed to the Canvas Power App.
Param(“<ParameterName>”)

I’m using it to Lookup the Opportunity that I passed from the Notification to the Canvas Power App.

In my application, I’m using Lookup to fetch the record and set it to the Item property of the Edit Form control


Some references to use if you’re looking to Capture Parameters and Lookup/Filter data based on your GUID is that’s your implementation.

  1. Pass Parameters to Canvas Power App – https://sachinbansal.blog/2018/06/17/powerapps-canvas-app-how-to-pass-parameter-in-app-url-display-data-based-on-parameter-passed/
  2. Lookup/Filter Records – http://linnzawwin.blogspot.com/2019/12/power-apps-using-common-data-services.html

Working

Let’s say an Opportunity was Won in Dynamics 365.

And the user will receive a notification like this.


Clicking on which, they’ll be taken to the Canvas Power App record which I set in my Canvas Power App.

Hope this was helpful!

Here are some more Canvas Power App posts you might want to look at –

  1. Launch URL on a Data Table Text column selection in a Canvas PowerApp | SharePoint Lists
  2. Aggregate functions in a Canvas Power App | Using on SharePoint Lists
  3. Count of total CDS records returned in a Canvas Power App connection [Quick Tip]
  4. Dependent OptionSets in a Canvas Power App for 1:N related CDS entities | Power Platform
  5. Restore older version of a Canvas Power App | Power Platform
  6. Logged In User details in a Canvas Power App
  7. Implement character length validation in a Canvas Power App | Power Platform
  8. Implementing Exit app, Logout and Confirm Exit features in a Canvas Power App
  9. Number Formatting in a Flow | Power Automate
  10. Generate Dynamics 365 record link in a Flow using CDS connector | Power Automate
  11. Accept HTTP Requests in a Flow and send Response back | Power Automate
  12. Pause a Flow using Delay and Delay Until | Power Automate

Thank you!

Recover deleted D365 PowerApp environment using PowerShell

To get the most important things out of the way, this can be done only within the first 7 Days.

Deleted Environment

At times, you want to delete an environment you don’t need. But you feel you do need it back. Deleting an environment from the Power Platform Admin Center will Soft Delete it and you can get it back within the first 7 days only.

Here’s some info by Microsoft on that: https://docs.microsoft.com/en-us/power-platform/admin/backup-restore-environments#how-long-are-my-manualon-demand-backups-and-system-backups-retained

Here’s what we can do within the first 7 days to get it back using PowerShell!

Get PowerShell Support for PowerApps

Before we are able to Run PowerShell directly to recover, you’ll need to get the support for PowerApps in your PowerShell first.

Refer this full Microsoft Documentation for full details: https://docs.microsoft.com/en-us/power-platform/admin/powerapps-powershell#power-apps-cmdlets-for-administrators-preview

  1. Open PowerShell and remember to Run it as as Administrator.



  2. Here’s how you can install the capabilities

    And then

    Here are the 2 commands which I used in the screenshots above in PowerShell. Below is the screenshot I took from Microsoft Docs so that you can visualize how the commands look
  • Install-Module -Name Microsoft.PowerApps.Administration.PowerShell
  • Install-Module -Name Microsoft.PowerApps.PowerShell -AllowClobber

    or if you don’t have Admin Access, below code can be used in PowerShell
  • Save-Module -Name Microsoft.PowerApps.Administration.PowerShell -Path
  • Import-Module -Name Microsoft.PowerApps.Administration.PowerShell
  • Save-Module -Name Microsoft.PowerApps.PowerShell -Path
  • Import-Module -Name Microsoft.PowerApps.PowerShell


4. Now, let’s say you are all set to execute your recovery process.

Recovery of Environment

Assuming you have completed the above steps, you can now proceed towards recovering the environment.

  1. Now, in PowerShell, run the below command “Get-AdminPowerAppSoftDeletedEnvironment

  2. You’ll be directed to a Login screen. Enter environment credentials there.


  3. You’ll get the Deleted environments’s details as below. In my case, only 1 Deleted environment was retrieved

    Note the first line i.e. EnvironmentName. Copy that GUID

  4. Next, run the below command after you copied the GUID –
    Recover-AdminPowerAppEnvironment -EnvironmentName 35545668-80c2-4d88-811d-b698bb1bcf59 -WaitUntilFinished $true

  5. Once completed, you won’t see any message but the cursor will be on the new line ready. And some details about the success of the operation.

  6. And in the Admin Center, the environment will be recovered.


    Hope this helps!!


    Here are some more Power Platform related posts you might want to check –
    1. Create new Sandbox and copy Production over to it in PowerPlatform Admin Center
    2. New ‘Capacity’ analytics on PowerPlatform Admin Center
    3. D365 Admin Center: Instance Picker Link

Thank you!


Dynamics 365 Solutions’ New Experience in Power Apps, Solution Checker and more

If you’ve recently noticed Settings > Solutions area in Dynamics 365, you’ll see a notification that this has been moved
alertNotification

And you’ll be redirected to Solutions Area in Power Apps –
newArea

Solution Checker

Solution Checker is a helpful feature where it runs a validation of components in the Solution itself –

  1. If you see for your custom Solutions, if you haven’t ever Run a check on the solution, the status will be Hasn’t been run
    checkNotRun
    I’ll zoom it below –
    statusZoomed
  2. Now, you can run the Solution Checker against your entity to find potential issues and add/remove component that matter.
    selectRun
  3. Once the Run starts, it will show the status of Running… for the solution as well as in the Power App ribbon.
    running
  4. Once the run is complete, you can see the time stamp it completed on and also View/Download the results –
    runComplete
    viewResults
  5. You can see the results as below –
    sampleResult1
    So basically, it’ll show what best practices should be followed in order for the Solution to be meeting highest standards of configurations and customization.
  6. Another example from another solution is this –
    removeDebug
  7. Or something like – under Upgrade Readiness category
    upgradeReadiness

    Full details can be found here on Microsoft’s official document – https://docs.microsoft.com/en-us/powerapps/maker/common-data-service/use-powerapps-checker#review-the-solution-checker-report

Solution Export Versioning

Now, every time you export a solution, by default it is set to Managed unlike Unmanaged in the Classic UI.

Also, notice the Version number is auto-incremented to x.x.x.1
defaultBehavior

And in further exports, the version keeps on auto-incrementing
incremented

Hope this helps!!