Acumatica-通过REST过滤通用查询

问题描述

尝试使用此通用查询的REST API,尽管希望过滤它们,但我仍能够检索所有记录。

可以使用空正文请求检索PUT {{baseUrl}}/RawDataForReport?$expand=Result的所有数据。

Web endpoint result

当我添加字段Period进行过滤时,它仅显示第一行。

web endpoint field to filter

enter image description here

当我添加Period时,空的请求正文也会显示第一行。

我完全不熟悉Acumatica,将不胜感激任何有用的资源。

解决方法

要使用REST API过滤通用查询结果,您需要将过滤参数添加到GI本身。为了方便起见,您在常规查询中定义了期间过滤器。您可以用相同的方式定义更多过滤器。

您可以在此处了解有关设计GI的信息:https://openuni.acumatica.com/courses/reporting/s130-inquiries-reports-and-dashboards/

另一个选择是使用OData代替REST API。在这种情况下,您将可以使用$ filter参数来过滤数据。

您可以在此处了解更多信息:

https://help-2020r2.acumatica.com/Help?ScreenId=ShowWiki&pageid=36beb9aa-f04d-4f63-a93b-a00b1c315be0

https://help-2020r2.acumatica.com/Help?ScreenId=ShowWiki&pageid=5d97a93d-45e0-466e-ba5e-77e1ccf96643

,

我一直在努力寻找解决同一问题的方法。

我只是借助此堆栈溢出帖子弄清楚了。

Acumatica run Generic Inquiry via REST API

看看最后一个答案(不是可接受的答案)。

基本上,当您在Web Service Endpoint屏幕中定义对象时,可以定义过滤器(使用填充->过滤器)。这些是GI的参数。

您定义的结果与您定义的结果相同。

然后在您的PUT请求正文中传递参数。 例: { “ Param1”:{ “ Value”:“ Value1” }, “ Param2”:{ “ Value”:“ Value2” }

我刚刚在Postman上进行了测试,效果很好。