コンサンプションビューの編集

2. コンサンプションビューの編集

コンサンプションビューの編集

① 以下の内容を参考にアノテーションを編集していきましょう。

アノテーションの種類 内容 値
@AbapCatalog.sqlViewName ABAPディクショナリに登録される、CDSビュー名となる ZCYYMMnnn_s6_1
@AbapCatalog.compiler.compareFilter フィルターの評価の仕方
  • TRUE: The filter conditions are compared and, if they match, the associated join expression is evaluated only once.
  • FALSE: A separate join expression is created and evaluated for each filter condition.
True
@AbapCatalog.preserveKey 参照するテーブルのKeyをCDSビューのKeyとする True
@AccessControl.authorizationCheck ABAPから呼ばれた場合の権限チェック #NOT_REQUIRED
@EndUserText.label CDSビューの内容説明(60文字) 任意
@OData.publish CDSビューをODataとして公開する True

※ODataについては11章で学習します。

② 定義部分(データ取得元テーブル、項目定義)の編集を行います。

変更概要 変更箇所 変更値
data_source_name define view ZCYYMMnnn_SAMP6_1
as select from data_source_name
define view ZCYYMMnnn_SAMP6_1 as select from ZIYYMMnnn_SAMP5_1
as stupay
抽出条件 – where
stupay.class >= 2
項目 {

}
{
//ZIYYMMnnn_SAMP5_1
@UI.lineItem: [{ position: 10 }]
key stupay.student_id,
@UI.lineItem: [{ position: 20 }]
stupay.first_name,
@UI.lineItem: [{ position: 30 }]
stupay.last_name,
@UI.lineItem: [{ position: 40 }]
stupay.teacher_name,
@UI.lineItem: [{ position: 50 }]
floor(decimal_shift(
amount => stupay.amount,
currency => stupay.currency,
error_handling => ‘SET_TO_NULL’
)) as amount
}

一覧画面で用いられるコンポーネント注釈(アノテーション)についてみてみましょう。

@UI.lineItem: [{ position: N }]とは?

一覧画面の表示する項目と順番を設定できます。数字が小さいものがより左側に表示されます。

❏ ビューの確認

このCDSビューは、最終的にFiori画面で利用される「Consumption View(消費ビュー)」 です。

❏ ビューの内容

・学生の基本情報
・クラスの担任教師
・支払金額(円として見やすく加工)をUI表示に適した形に整えて提供しています。
「学生+教師+支払金額」をFioriテーブルとして表示するビュー」と考えるとわかりやすいです。

さらに、「 @OData.publish: true」により。ODataサービスが自動生成され、Fiori Elementsから直接利用できます。

このビューは別途JOINを行わず、ZI2409HUB_SAMP5_1(コンポジットビュー) を参照します。
ZI2409HUB_SAMP5_1 の中で既に「学生情報+クラス詳細+支払金額」が JOINされているため、 Consumption Viewでは必要項目の抽出とUI用調整を行うだけです。

解説(出力データ)

今回のコンサンプションビューは以下のような要件を実現するために作成しています。

  • 出力項目:生徒ID、名、姓、担任、生徒ごとの支払金額の合計(通貨コードは非表示)
  • 出力条件:2組以降の全クラス

金額データは、通貨コードを指定すると自動で外部書式に変換します。
ただし、通貨コードも併せて出力してしまいます。
そのため、上記要件を実現するために関数を使用して書式変更をしています。
また、関数は入れ子(ネスト)にすることができます。

(チェック Ctrl + F2) を押下します。
(有効化 Ctrl + F3) を押下します。

これで、コンサンプションビューが編集されました。


NEXT>> 3. コンサンプションビューの実行

研修の詳細はこちら