Using Alternate Key to Upsert\Update using Dynamics 365 for Sales Connector of Infomatica Cloud


To update or upsert a record inside CRM using Alternate Key in Dynamics 365 for Sales Connector we need to define Alternate Key Property of Microsoft Dynamics CRM advanced target properties.

Suppose we have the following alternate key defined in CRM

Here we need to use the Name attribute of the key as shown below

Hope it helps..

How to – Delete solution components from Managed Solution without “Clone Solution” in Dynamics 365


Recently while moving a managed solution from Development to Test, UAT and Production Environment, we realized the if we increase the version number of the solution manually during export and try importing it, we get the option of Stage for UpgradeApplying Solution Upgrade.

This is basically the same option we get when we clone the solution and use it for deleting the component or working with patch solution.

https://nishantrana.me/2016/10/16/how-to-delete-components-from-managed-solution-in-dynamics-crm-2016-without-using-holding-solution/

https://nishantrana.me/2016/09/22/creating-patches-solution-management-in-crm-2016/

So basically wanted to check if we can remove components from solution by simply increasing the version number, instead of cloning the solution.

Created a solution in Dev, added a custom entity with a field named test field.

Exported it as managed and imported in the Test (version 1.0.0.0).


Then removed the field from dev.


And increased the version number to 1.1.0.0 before exporting it as managed.


While importing selected Stage for Upgrade and Overwrite Customizations. Maintain customizations should also work.


After successful import, selected Apply Solution Upgrade.


The solution upgrade was successful.


And it removed the field.


So basically, we do not need to clone a solution explicitly in our Dev, we can increase the version number while exporting and select Stage for Upgrade + Apply Solution Upgrade to remove\delete the components.

Hope it helps..

Advertisements

Fixed – The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object while creating Alternate Key in Dynamics 365


We might get error while creating Alternate Key as shown below.

The CREATE UNIQUE INDEX statement terminated because a duplicate key was found for the object name ‘dbo.sab_fash_transactionheaderBase’ and the index name ‘ndx_for_entitykey_sab_fash_headername’. The duplicate key value is (0000001414).

The reason was because there was already records created for that entity and had the field (alternate key one) having duplicate values. Deleting the duplicate record allowed us to create the alternate key on that field.

Hope it helps..

Advertisements

Error while setting the lookup and publishing the workflow in Dynamics 365


Recently while trying to configure a Team in Assign step we were getting the below error

With following details (not much useful)

The only way we figured out to set that field was to first chagne the Entity in the Assign Drop down and then selecting the team in the lookup dialog bx.

Below we have changed the Entity to Brand (custom entity) from Lead and then changed it back to Lead and then tried setting the team from the lookup dialog box.

We were successful this time.

Or setting the lookup through quick search view instead of opening up the lookup dialog box as shown below

The other issue we were facing was while trying to publish the workflow we were getting the below errorà “The selected workflow has errors and cannot be published. Please open the workflow, remove the errors and try again.”

This we realized in one of the Check Condition steps we had the values repeated for one of the lookup field.

This was because the workflow was imported to the target environment and later the records of the lookup entity that is being referred were deleted and added back which eventually led to 2 duplicate values i.e. same display name and different GUID thing. (1 non-existing in that environment, but still there inside workflow step). Removing it fixed the issue and we were able to publish the workflow.

Hope it helps..

Setting Lookup field in the Dynamics 365 for Sales Connector in Informatica Cloud


Informatica Cloud has recently released new connector for integration with Dynamics 365 named Dynamics 365 for Sales Connector, which uses Web API of Dynamics 365.

Below is how we specify the details of the connection –

Because of lack of documentation for the new connector, while trying to insert a record inside CRM and trying to setup a lookup field we struggled a lot.

Eventually, we realized the format that is required for setting the lookup field.

EntitySetName:(GUID)

i.e.

sab_fash_categories(72e0b837-e060-4a5c-b831-0e8266dd9a56)

Here sab_fash_categories is the EntitySetName of the custom entity sab_fash_item and it is being used as a lookup in another entity.

For the older version of the connector that used OrganizationService, the documentation is available which specifies the following format for the lookups

{SchemaName:GUID} i.e. the way we specify while setting EntityReference field

https://kb.informatica.com/proddocs/Product%20Documentation/6/IC_Spring2017_MicrosoftDynamicsCRMConnectorGuide_en.pdf

ER

Hope it helps..

Limitation of Solution Patch in Dynamics 365


Recently while working with a Solution Patch we came to realize one of its limitation (or feature) which we weren’t aware of.

If we are trying to update a component through the patch, and that particular component has been customized in the target environment ( through default solution in case of managed), the update won’t work on that component.

Let us take a simple example to understand this.

Below we have created a solution with one workflow in it named Test Process.

Now let us export the solution as managed and import it in Test.

Now back in our DEV let us rename the Process and create a patch for it and import it in Test.

https://nishantrana.me/2016/09/22/creating-patches-solution-management-in-crm-2016/

We can see the update in the name after applying\importing the patch.

Now let us go back in our DEV and make some update in the name of the process and import it again in the Test.

We have selected the option of overwriting customizations here.

We can see the update in the TEST after importing the patch.

Now comes the interesting part, in the TEST environment, go to Settings – Customizations and rename the Process. Here we have appended “Updated” in its name.

Now let us import the same Patch Solution back in our TEST with Overwrite selected.

Unexpectedly, we do not see any change, the process is unchanged in the TEST even after importing the patch with Overwrite option. We expected it to be renamed to Test Process Patch Version 1 as it was in the patch solution, instead, it has the suffix Updated to it i.e. the changes that we made directly in the TEST through default solution.

The way we can now update it from DEV is to clone our solution there.

Import it to TEST and apply Solution Upgrade.

Below we can see the new version imported into the TEST and as expected the Process renamed to what it was in DEV.

Hope it helps..