如何在 Azure Logic App "Get Files" 操作中为路径执行 OData 查询筛选器?
How to do a OData query filter for a path in the Azure Logic App "Get Files" action?
“获取文件(仅限属性)”操作正在返回 SharePoint 文档库特定目录中所有文件的属性。在检查输出时,我看到 ODATA json 是一个字段:
"{Path}":"Report/xxx/Finalized_Reports/2014/2014_01/"
使用此过滤器查询设置:
我收到此警告:
{
"status": 400,
"message": "Column 'Path' does not exist. It may have been deleted by another user."
}
如果我这样做 substringof('text', {Path})
错误是
{
"status": 400,
"The expression \"substringof('test', {Path})\" is not valid. Creating query failed."
}
substringof('test', ''{Path}''
也给我“表达式无效”错误。
substringof('test', '{Path}')
这给了我这个错误
{
"status": 400,
"message": "The function operator 'substringof' is not supported or its usage is invalid."
}
如果我susbstringof('text', Author)
查询不会失败。所以,这个功能好像是支持的。
目前 SharePoint Online 连接器不支持 OData 过滤器。但是我们可以通过其他解决方案来实现您的要求,我在下面提供了一个示例供您参考。
我们可以先使用“获取文件(仅限属性)”,然后使用“Filter array”进行过滤。
上面截图中item()
的表达式为:
item()?['{Path}']
对不起,我不得不收回我对答案的决定。
同时我找到了解决方案:可以传递的参数不是这个动作的历史输出link中看到的参数。您必须传递的参数是 SharePoint 文档库的 internal field names。
正确的过滤器查询是这样的:
substringof('test',FileLeafRef)
“获取文件(仅限属性)”操作正在返回 SharePoint 文档库特定目录中所有文件的属性。在检查输出时,我看到 ODATA json 是一个字段:
"{Path}":"Report/xxx/Finalized_Reports/2014/2014_01/"
使用此过滤器查询设置:
{
"status": 400,
"message": "Column 'Path' does not exist. It may have been deleted by another user."
}
如果我这样做 substringof('text', {Path})
错误是
{
"status": 400,
"The expression \"substringof('test', {Path})\" is not valid. Creating query failed."
}
substringof('test', ''{Path}''
也给我“表达式无效”错误。
substringof('test', '{Path}')
这给了我这个错误
{
"status": 400,
"message": "The function operator 'substringof' is not supported or its usage is invalid."
}
如果我susbstringof('text', Author)
查询不会失败。所以,这个功能好像是支持的。
目前 SharePoint Online 连接器不支持 OData 过滤器。但是我们可以通过其他解决方案来实现您的要求,我在下面提供了一个示例供您参考。
我们可以先使用“获取文件(仅限属性)”,然后使用“Filter array”进行过滤。
上面截图中item()
的表达式为:
item()?['{Path}']
对不起,我不得不收回我对答案的决定。 同时我找到了解决方案:可以传递的参数不是这个动作的历史输出link中看到的参数。您必须传递的参数是 SharePoint 文档库的 internal field names。
正确的过滤器查询是这样的:
substringof('test',FileLeafRef)