0
ロケーションの内容を表示するためにGeneric Inquiryを作成しました。Webサービスエンドポイントを介した汎用照会のフィルタリング
GI Tables Setup GI Relations Setup
条件
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>();
我々はこれにフィルタ条件を追加しようとするとしかし、我々は、エラーを取得するには
Location = new StringValue { Value = "OZRECV" }
を返し、エラーが返され、私はそれが直感に反する聞こえる知っているが、取得するために
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 ---
Gabriel、私はコードをPutに変更し、エントリのリストではなく最初のエントリのみを返しました。 –
さらにGIでGetListを実行すると、すべての結果が返されますが、問題はフィルタリングできません。 –
はい、1つのエンティティが返されますが、エンティティには反復可能な配列であるDetailsプロパティがあります。 – Gabriel