How to – Permanently delete users in the Power Platform (Dataverse / Dynamics 365)


To delete the user from Power Platform, we need to enable the following feature – Delete disabled users.

Before enabling this feature we can see the following Views for the Users.

After enabling Delete disabled users, we can see 2 new views added,

  • Users not in Microsoft Entra ID but exist in the environment.
  • Users not in Microsoft Entra ID and soft deleted in the environment.

Also currently we can see 3 users (enabled) in the environment.

Now let us delete the test 1 user from the Microsoft 365 Admin Center.

The deleted user and its data can be restored up to 30 days (soft delete)

Inside Power Platform Admin Center, we can see the user account being disabled (and soft delete state in AD)

If we try to delete the record, we will get the below error that use is present in AD in the state SoftDeleted. Please permanently delete the user in Azure first.

Let us permanently delete the user in Azure AD.

Login to Azure Portal or Microsoft Entra admin center, select Users
>> Deleted Users

Select the user (deleted) and click on Delete Permanently.

On Refreshing the user, we get the message that the user does not exist in the AD, and also user record is now moved to the “Users not in Microsoft Entra ID but exist in the environment” view.

Let us try deleting the user record from CRM now.

This time user records get deleted (soft delete) successfully.

Within the Power Platform Admin Center, we can see the user record moved to “Users not in Microsoft Entra ID and soft deleted in the environment”

Similar to Azure Active Directory or Microsoft Entra, now we get the option to permanently delete users from the Power Platform Admin Center after soft delete.

Get all the details here

Hope it helps..

Advertisements

Entity Id must be specified for Operation – Dataverse / Dynamics 365


We might get the below error while performing the update operation.

This could be if we have not specified the GUID of the record to be updated or if we are using an Alternate Key to update the record, we have not specified the KeyAttributes property.

We either need to specify the Id property or specify the KeyAttributes property

Or in the Entity’s Constructor.

Hope it helps..

Advertisements

ERROR REQUESTING Token FROM THE Authentication context – General ADAL Error (Dataverse / Dynamics 365)


We might get the below error while connecting to the Dataverse Web API using the client ID and client secret.

AADSTS700016: Application with identifier ‘6d8ff73a-27ef-443c-b524-d8b69ae87580’ was not found in the directory ‘w72tk’. This can happen if the application has not been installed by the administrator of the tenant or consented to by any user in the tenant. You may have sent your authentication request to the wrong tenant.

This could be if we have specified wrong Client or App Id.

Check the correct App Id either from Azure you can also refer to the correponding Application User created for it.

Hope it helps..

Advertisements

Free up storage space – Dataverse / Dynamics 365


Recently for setting up a new environment, we created a new sandbox environment and copied the production environment to it. Next, we had to reduce the storage space occupied by this new environment.

We followed the below steps

  • Bulk Deletion Job – Delete Email Messages having Attachments older than 1 month.
  • Bulk Deletion Job – Delete Notes having attachments older than 1 month.
  • Delete System Job with Status as Succeeded.
  • Delete Process Session with Status as Complete
  • For Logs, we deleted Audit Logs
  • Similarly, we can also delete Plugin Trace Logs records.

These steps allowed us to decrease the Database Usage from 110 GB to 65 GB.

And File Usage from 315 GB to 16 GB.

Also, check –

Get all the details here –

https://learn.microsoft.com/en-us/power-platform/admin/free-storage-space

Hope it helps..

Advertisements

Using xMultiple along with User Multiplexing for improved performance – KingswaySoft SSIS Integration Toolkit (Dataverse / Dynamics 365)


Let us continue our previous post, where we observed performance improvements by using User Multiplexing

Now let us try making use of the xMultiple feature (CreateMultiple, UpdateMultiple, and CreateMultiple messages) of the CRM / CDS Destination Component.

We have updated the Batch Size to 100 to trigger the xMultiple

However this time we got the service throttling error, and it took around 17:45 minutes.

Let us try decreasing the batch size to 50 (to trigger xMultiple), keeping the thread the same as 20, and User Multiplexing with 5 Application users.

No throttling warning this time and took around 10:42 minutes.

Now let us try the same setup, for a custom table instead of a standard table.

Here we have run our package to create 20K records, with User
Multiplexing ( 5 Application users), Batch Size 10, and 20 Threads for our custom table named My Table.

It took around 3:04 minutes.

Let us increase the batch size to 100, to get the xMultiple enabled.

It took 1:06 minutes.

Let us set the batch size to 500

It took around 42 seconds.

And with 1000 batch size – 1:04 seconds

We can see huge performance improvements using xMultiple when it comes to a custom table.

So I think to get the performance improvements for the standard table we could stick with Batch Size – 10, Thread10-20, and increase the number of users (Multiplexing).

But for the custom table, we could increase the batch size to either 100 or 500 to make use of xMultiple along with Multiplexing.

Hope it helps.

Advertisements

Step by step – Deleting an existing plugin from Plugin Assembly (Dataverse)


Recently we had a requirement to remove an existing plugin, as that was no more required.

Of course, we can simply disable the step here, but then going forward we might end up with too many such plugins and we will always have an overhead to make sure those steps are disabled, whenever we deploy the plugin to other environments,

As a first step, we can remove the plugin class from the project, either exclude or delete

Here, if we try to update the assembly we will get the error about the missing Plugin Type.

So as a next step, we need to Unregister the plugin from the Assembly through the Plugin Registration Tool.

Now we will be able to update our Plugin Assembly successfully.

Lastly, when we have to move the Solution having this plugin assembly to another environment, we can first remove the same Plugin Type from that environment through the Plugin Registration tool, before importing the solution.

Please refer to the helpful post – https://d365demystified.com/2021/12/19/renaming-or-deleting-a-plugin-in-dynamics-365-crm/

Hope it helps..

Advertisements