Acumatica 通过Web服务端点过滤通用查询
我们已经创建了一个通用查询,以显示位置的内容,请参见所附图像 条件Acumatica 通过Web服务端点过滤通用查询,acumatica,Acumatica,我们已经创建了一个通用查询,以显示位置的内容,请参见所附图像 条件 INLocationStatus.QtyOnHand, Is Greater Than, 0 结果网格 InLocationStatus, InventoryID, INLocationStatus.InventoryID InLocationStatus, LocationID, INLocationStatus.LocationID InLocationStatus, QtyAvail, InLocationS
INLocationStatus.QtyOnHand, Is Greater Than, 0
结果网格
InLocationStatus, InventoryID, INLocationStatus.InventoryID
InLocationStatus, LocationID, INLocationStatus.LocationID
InLocationStatus, QtyAvail, InLocationStatus.QtyAvail
InLocationStatus, QtyOnHand, InLocationStatus.QtyOnHand
InLocationStatus, SiteID, InLocationStatus.SiteID
InventoryItem, Descr, InventoryItem.Descr
我们已经将其添加到Web服务端点定义中,并可以使用以下代码成功地调用GI
var temp = c.GetList(new OzLocationDetails {}, false).Cast<OzLocationDetails>();
返回的错误是
An unhandled exception of type 'System.ServiceModel.FaultException'
occurred in mscorlib.dll
Additional information: System.Web.Services.Protocols.SoapException:
Server was unable to process request. --->
PX.Api.ContractBased.OperationDoesNotSupportValuesException:
Operation does not support values.
at PX.Api.ContractBased.EntityService.GetList(EntityGateBase gate,
String version, String name, EntityImpl entity, Boolean returnFullEntities,
Boolean ignoreValueFields, PXGraph graph)
at PX.Api.ContractBased.Soap.EntityGate.GetList(Entity entity,
Boolean returnFullEntities)
--- End of inner exception stack trace ---
我知道这听起来有悖常理,但要检索一般查询的内容并检索结果,需要执行
Put()
调用。此调用将返回一个实体,其详细信息属性包含泛型查询返回的所有行。Gabriel,我将代码更改为Put,它只返回第一个条目,而不是条目列表。此外,如果我在GI上执行GetList,它会返回所有结果,问题是我们无法筛选它们。是的,它确实返回单个实体,但实体有一个Details属性,这是一个可以迭代的数组。Gabriel,不确定我是否做错了什么,但它没有返回Details属性。我在c代码中有c.Put(new OzLocationDetails{}),我知道根据Acumtica实例中的当前设置,应该至少返回两行。但是,当我在VisualStudio中查看结果时,我没有看到任何属性的详细信息。请告诉我是什么原因造成的?@ChrisMarshall,你能告诉我你是如何将GI映射到基于合同的端点的吗?
An unhandled exception of type 'System.ServiceModel.FaultException'
occurred in mscorlib.dll
Additional information: System.Web.Services.Protocols.SoapException:
Server was unable to process request. --->
PX.Api.ContractBased.OperationDoesNotSupportValuesException:
Operation does not support values.
at PX.Api.ContractBased.EntityService.GetList(EntityGateBase gate,
String version, String name, EntityImpl entity, Boolean returnFullEntities,
Boolean ignoreValueFields, PXGraph graph)
at PX.Api.ContractBased.Soap.EntityGate.GetList(Entity entity,
Boolean returnFullEntities)
--- End of inner exception stack trace ---