gpt4 book ai didi

c# - CRM 2016 RetrieveMultiple 用于过滤电子邮件的插件

转载 作者:太空宇宙 更新时间:2023-11-03 12:21:38 25 4
gpt4 key购买 nike

我需要将某些电子邮件标记为 secret 。除非您具有特定角色,否则这些电子邮件不应在 CRM 系统中可见。我在电子邮件实体上创建了一个“ secret ”标志,并在电子邮件实体的 RetrieveMultiple 上创建了一个插件,用于过滤掉所有“ secret ”= true 的电子邮件。

但是,电子邮件记录在“事件”下仍然可见。我在 activitypointer 实体的 retrievemultiple 上创建了另一个插件,但我无法创建一个查询来显示除标记为“ secret ”的电子邮件之外的所有事件(包括电子邮件)。谁能帮我解决这个问题的 linq 查询?这是我创造的

QueryExpression objQueryExpression1 = (QueryExpression)context.InputParameters["Query"];

objQueryExpression1.LinkEntities.Add(new LinkEntity("activitypointer", "email", "activityid", "activityid", JoinOperator.LeftOuter));

objQueryExpression1.LinkEntities[0].EntityAlias = "filteredemails";
objQueryExpression1.LinkEntities[0].LinkCriteria.AddCondition("csiro_confidential", ConditionOperator.Equal, true);

最佳答案

你好,你可以按照下面的方式做,

QueryExpression objQueryExpression1 = (QueryExpression)context.InputParameters["Query"];

if (objQueryExpression1.EntityName == "email")
{
objQueryExpression1.Criteria = new FilterExpression(LogicalOperator.And)
{
Conditions =
{
new ConditionExpression("new_confidential",ConditionOperator.NotEqual,true)
}
};
}
else if (objQueryExpression1.EntityName == "activitypointer")
{
QueryExpression e = new QueryExpression("email")
{
Criteria = new FilterExpression(LogicalOperator.And)
{
Conditions =
{
new ConditionExpression("csiro_confidential",ConditionOperator.NotEqual,true)
}
}
};

var filteredOutEmails = service.RetrieveMultiple(e).Entities.Select(xc => xc.Id.ToString()).ToArray();

objQueryExpression1.Criteria.AddCondition("activityid", ConditionOperator.NotIn,filteredOutEmails);

}
context.InputParameters["Query"] = objQueryExpression1;

Register Your plugin for both email and activitypointer entities, on Pre-operation with Synchronous mode

附上截图enter image description here

关于c# - CRM 2016 RetrieveMultiple 用于过滤电子邮件的插件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46944711/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com