The user cannot write data to this table, only the integration users may write data to this table – Dynamics 365 Project Operations


We configured the Project Operations app in one of our Dataverse Environments, and while creating a Company record we got the below error.

Exception Message: OrganizationServiceFault Microsoft.Xrm.Sdk.InvalidPluginExecutionException: “The user be60d0fd-778e-ee11-be36-00224893a88b cannot write data to this table, only the integration users may write data to this table.” At Mcrosoft.Dynamics.FOCommon.Plugins.Services.ReadonlyEntityService.PreModify(LocalPluginContext localcontext) at Microsoft.Dynamics.FOCommon.Plugins.PluginBase.Execute(IServiceProvider serviceProvider)

Plugin: ExceptionFromPluginExecute: Microsoft.Dynamics.FOCommon.Plugins.ReadonlyEntityPreModify


The error is because the system doesn’t allow creating a Company in the Dataverse / Dynamics 365 Project Operations App. Ideally, it has to be created at the F&O end and integrated with the Dataverse Environment.

Company Concept in Dataverse

The steps to setup / initialize the company data

https://learn.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/data-entities/dual-write/bootstrap-company-data

This was because we had unintentionally installed the dual-write application orchestration package that installs multiple solutions in their Microsoft Dataverse environment, which added the company table.

https://learn.microsoft.com/en-us/dynamics365/project-operations/environment/resource-manual-deploy-dataverse-dualwrite

So one option is to remove the Dual Write solutions installed in that environment.

https://learn.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/data-entities/dual-write/uninstall-solutions

As mentioned, for Dynamics 365 Notes we got the below error, for which we need to raise a Support Ticket.

Luckily in our case, we had just created the environment a few days back, so had the option to Reset it. So we eventually took the path of resetting the environment with the Project Operations app selected.

Hope it helps..

Advertisements

Fix – This portal has multiple website bindings, which will cause issues with the portal (Power Pages)


Recently we updated the Site Details like the Site Name and Site URL of a particular Website (Power Platform Admin Center >> Resources >> Dynamics
365
apps, Select the Website and choose Manage)

After which we started getting the below error message –

“Error: This portal has multiple website bindings. which will cause issues with the portal. Delete extra website binding records for this portal in the attached Dynamics 365 Organization.”

This was caused because of multiple active website binding records.

To fix it, open the corresponding Portal Management
app of the corresponding Dataverse / CRM environment.

Navigate to Website >> Website Bindings

Delete or deactivate the extra binding records leaving just one Active record to fix this issue.

Hope this helps..

Advertisements

Enable / Disable (turn on / turn off) multiple cloud flows – Dataverse


Within the Maker Portal, we can only turn on / turn off one cloud flow at a time.

If we select multiple flows, we do not see that option.

Here we can make use of XrmToolBox’s Bulk Data Update plugin.

Get the required cloud flows to be disabled from the Workflow table having Category as Modern Flow.

Select the required cloud flows (or all flows returned), navigate to the Set State tab, and set the appropriate Status and click on Update records.

Or, from the Advanced Find also we can look for the Processes with the Category as the Modern Flow

And use Activate and Deactivate options (here for a few flows we faced issues while trying to activate even though we used the proper account for doing so)

Hope it helps..

Advertisements

Transitioning from Unmanaged to Managed Solution (Dynamics 365 / Dataverse)


Microsoft has always recommended managed solution(s), apart from the some of benefits that managed solutions offer over unmanaged, Microsoft is also adding features to the managed solution, making it easy for teams to adopt and transition to Managed solutions, like focusing on making the solution import faster and adding ALM-specific features to it.

Let us take a simple example to see it working –

Suppose we have 2 environments, a Test and a Managed environment.

The test environment has 2 unmanaged solutions from different publisher that is already deployed to the target environment as unmanaged.

Source

Target

Ideally, we should be creating 2 copies of production environments, one for creating the new unmanaged solution (s) containing the components to be converted to managed and the other environment where the unmanaged solution (s) will be converted to managed and will be used for testing and validation.

Ref – Dynamics 365 FastTrack Architecture Insights – ALM Transitioning from Unmanaged to Managed Solutions

