管理器活动方名称为空

问题描述 投票:3回答:2

这是一个有趣的问题。我想知道任何设置会产生这种差异或任何解决方法以使其正确。

我们有不同的Dynamics 365 CRM在线实例,但它们都是相同的,因为它们是从Prod刷新的。最近开发的插件代码在整个环境中表现不同。

var organizers = (EntityCollection)appointment["organizer"];
Entity record = organizers.Entities[0];
EntityReference organizer = (EntityReference)record["partyid"];

在约会创建时,后创建异步插件代码读取organizer - 活动方字段之一,但结果非常不同。虽然systemuserid是相同的,但名称来自Dev中的实体引用,但在其他环境中作为null

enter image description here

enter image description here

c# dynamics-crm dynamics-crm-online dynamics-365 dynamics-crm-365
2个回答
1
投票

这确实是一个奇怪的问题。如果您没有刷新PROD中的其他组织,我会说可能在插件注册中注册了不同的图像。

由于代码,环境,插件注册甚至记录ID都相同,因此这个可能值得Microsoft支持票证。

与此同时,解决方法是检查Name是否为null,如果是,则检索Name。这是对系统的另一个调用,但是当您看到Microsoft是否可以提供任何洞察时,将允许您继续。


0
投票

MS认为这是一个错误,但实际上这个上下文差异是在经典的Web UI和UCI之间确定的。仅适用于约会实体,因为某些oData响应已知问题--UCI目标实体缺少格式化值。

我从我的QA团队获得了插件分析器日志,所以我没有意识到他们在UCI中进行了测试,但我在网上进行了测试,因此快速监视显示了重放/调试时的差异。

无论如何,直到MS优先排序并修复此错误,我有以下解决方法来解锁此问题。

#region Workaround for fixing UCI app EntityReference coming as empty string

            if (string.IsNullOrEmpty(organizer.Name))
            {
                ctLog.Log("organizer.Name is empty");
                fetch = string.Format(@"<fetch>
                                          <entity name='systemuser' >
                                            <attribute name='fullname' />
                                            <filter type='and' >
                                              <condition attribute='systemuserid' operator='eq' value='{0}' />
                                            </filter>
                                          </entity>
                                        </fetch>", organizer.Id);

                ctLog.Log("fetch built");
                results = userOrgService.RetrieveMultiple(new FetchExpression(fetch));
                ctLog.Log("results count: " + results.Entities.Count);

                if (results.Entities.Count > 0)
                {
                    organizer.Name = results.Entities[0].GetAttributeValue<string>("fullname");
                }
            }

#endregion
© www.soinside.com 2019 - 2024. All rights reserved.