SAP CDS ビューの補助フィルターとは何ですか

SAP CDS Views は、データへのアクセスと操作を容易にするために、SAP S/4HANA システムでデータ モデルとビューを定義するために使用されるモデリング ツールです。「補足フィルター」は CDS ビューの重要な概念であり、CDS ビューに追加のフィルター条件を適用して、ビューから返されるデータを動的に制限できます。この記事では「補助フィルター」の背景や目的、事例などについて詳しく解説します。

背景

SAP S/4HANA システムでは、データが企業運営の核となります。CDS ビューを使用すると、開発者はアプリケーションで直接使用してデータを取得および処理できる柔軟なデータ モデルを作成できます。ただし、場合によっては、特定のコンテキストや条件に基づいてデータをさらにフィルタリングする必要がある場合があり、これが「補助フィルタ」の出番です。

使用

「補足フィルター」を使用すると、CDS ビューに基づいて追加のフィルター条件を定義し、ビジネス ニーズに応じてクエリによって返されるデータの量を動的に制限できます。これにより、特定のシナリオごとに複数の異なる CDS ビューを作成する必要がなく、さまざまなシナリオで同じ CDS ビューを簡単に使用できますが、必要に応じて異なるフィルターを適用できます。

「補助フィルター」の使用法を例を挙げて説明しましょう。SAP S/4HANA システムでの販売データ分析を担当しており、販売注文データを取得するための CDS ビューを作成しているとします。

まず、すべての販売注文データを取得する基本的な CDS ビューを作成しましょう。

@AbapCatalog.sqlViewName: 'ZCDS_SALES_ORDERS'
@AbapCatalog.compiler.compareFilter: true
define view ZSalesOrders as select from sdbarco.sales_orders {
  key sales_order,
  customer,
  order_date,
  total_amount
}

この基本的な CDS ビューでは、特定の状況下で特定の基準を満たす販売注文データのみを返す「補足フィルター」を定義できます。特定の日付範囲内のデータをクエリしたい場合は、次のように「補足フィルター」を定義できます。

@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Sales Orders with Date Range'
define view ZSalesOrdersWithDateRange
  with parameters p_start_date : abap.dats,
                   p_end_date   : abap.dats
as select from ZSalesOrders
{
  key sales_order,
  customer,
  order_date,
  total_amount
}
where order_date between :p_start_date and :p_end_date;

この例では、CDS ビュー「ZSalesOrdersWithDateRange」の 2 つの入力パラメーター、開始日 (p_start_date) と終了日 (p_end_date) を定義しました。次に、WHERE 句で「補足フィルター」を使用して、指定された日付範囲内の販売注文データにクエリを制限します。

この CDS ビューを「補足フィルター」とともに使用すると、実行時に必要に応じて開始日と終了日を渡し、指定された日付範囲を満たす販売注文データのみを取得できます。これにより、異なる日付範囲ごとに異なる CDS ビューを作成する代わりに、同じ CDS ビューにフィルターを動的に適用できます。

要約する

「補足フィルタ」は SAP CDS ビューの重要な機能であり、これを使用すると、さまざまなビジネス ニーズを満たすために、CDS ビューに基づいて追加のフィルタ条件を動的に適用できます。CDS ビュー定義に入力パラメータを導入し、WHERE 句で使用することにより、特定の条件に基づいてデータ フィルタリングを実装できるため、データ モデルの柔軟性と再利用性が向上します。この機能は、SAP S/4HANA システムで柔軟で高度にカスタマイズされたデータ アクセス レイヤーを構築するのに非常に貴重であり、開発者が企業の変化するニーズをより適切にサポートできるようになります。

おすすめ

転載: blog.csdn.net/i042416/article/details/132409568