次の方法で共有


承認テスト ライブラリのクエリ

クエリ クラスはさまざまな条件に基づいて対応するエンティティのインスタンスを見つけるために使用する Fluent アプリケーション プログラミング インターフェイス (API) を提供します。 クエリ クラスは検証シナリオでよく使用されます。 通常それらは詳細と一緒に使用されます。

名前付け規則

AtlQuery<ModuleName><EntityNamePlural>

この命名規則で:

  • <ModuleName> はオプションで、メイン メニューのモジュール名に基づいています。 ただし、短いテスト コードをサポートするために、短いバージョンまたは省略形を使用する必要があります。
  • <EntityNamePlural> はエンティティ名の複数形です。

AtlQueryWHSLoadLines

AtlQueryInventTransferOrderLines

実装

クエリ クラスは、すべてのクエリに共通の AtlQuery クラスから継承します。

Fluent セッター

クエリ クラスは、クエリの範囲を指定するために Fluent セッター メソッドを提供する必要があります。

loadLine = data.whs().loadLines().query().forSalesOrder(salesOrder).single();

クエリは 2 種類の Fluent セッター メソッドを許可します、for メソッドと with メソッド:

  • for – これらのメソッドは構成または集計関係の親として機能するクエリのフィルターに使用されます。 たとえば、販売明細行クエリは、特定の販売注文に対して販売明細行をフィルターする for メソッドを公開しています。
  • with – これらのメソッドはクエリの他のすべての範囲で使用されます。

名前付け規則

for<QueryRangeName>

with<QueryRangeName>

この命名規則では、<QueryRangeName> はその範囲が適用されるフィールド名です。

loadLine = data.whs().loadLines().query().forLoad(load).withInventQty(10).single();

transferLine = data.invent().transferOrderLines().query().forTransferOrder(transferOrder).withInventDims([batch1]).single();