CRM 2016在ActivityPointer实体上的RetrieveMultiple插件的不稳定行为

时间:2017-11-07 03:33:14

标签: plugins dynamics-crm dynamics-crm-2016

我正在尝试在activitypointer实体上创建一个retrievemultiple插件,以过滤掉持续时间= 999天的所有电子邮件活动。见下面的代码

if (objQueryExpression1.EntityName == "activitypointer")
                        {

                            FilterExpression activityFilter = new FilterExpression(LogicalOperator.And)
                            {
                                Conditions =
                                            {
                                                new ConditionExpression("actualdurationminutes", ConditionOperator.NotEqual, 1438560)
                                            }
                            };
                            //objQueryExpression1.Criteria.AddCondition(new ConditionExpression("actualdurationminutes", ConditionOperator.NotEqual, 1438560));
                            objQueryExpression1.Criteria.AddFilter(activityFilter);
                        }


                        context.InputParameters["Query"] = objQueryExpression1;

当我在活动指针实体的retrievemultiple上注册插件时,插件在“高级查找”中工作正常。模式和“社交标签”中的模式相关的应用程序'实体。但是,如果我转到活动相关视图'在“应用程序实体”中,它显示了所有活动(包括持续时间= 999天的活动)。 同样,如果我转到联系人记录(申请人),它会显示所有活动(包括持续时间= 999天的活动)。

不确定为什么retrievemultiple在某些情况下工作而在另一种情况下不工作。

1 个答案:

答案 0 :(得分:0)

这不起作用,因为在这种情况下CRM使用Rollup message而不是RetrieveMultiple。

Rollup消息无法在PRT中注册。

但是,有unsupported way在PRT中公开此Rollup消息。