CDSビューの追加文書いついては以下の内容も参照してください。


Step 1: CDSビュー作成

Favorite PackagesメニューからNew をクリックし、 Other ABAP Repository Object を選択します。

  

2.CoreDATA Services⇒ Data Definitionを選択し、ボタン Next を押します。   

  

3.以下の内容を入力し ボタン Next を押します。

Name = Z_INVOICE_ITEMS

Description = Invoice Items

  

4.再度ボタンNEXTを押します。

  .

5. Define View選択し,ボタン Finish を押します。

  

Step 2: データソース入力

表示されている新しいエディタに以下の内容を書き換えます。

  1. SQL view nameなっているのを ZINVOICEITEMS に書き換えます。
  2. CDS view data_source_nameのところを sepm_sddl_so_invoice_item に書き換えます。

注:SQLビュー名は、データベースに作成されるビューの内部名/技術名です。 Z_Invoice_Itemsは、ABAPで拡張ビュー構築機能を提供するCDSビューの名前です。 ABAPアプリケーションでは常にCDSビュー名を使用しています。

@AbapCatalog.sqlViewName: ‘CDS_DB_VIEW’
[@view_annot1]
[@view_annot2] …
[DEFINE] VIEW cds_entity [name_list] [parameter_list] AS select_statement [;]
 
注釈“ @ AbapCatalog.sqlViewName”は、CDSビューを作成するときに必須です。これにより、データディクショナリにビューが作成されます。
  • cds_entity – ビューの名前。
  • name_list – CDSビューを実行したときに出力に表示されるフィールド名のリスト。.
  • parameter_list – CDSビューへの入力パラメータのリスト.
  • select_statement – テーブルから提供されるSELECTステートメント.
 
 
Step 3: SELECTステートメントを編集する

Step 4: 既存のCDSビューの関連を使用する

 
Step 5: 既存の関連付けしてからフィールドを追加する
  
 
Step 6: CASE分を入力する
case header.payment_status
when 'P' then 'X'
else ' '
end as payment_status

  

 
 
Step 7:  WHERE 条件を入力する
1.WHERE条件を入力
WHERE currency_code = 'USD'

  

2.保存ボタンSave (Ctrl+S) と 有効化ボタンActivate (Ctrl+F3)をクリックする。

   

 
Step 8: 実装のする際、環境によってソースを修正してください。
@AbapCatalog.sqlViewName: 'ZINVOICEITEMS2'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'CDS View for "Use-cds-view" tutorial'
define view Z_Invoice_Items_2
as select from sepm_sddl_so_invoice_item
{
//sepm_sddl_so_invoice_item header.buyer.company_name,
sepm_sddl_so_invoice_item.sales_order_invoice_key,
sepm_sddl_so_invoice_item.currency_code,
sepm_sddl_so_invoice_item.gross_amount, case header.payment_status
when 'P' then 'X'
else ' '
end as payment_status, //* Associations *//
header
} where currency_code = 'EUR'

F8キーを押して、データプレビューでCDSビューを開きます。 CDSビューは次のようになります。

CDSビュー新規作成的更多相关文章

  1. BAPIを使用のODATA作成

    入力: AIRLINE テーブル: FLIGHT_LIST Step 1: TCode: SEGW ⇒新規作成ボタンを押す Step 2: オブジェクト名など入力 Step 3: オブジェクト作成完了 ...

  2. IOSアプリケーション開発環境の構築

    IOSアプリケーション開発環境の要求 1) IOSシステムの構造はそのようになっています: 2) ハードウエアの方の要求: コンピューター a)    デュアルコアCPU b)    8 gメモリ(開 ...

  3. ASP.NET MVC + MySQL で開発環境構築

    from:http://qiita.com/midori44/items/ef7cdd1d37c353e44b5f ASP.NET MVC & EntityFramework によるコードファ ...

  4. 松下 激光位移传感器 API

    一: /* ============================================================================================== ...

  5. db的操作

    '/---------------------------------------------------------------------------------------------- '/ ...

  6. RestTemplate proxy 设置方式

    RestTemplate restTemplate = new RestTemplate(new SimpleClientHttpRequestFactory() {{ setProxy(new ja ...

  7. PMP用语集

    AC actual cost 实际成本 ACWP actual cost of work performed 已完工作实际成本 BAC budget at completion 完工预算 BCWP b ...

  8. CALL TRANSACTION

    概要 SUBMITと違い.トランザクションコードで呼び出すのが特徴. アドオンからの伝票照会やバッチインプットによるSAPへのデータ登録/更新処理にも利用される. なお.呼び出された側から呼び出し元へ ...

  9. ORA错误查询手册

    ORA-00910: 指定した長さがデータ型に対して長すぎます 原因: データ型CHARまたはRAWに対して指定した長さは.2000を超える値または4000を超える値であるため無効です. 処置: 指定 ...

随机推荐

  1. php入门到精通(复习笔记)

    第一章:php语言基础 1,标记风格: ①<?php echo “hello”;?> ②<script language="php">echo " ...

  2. luogu4566 [Vani有约会]雨天的尾巴

    题目 线段树合并的板子题目了,写一写对线段树合并的理解 首先线段树合并就是把一大堆权值线段树合并起来的算法 尽管复杂度看起来并不是非常科学,但是确是非常优秀的\(O(nlogn)\) 主要的写法两种 ...

  3. unbuntu循环登录

    http://www.myexception.cn/operating-system/1707766.html

  4. 利用firebug 查看JS方法, JS 调试

    “DOM” 可以查看变量和方法. “脚本”可以用来调试js方法. 有空总结一下白鹤堂老师的最牛JavaScript.

  5. EJB JPQL语句查询

    JPQL就是一种查询语言,具有与SQL 相类似的特征,JPQL是完全面向对象的,具备继承.多态和关联等特性,和hibernate HQL很相似.   查询语句的参数 JPQL语句支持两种方式的参数定义 ...

  6. Java to Kotlin (1) - 就决定是你了

    2017年,Kotlin的发展可谓十分迅猛,稍微关注it界的人都知道谷歌宣布kotlin成为安卓的一级语言,不过那时候我并没有关注,因为我不是搞安卓的... 哈哈开个玩笑,其实之前也有听说过这个语言的 ...

  7. C# ==、Equals、ReferenceEquals 区别与联系 (转载)

    相关概念 .Net提供了ReferenceEquals.静态Equals,具体类型的Equals以及==操作符这四个判等函数.但是这四个函数之间有细微的关系,改变其中一个函数的实现会影响到其他函数的操 ...

  8. 使用带有字符串的data-ng-bind

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  9. js图片预览(一张图片预览)

    核心思想:无论是一张图片上传还是多图上传,首先我们都需要先获得图片对象. 栗子: <inuput type="file" id="myfile" onch ...

  10. watch、computed、methods的区别

    1. `computed`属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算.主要当作属性来使用,要return出去一个值:2. `methods`方法表示一个具体的操作,主要书写业务逻辑:3. ...