Create Dataverse Virtual Table from SharePoint List | Power Platform

Now, you can create a Dataverse virtual table by referencing a SharePoint List. This is an easy way to bring in schema from your SharePoint List in use and make it into a Dataverse Table.

Good news is that this also syncs back to the SharePoint List! Let’s see how.

SharePoint List

Let’s say you have a SharePoint List which you want to convert into a Dataverse Table in your Power Platform –

Let’s do this by creating using a Virtual Table which now connects to SharePoint and SQL. Please note that at the time of writing this post, connecting to external data is still in Preview.

Create Table

Here’s how you can create a virtual Table in Power Apps Maker (https://make.powerapps.com) –

  1. Once you are in Power Apps Maker, go to Tables and you can drop down from Create Table menu.

  2. You’ll see and option to Create by connecting to external source.

  3. Now, you have 2 options at this point of writing this blog. One is SQL and other is SharePoint. We’ll select SharePoint for this example. Both also use the connection you are logged in.

  4. Once you select SharePoint, you’ll either be asked to select one of the recently used Sites or if you know the URL of the Site in which your list resides, you can choose the same.
    Refer below that I’m choosing up to the name of the Sub-site in question.

  5. So, you can either select a recently used Site or just paste the URL of the Site which has your List in it.


    OR


  6. Once you are in the desired Site, you’ll see the List under that Site.

  7. Once I select the List, I’ll be asked if I need to change any schema name from the ones identified by the wizard.

  8. Or if everything looks OK, you can simply click on Next. You’ll be given a summary of what Table will be created from your SharePoint list.

  9. It takes a few moments to create this Virtual Table for you with the data from the SharePoint List.
    Once ready, it’ll appear as below with the data and you can start adding your data as well.

  10. Also, the data you add from the Virtual Table is also sent back to the SharePoint List.

  11. This entity / table will be listed as any other Table in the Power Apps Maker with the Virtual type.


Hope this helps!

Thank you!

Environment Assignment settings in Power Platform Admin Center

Environment Assignments and who should be able to create what types of Dynamics 365 CRM / CE / Dataverse environments can now be easily controlled.

You can either let everyone create a certain Type of environment or only enable Admin groups to create environments in Power Platform Admin Center! Let’s see how.

Restricting Users from Creating Environments

You can now restrict which types of Environments are allowed to be created for the type of audience in your tenant –

  1. If you are one of the Global Admins, Power Platform Admins, you have access to the Power Platform Admin Center settings (https://admin.powerplatform.microsoft.com/tenantsettings)
    And you’ll see the below types of Environment Assignments available for you to tweak
    Developer environment
    Production environment
    Trial environment
    Add-on capacity


  2. And in this example, let review and modify the settings for Production types of instances and who should be able to create this environments.
    Every type of assignment will have the below 2 options –
    Everyone
    Only specific admins (Global Admins, Power Platform Service Admins & Delegated Admins)
    Reference Link: https://learn.microsoft.com/en-gb/power-platform/admin/control-environment-creation?WT.mc_id=ppac_inproduct_settings?WT.mc_id=DX-MVP-5003911


  3. Once your preferences are set, just click on Save and the settings will be applied. Let’s see in the next section how this works.

Restriction Imposed

Here’s how a User will be restricted when they try to create the Types of environments when they are not part of the Admin Groups –

  1. Although, every user will get an option to Create using the Create button and select a Type of environment. When a User selects a Type, in this case Production

  2. And when they click Next, and enter further details in order to create the environment, they’ll see this error message.

  3. And to validate, you can look at the Roles in Microsoft 365 Admin Center under Users as to what Roles they have been assigned with.

Hope this helps!

Exchange Online Mailbox License Error | Exception Missing Exchange License

In case you are setting up your M365 and setting up Exchange Online in the process, your Email URL is: https://outlook.office365.com/mail/

But, you see the below error which reads as

err: Microsoft.Exchange.Clients.Owa2.Server.Core.OwaUserHasNoMailboxAndNoLicenseAssignedException


No License Exception

Here’s why you see the Exception.

  1. If you open the User record in the Microsoft 365 Admin Portal, you’ll see that Microsoft Exchange Service is not seen in the list of Services.

  2. Now, let’s procure a trial for Exchange Online or any of the E3 / E5 plans which you plan to purchase based on your requirements. They have Exchange Online services available which will enable your Exchange Online mailbox.
    In this example, I’ll start a trial because I don’t want to buy for Enterprise purposes for the sake of this example.


  3. Now, once I started this trail. And if you see the comparison chart above, you could even opt for other licenses that offer Exchange Online – say, Office 365 E3
    Now, I can see that this license is available for me to assign to the user.


  4. And when I select the above license, I will see the Service available in the list as well.

  5. Save your licensing changes / preferences and let 5-10 mins pass for the services to be applied to the User.
    And once you reload/refresh the Outlook web app, your mailbox will be available or retained (if it was expired on an existing license.)

Hope this helps!

See which form is displayed in Dynamics 365 CRM | [Quick Tip]

At times, it is not clear which form is displayed when looking at a record.

It may seem like Account form is displayed based on what the label says but things could be different.

And you assume it is this form that is being displayed.

But, this is now always the case. So, let me explain!

See Form Name

Here’s how you can see the true form name –

  1. Hover on the tab where Dynamics 365 CRM is opened.
    You’ll see the actual form that is being displayed even if the name under the record Name is shown as “Account”. In this case, it’s the entity name.

  2. Here, the form name displayed is “Account for Interactive Experience”

When does this happen?

  1. This happens if there are no other forms in the App you are using which have been enabled for your Security Role.
    And then there’s no other form left for you to see.

Fallback Form?

  1. The fallback form will take into effect if no other form is enabled for your security role. In my example, the form “Account for Interactive Experience” was in fact enabled for my Security Role and hence, I didn’t see the default “Account” form even though it was ranked higher in the Form Sequence.

Hope this helps!

PSA to PO Upgrade Errors | Resolve by reviewing Upgrade Logs

Since you and your Org are preparing to upgrade from PSA v3 to Project Operations given that you are covered in terms of what licensing you need, the first step is to try upgrading your environments to PO.

This upgrade operations needs to ensure you have clean data in your environment before you could upgrade. Hence, these validations will cause failure in upgrading the PSA on the selected environment.

Let’s see what needs to be done to identify and rectify the failures.

Upgrade Failure

Typically, you’ll see below failure if you are trying to upgrade from PSA to PO in the Power Platform Admin Center –

  1. You’ll see that the installation has failed.

  2. Now you can directly go in Project Service.

Error Logs in Project Service

Now, in Project Service, you can do the below –

  1. You can see the Upgrade Logs and sort the Started field by Descending to make the latest one appear on top.
    You’ll notice a Failure status entry.


  2. When you open it up, it’ll have the details. You’ll see the upgrade entry as shown below. You need to open it.

  3. Once you open this Upgrade Version record as shown above, you’ll need to sort the Steps as shown below to show all the Failure status records first.

  4. Once you open one of the failed ones, you’ll be able to see why the upgrade failed on the Upgrade Step record.


    These error messages are self-explanatory and you should be able to take corrective action by going through them and working to resolve given you have functional knowledge of Dynamics 365 PSA/CRM.
  5. As you resolve the issues as you find them, you should eventually get to upgrading the Project Operations successfully once all data dependent validation issues are resolved.

Hope this helps!

Get the New Teams client for your organization | Teams Admin Center

Here’s how you can enable Users to choose to update to the new Teams if you are a Teams Administrator in M365 Admin Center

So since you are using the current (or old) Teams version,and the option to enable New Teams is not avilable to you, you would see no option to update in this Title Bar of the Teams app itself.

Let’s see how we can enable Teams for the Users organization-wide.

Enable Org-Wide New Teams Update

If you are the M365 Admin / Teams Administrator in your organization, here’s how you can enable the new Teams switch for the users –

  1. Look for Teams in the Admin Centers area.

  2. Once in Teams Admin Center, you can look for Teams Update Policy section.

  3. Given that you don’t want to create a new policy but want to apply this setting Org-wide, you can open the Global policy which is already present by default.
    Once you open this policy, you’ll find the Use new Teams client option and choose Users can choose option.

  4. Once sure, click on Apply. And you’ll be asked for Confirm.



  5. Once you are confirmed, that’s it.

New Teams

Now, here’s how you ensure you are getting the new Teams.

  1. Once you know the Admin has enabled the new Teams for your organization, sign out from Teams.


  2. Now, when you login again, you can see the button appear for you.

  3. Once you click the switch, you’ll get the Get it now button.

  4. If you click on See the full list, here’s the Documentation for the same – https://adoption.microsoft.com/en-us/new-microsoft-teams/
  5. You’ll see the new Tems app show up.

  6. Please note that if you are also part of other organizations, your other orgs will also show up in the same new Teams client.

Hope this helps!

Perform a changeset request in Dataverse connector in Power Automate

You must’ve noticed Perform a changeset request in the Dataverse connector in Power Automate.

Purpose of this Action is to perform batch of available Dataverse connector actions successfully or rollback the batch performed inside this changeset request.

Here’s what it does.

Perform a changeset request

Here’s how to use the connector action

  1. Select Perform a changeset request in the Dataverse connector Actions list.

  2. Now, since this works like a batch of operations to perform all actions successfully or “rollback” operations, you’ll see this working like a Scope but only for Dataverse actions.

  3. You have the below Actions available to perform.

  4. Now, let’s design an example changeset batch here.
    First, I’ll create an Account and then a Contact.

  5. When this Flow runs, for example, if the Contact creation fails, the Account creation too will be rollbacked unlike having these steps outside of the “Perform a changeset request” action.



  6. Please note that the Outputs of the Changeset request itself or even within the steps within a changeset request cannot be captured or referred to in Dynamic Content.

Hope this helps!

Migrate Flow to latest Microsoft Dataverse connector

If you are using the legacy Dataverse connector which has the gray logo and looks like the below.

You can run Flow checker to identify if Power Automate can help you migrate the Flow to utilize the latest connector.

Flow checker message

Here’s what the old Flow looks like –

  1. You would see the below message once Flow Checker suggests you changes –

  2. Once you click on the “Open the migration assistant” link on the suggestion, it’ll pop-up a window to ask if you are ready to allow Migrating the Flow to the latest Dataverse connector.

  3. Once you click on Migrate, it’ll start the migration process and based on how lengthy your flow is – in a few moments your new Flow will be ready.

  4. So, once the migration is completed, you’ll see a message like this.

  5. Once you click on Open the new flow, you’ll notice that the new Flow now has (Migrated) written in.

  6. And once you click on Edit, you’ll see that the Flow step where old Dataverse connector was used has been replaced by the new Connector

Hope this helps!

Resolve Project Operation errors | PSS Error Logs

In case you are new to Project Operations or have recently upgraded from Project Service Automation to Project Operations, and if you are running into some issues, here’s how to identify them

Error

Here’s an example error –

  1. Let’s say you are trying to add Tasks to the Schedule in Project Operations, and you see the below error in a few moments.

  2. Now, if you look at the above error in red, it won’t let you know exactly is the issue. Hence, here’s how you find it. Check the next section.

PSS Error Log

Here’ s how you can get to where the error is –

  1. You can look for the issue in the below section –
    Go to Settings in the Project Operations App.

  2. Then, go to the PSS error logs and you’ll find an entry there.

  3. And once you open it up, you’ll find the issue there. There could be different issues based on what operations you are trying to perform in Project Operations.


Now, based on your knowledge of Error Resolution in Dynamics 365 CRM application, you can work towards solving your errors.

Hope this helps!

Here are some Power Automate posts you want to check out –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate

Identify deprecated JS code in your Power Platform solution using Solution Checker

Recently, you must’ve received an intimation from Microsoft saying that ODATA v2 is now deprecated. See this link: https://powerapps.microsoft.com/en-us/blog/odata-v2-0-service-removal-date-announcement/

And if you are wondering how to go about finding what has been used, you can use Solution Checker to identify deprecated code which should show up like below using your Solution Checker.

Let’s see how we can use Solution Checker!

Running Solution Checker

Here’s how you can run Solution Checker in Power Apps Maker Portal (https://make.powerapps.com/) and see the results –

  1. Given that your solution already contains the JS Web Resources which you want to run Solution Checker on, you can select the Solution and expand Solution Checker to click Run as shown below.

  2. It takes a few moments to Run the Solution Checker solution. You’ll see the spinner as shown below.

  3. Once completed, you can expand the Solution checker and click on View Results.

  4. Once you click on View Results, you’ll see the list of detected anomalies in your JS Web Resources.
    Apart from the suggested JS best practices, you can see the Category Upgrade Readiness to identify the deprecated code being used in your solutions.

  5. Once you click on the Reference link in each of these results, it’ll open up a Pane on the right hand side to show what the issue is

  6. And when you click on Get the complete guide, here’s the link of the same (https://learn.microsoft.com/en-gb/power-apps/maker/data-platform/powerapps-checker/rules/web/avoid-2011-api?WT.mc_id=DX-MVP-5003911) which will give you the below details in Microsoft Learn Documentation –

  7. Now, if you look at the code that is being references in the Solution Checker result, you’ll see the old code (marked with Red Box)being used.
    Instead, you should use the new code (marked with Green Box) to do carry out the newer version of the functionality –

  8. See the next section in this blog to get the details on the deprecation in client side scripting for Power Platform / Dynamics 365 CRM.

Important Deprecations for Power Apps & Power Automate

Here’ are the Deprecated APIs for Power Platform / Dynamics 365 CRM Client Scripting: https://learn.microsoft.com/en-us/power-platform/important-changes-coming#some-client-apis-are-deprecated?WT.mc_id=DX-MVP-5003911

Hope this helps!

Here are some Power Automate posts you want to check out –

  1. Select the item based on a key value using Filter Array in Power Automate
  2. Select values from an array using Select action in a Power Automate Flow
  3. Blocking Attachment Extensions in Dynamics 365 CRM
  4. Upgrade Dataverse for Teams Environment to Dataverse Environment
  5. Showing Sandbox or Non Production Apps in Power App mobile app
  6. Create a Power Apps Per User Plan Trial | Dataverse environment
  7. Install On-Premise Gateway from Power Automate or Power Apps | Power Platform
  8. Co-presence in Power Automate | Multiple users working on a Flow
  9. Search Rows (preview) Action in Dataverse connector in a Flow | Power Automate
  10. Suppress Workflow Header Information while sending back HTTP Response in a Flow | Power Automate
  11. Call a Flow from Canvas Power App and get back response | Power Platform
  12. FetchXML Aggregation in a Flow using CDS (Current Environment) connector | Power Automate
  13. Parsing Outputs of a List Rows action using Parse JSON in a Flow | Common Data Service (CE) connector
  14. Asynchronous HTTP Response from a Flow | Power Automate
  15. Validate JSON Schema for HTTP Request trigger in a Flow and send Response | Power Automate
  16. Converting JSON to XML and XML to JSON in a Flow | Power Automate