1

We have recently migrated Data Exchange Framework (DEF) and also CRM Connect module from 1.0 to 1.4.1.

We have created from scratch new tenant and added pipelines, value mappings, and other DEF related items one by one from old tenant but not by copying items but recreating them as it was suggested by Sitecore.

After all changes, we are not able to sync active records of custom CRM entity anymore. We can only sync inactive records by checking "Exclude Active Filter" in "Read CRM entity" pipeline. If we uncheck this checkbox, nothing is synced at all.

enter image description here

Do you have any idea how to tackle this problem? Or where to look at?

1

Exclude Active Filter is used in order to include/exclude filtering by statecode:

protected virtual ConditionExpression GetActiveConditionExpression()
    {
        var condition = new ConditionExpression
        {
            AttributeName = "statecode",
            Operator = ConditionOperator.Equal
        };
        condition.Values.Add("Active");
        return condition;
    }

It works well with dynamics entities that have this field.

See for contact:

enter image description here

Here is my concern.

Check whether your Wave Crm Entity (see from your screenshot) has this field. If no it should be excluded as you did.

  • We have that field Vlad and also "Active Waves" and "Inactive Waves" views on that entity in Dynamics but still for this entity active records are not synced into Sitecore. When we check "Exclude Active Filter", we can import at least inactive waves but this is not desired. There is no way to sync active waves at all. Any idea @Vlad? – Peter Procházka Jun 12 '18 at 13:23
  • Should the field "statecode" be part of value mapping set or something like that? – Peter Procházka Jun 12 '18 at 13:28
  • if you double click on this field what available values you can see? – Vlad Shpak Jun 12 '18 at 13:47
  • There are only values Active or Inactive for this field. There is however field "Most Recent" which I am suspetious about that might be causing us trouble here. Will investigate further and write back here the results. Thanks so far @Vlad – Peter Procházka Jun 12 '18 at 16:00
0

@Vlad's answer and explanation is definitely great.

In our case we found out two issues at the end:

1) We have discovered that we have left out old tenant "just in case" under Data Exchange folder in Sitecore.

Sync was actually not creating new items under new tenant but was updating items under old tenant.

By coincidence, both tenants had same relative path set under each tenant settings to sync these entities and probably this was the root cause.

Once we deleted items in old tenant, partially everything started to work as expected and part of the active records was synced.

2) Second issue was that we were synchronizing two entities from Dynamics into Sitecore. Both entities had Wave Id as field in their respective Sitecore template. Some of records had same Wave Id (obviously) for different entities. By syncing one entities all active records were synced. By syncing another entity records some appeared to us as not saved as only 7 out of 16 active records were synced. In reality as Wave Id was same this was matched by already synced entity records for first entity. When we renamed field bame from Wave Id to Wave Ref Id, it all started to work. This is probably a bug and will try to create ticket soon to Sitecore Support.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.