Power Automate D365虚拟列OData筛选器错误



我一直在寻找一些关于这方面的文章,但没有看到任何人有这个问题。我们试图引用一个名为"的虚拟字段_ownerid_type";。表达式:_ownerid_type eq'systemusers'但是它返回一个错误。我可以看到该字段在Triggerbody中是可用的,并且已经使用guid执行了类似的过滤器。有人给我指路吗?提前感谢
触发器输出中的虚拟字段
OData Filter Expression

{"错误":{"代码":"0x80040203";,"消息":"分析为回调注册的属性filterexpression提交的_ownerid_type eq"systemusers"时出现异常。目标实体:偶发事件。异常:Microsoft.OData.ODataException:在类型上找不到名为"_ownerid_type"的属性"CallbackRegistration.event"。\r\n位于Microsoft.OData.UriParser.EndPathBinder.GeneratePropertyAccessQueryForOpenType(EndPathTokenendPathToken,SingleValueNode parentNode(\r\nMicrosoft.OData.UriParser.EndPathBinder.BindEndPath(EndPathTokenendPathToken(\r\n位于Microsoft.OData.UriParser.MetadataBinder.Bind(QueryToken令牌(\r\n
位于Microsoft.OData.UriParser.BinaryOperatorBinder.GetOperandFromToken(BinaryOperatorsKindoperatorKind,QueryToken QueryToken(\r\nMicrosoft.OData.UriParser.BinaryOperatorBinder.BindBinaryOperator(BinaryOperatorsTokenbinaryOperatorToken(\r\nMicrosoft.OData.UriParser.MetadataBinder.Bind(QueryToken令牌(\r\n
位于Microsoft.OData.UriParser.FilterBinder.BindFilter(QueryToken筛选器(\r\nMicrosoft.OData.UriParser.ODataQueryOptionParser.ParseFilter((\r\n
,位于System.Web.OData.Query.FilterQueryOption.get_FilterClause((\r\nMicrosoft.Crm.ObjectModel.EdmModelEvaluator.EEvaluateFilterExpression(字符串filterExpression,ODataQueryOptions queryOptions(\r\n位于Microsoft.Crm.ObjectModel.EdmModelEvaluator.EEvaluateFilterExpression(字符串filterExpression(\r\n位于Microsoft.Crm.ObjectModel.CallbackRegistrationService。<gt;c;。cctor>b_50_0(EdmModelEvaluator计算器,字符串testValue(\r\nMicrosoft.Crm.ObjectModel.CallbackRegistrationService.ValideInputEntity(IBusinessEntity实体,ExecutionContext上下文,IFeatureDetailContainerfeatureDetailContainer("}

Power Automate/Flow在涉及查找时返回type属性(此处的查找指标准和多态查找、所有者和客户(。

当直接对Web API执行查询时,不会返回该属性(我不知道他们是否使用了一些特殊的注释来检索它(,但@Microsoft.Dynamics.CRM.lookuplogicalname属性包含表名,在我看来应该检查,而不是type属性。

但是您不能对这两个属性(lookuplogicalnametype(进行筛选。理论上,您可以对关系列进行筛选,检查表的id,例如:

owninguser/systemuserid ne null

但是Web API(如果我正确的话,更多地与OData实现相关(将这种过滤器视为Left-Eouter(而不是Inner Join(,这意味着它还将返回记录实际上归团队所有的行,这使得这种过滤条件变得无用(因为如果我正确理解你在做什么,你只希望案例归用户所有(。

备选方案是使用FetchXML查询,但我不知道有什么方法可以通过您正在使用的操作(When a row is assigned to a user(来执行FetchXML询问

我知道我写的不是你问题的完整答案,但它可以给你一些关于正在发生的事情的背景

最新更新