ベーシックビューの編集
2. ベーシックビューの編集
2. ベーシックビューの編集
次に、ベーシックビューを編集してみましょう。
① アノテーションの編集を行います。
② 以下の内容を参考にアノテーションを編集していきましょう。
| アノテーションの種類 | 内容 | 値 |
|---|---|---|
| @AbapCatalog.sqlViewName | ABAPディクショナリに登録される、CDSビュー名となる | ZIYYMMnnn_s1_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文字) | 任意 |
※ビュー命名時の注意点
1.SQLビューとCDS Entityは同じネームスペースを使うため、それぞれ別の名前を設定する必要があります。
例)CDSビュー:ZI_SAMP
sqlViewName:ZISAMP
2.一般的に使われる命名方法を参考にしましょう。(現場によって、命名が変わる場合もあります。)
| 項目 | 技術名称 |
|---|---|
| ベーシックビュー | I_ |
| アグリゲーションビュー | I_ |
| アソシエーションビュー | I_ |
| コンポジットビュー | I_ |
| コンサンプションビュー | C_ |
3.CDS View名は文字数の制限があります。入力は30文字まで可能ですが、26文字を超えてしまうと
「The entity view name XXX(設定名) exceeds the allowed length of 26 characters」という警告メッセージが出力されるため、注意しましょう。
4.一度有効化(Activate)したsqlViewName は変更できません。作り直しが必要です。
(SQL view 既存名 cannot be renamed as 変更名; DDL source is already shipped エラー)
※ポイント
アノテーション(注釈)は、SAPにて事前定義されており、大きくABAP注釈と、コンポーネント注釈の2つに分かれています。
- ABAP注釈は、ABAPで利用する際の情報を追加できます。
- コンポーネント注釈は、OdataやUIなどのコンポーネントを利用する際の情報を追加できます。
③ 定義部分(データ取得元テーブル、項目定義)の編集を行います。
④ 以下の内容を参考に定義内容を編集していきましょう。
| 編集 | 内容 | 値 |
|---|---|---|
| data_source_name | define view ZIYYMMnnn_samp1_1 as select from data_source_name | define view ZIYYMMnnn_samp1_1 as select from zstudents |
⑤ {}の範囲内で「Ctrl + Space 」を押下します。
⑥ 「Insert ALL Elements(テンプレート)」 をダブルクリックします。
⑦ CDSビューの項目が定義されていることを確認しましょう。
⑧ 内容に間違いがないかの確認の為、チェック(Ctrl + F2)を押下します。
⑨ その後、有効化(Ctrl + F3)を押下します。
これで、ベーシックビューが編集されました。
※チェックの段階でエラーが起きてしまう場合には、エラーメッセージが表示されます。 例として、データソース名が間違っている場合を想定してみましょう。