Friday, September 1, 2023

Dual Write Error - Write failed for entity CDS Contacts V2 with unknown exception

In my current project we had to remove the Global Address Book Solution for Dual Write from the Environment. During this process, the following error was occurring on Customer Create.

Write failed for entity CDS Contacts V2 with unknown exception - Field 'Associated party number' must be filled in.\nvalidateField failed on field 'smmContactPersonCDSV2Entity.AssociatedPartyNumber'

The problem was that the plugin "Microsoft.Dynamics.SCMExtended.Plugins.Plugins.LeadPrimaryContactPostCreate: QualifyLead of lead" was still deactivated. This Plugin is about to be disabled on install of GAB (Link) and this Error is what you are facing if you do not enable it afterwards.

Dual Write GAB Plugin to be reactivated


Wednesday, March 30, 2022

D365 CE - Failure 0x80040203 AttributeId is null

Since I have seen this failure now in my last project and also got some questions from others in the past, I just wanted to document our root cause as well here. There are already posts out there but the one I found did not really explaining the issue itself my point of view.

In our scenario, we just enabled Virtual Entities for a PoC in one of our lower test environments (not in dev due to some infra topics) and added a lookup (n:1 Relation) to this Virtual Entity. Afterwards we decided to go without the Virtual Entities due to the current limitations and created a Lookup with same name but to a regular Entity. The problem was that the PoC was not reverted before we deployed the final solution in the test environment which caused this (not really helpful) error message "0x80040203 AttributeId is null".


Wednesday, January 12, 2022

Dual Write - Failed to get template prerequisite sequences

 Today we were facing a strange issue in a Dual Write setup. We just stopped a map for a testing a specific scenario in FO an afterwards, we could not reenable (Sync) the map. The Error message "[Unknown] Failed to get template prerequisite sequences. - The specified item 'xxx' does not exist in the graph" was shown instead of the Sync-Window.

To solve the issue, we just changed the map version to an older instance (e.g. v1.0.0) and afterwards back to our current version (v1.0.1).


Tuesday, August 24, 2021

D365 ClientExtensions Sample - Custom Booking Button

The ClientExtensions feature in the D365 Schedule Board is still a kind of a hidden feature and not really advertised by Microsoft. Maybe because the integration points are not perfectly documented yet and there are still changes ongoing.

In some Insider Program communities, you can find some hints for this feature also from MS colleagues but those are not working perfectly. We discussed our issue with a MS Support Engineer and could solve it. So I just want to share the findings.

The initial approach can be found here (Insider Program access required). This one was not working directly for us since we needed the button to work directly after the Booking item was created (e.g. via Drag&Drop from 'Unscheduled Work Orders' area). In the MS sample, a page reload was required.

To get this fixed, override of Board.RenderHourlyBooking must be used. You can find the full Code Sample on Github.

var sbclientExtension = {

    /** Overrides the required click events in the Booking element */
    override: {
        "Board.RenderHourlyBooking": function (requestContextparentHandler) {
            setTimeout(function () {
            }, 5000);
            return parentHandler.execute();