https://learn.microsoft.com/en-us/shows/dynamics-365-fasttrack-architecture-insights/alm-transitioning-from-unmanaged-to-managed-solutions

Now let us create a new unmanaged solution in the source environment that will combine the components we have in Pub 1 and Pub 2 unmanaged solutions.

Here we can use the wonderful XrmToolBox plugin – Solutions Components Mover.

https://prajapatiamit.medium.com/move-the-components-between-customization-solutions-in-d365-customer-engagement-crm-solution-8f17a1fafb2b

Select source solutions and the target solution (combined) in our case, and click on Copy Components.

Here we have selected all the component types.

Back in our TestEnv, we can see the components of the solution added from Pub 1 and Pub 2 solutions to the combined solution.

Let us export the combined solution as managed.

The other way to create the combined solution would be to “Include all objects” for unmanaged components like custom tables. For managed components, like out-of-the-box tables lead, contact, case, etc, we’d only select the components customized.

Run the below command, to connect to the destination (managedenv) environment.

https://learn.microsoft.com/en-us/power-platform/developer/cli/reference/auth#pac-auth-create

Run the below command, to convert the unmanaged solution to managed.

https://learn.microsoft.com/en-us/power-platform/developer/cli/reference/solution#–convert-to-managed–cm

We can see the managed solution imported successfully to our target environment.

For quick reference –

Unmanaged

Managed

Unmanaged solutions are intended to be used in the development environment.

Managed solutions are intended to be distributed and installed.

Unmanaged solutions can be exported either as managed or unmanaged.

Managed solutions cannot be exported

Components can be directly edited within an unmanaged solution.

Components inside the managed solutions cannot be edited directly. Editing can only be done in the corresponding unmanaged solution or an additional unmanaged solution in dev and then exported and imported as managed in the target environment.

The unmanaged solution can be seen as the source code

A managed solution can be seen as a compiled code.

Deleting an unmanaged solution only deletes the solution container, all unmanaged customizations remain in effect and are applied to the default solution of the environment

Deleting a managed solution removes the customizations from the environment.

   

Benefits

Benefits

Unmanaged solutions allow for real-time customization directly within the environment.

The managed solution secures the solution components in the environment, by restricting the user from making changes or removing components from it.

Developers can make changes on the fly without the need for importing/exporting solutions

Ability to uninstall/roll back. In case of issues or undesired changes, managed solutions make it easier to roll back to a previous version. This can be crucial for maintaining system stability and ensuring minimal disruption to ongoing operations

 

The managed solution supports layering allowing multiple solutions to be installed simultaneously without conflicts.

 

Clearly defined component ownership in the case of multiple publishers/solutions.

 

Improved solution import performance with reduced performance impact on the environment.

Check the below links for more details

https://learn.microsoft.com/en-us/shows/dynamics-365-fasttrack-architecture-insights/alm-transitioning-from-unmanaged-to-managed-solutions

https://learn.microsoft.com/en-us/power-platform/alm/move-from-unmanaged-managed-alm#convert-an-unmanaged-solution-to-managed

Hope it helps..

Advertisements

Failed deleting solution. Solution dependencies exist, cannot uninstall / Remove unmanaged layer– Dynamics 365 / Dataverse


Recently while trying to delete a managed solution from one of our environments, we got the below error.


Failed deleting solution MainManagedSolution. Solution dependencies exist, cannot uninstall.

Click on View Dependencies.


Click on See solution layers


We can see Active Contacts has a dependency on the custom column, and it is part of an unmanaged layer (default solution) in this case.

Click on Remove active customizations

This will delete the unmanaged customization done in the Active Contact view in the environment. (removes the custom column from the Active Contact view)


Trying again, this time we can delete the Managed solution.

Get more details – Remove an unmanaged layer

Hope it helps..

Advertisements

Enable classic editor for build/release pipelines in Azure DevOps


If you see the classic editor option missing, while creating the pipeline, it is because it would be disabled in the organization settings.

To enable it navigate to Organization Settings >> Pipelines >> Settings

After switching off the settings, we can see the classic editor option.

Get more details –

Hope it helps..

Advertisements

Nishant Rana's Weblog

Everything related to Microsoft .NET Technology

Skip to content ↓