CDS視圖篇 2

核心數據服務 (CDS)

公司但願使用 SAPS/4HANA 核心數據服務 (CDS) 視圖技術。須要學習 CDS 視 圖的概念和結構以及語法 。數據庫

 

  1. ● 核心數據服務是用於業務實體的 SAP 戰略建模方法。
  2. ● SAP HANA 視圖經過腳本式 ABAP 代碼建立。
  3. ● CDS 對於更多用例(例如,搜索)而言是高度靈活的 。
  4. ● CDS 是腳本式的(含有擴展的 SQL)。
  5. ● CDS 與 ABAP 徹底集成:生命週期、權限管理等。


ABAP中的 CDS 支持代碼下推到數據庫層,經過ABAP 中的 「視圖實體」 簡化關係數據架構

模型的消耗。如今,您能夠從語義上定義集成到 ABAP 字典的 DDL 源對象中的豐富數據模型 。函數

經過開放式 SQL 中未提供的擴展視圖功能(如 UNION、UNION ALL和關聯)支持代碼下推。學習

 

支持一個視圖使用另外一個視圖的嵌套視圖。能夠在 WHERE 子句以及表達式中定義和使用視圖實體優化

之間的關聯。 CDS徹底集成到 ABAP基礎架構,同事可在視圖實體上使用開放式 SQL。spa

ABAP CDS 可用於全部數據庫 。與 ABAP 字典中定義的現有數據庫表和視圖相比 ,這些模型的實體提供 了加強訪問功能 ,使其可優化基於開放式 SQL 的應用程序。htm

 

DDL 源和 CDS 實體的最佳部分是它們可由 ABAP 進行管理。這表示 CDS 實體的整個生命週期由 ABAP 變動與傳輸系統 (CTS) 進行控制。對象

 

 

 

Eclipse中的 ABAP 新功能包括:blog

  1. DDL 源文件建立
  2. 定義視圖
  3. 數據源鏈接
  4. 聚合和 SQL 函數
  5. 語義豐富的數據模型
  6. 可擴展性

數據定義語言 (DDL) 語法規則 生命週期

表 1: 數據定義語言 (DDL) 語法規則

關鍵字
  • 必須所有大寫、所有小寫或小寫但首字母大寫 。不容許其餘大小寫混合形 式。
名稱
  • 名稱不區分大小寫 。
  • 名稱最多能夠有 30 個字符。
  • 名稱可由字母、數字、下劃線 (_) 和斜線 (/) 組 成。
  • 名稱必須以字母 、斜線或下劃線開頭 。根據關聯的命名規則 ,建議使用下劃 線。使用句點 (.) 分隔含有多個部分的名稱 。
  • 含有多個部分的名稱能夠是路徑 、具備前綴數據源的列和註釋 。
  • 如下 CDS 關鍵字不得用做名稱 :ALL、AND、AS、ASSOCIATION 、 AVG 、CASE、CAST 、CROSS、COUNT、DISTINCT 、EXISTS 、EXTEND、FROM、FULL、GROUP、HAVING 、INNER、JOIN、KEY、 LEFT、MAX、MIN、NOT、NULL、ON、OR、ORDER、RIGHT、SELECT、SUM、UNION、VIEW、WHEN、WHERE
文 字
  •  數字文字必須始終完整指定 ,若有須要可以使用小數點 (.) 做爲十進制分隔 符。字符文字必須括在單引號 (') 中。
註釋
  •  兩個斜槓 (//) 或兩個連字符 (--) ,直到該行結束。使用字 符 /* 和 */ 括起行內或跨多個行的註釋 。
分隔符
  • 可以使用分號 (;) 結束語句。這是可選的。
保護字
  • 特定關鍵字受到保護 ,沒法用做自定義名稱 。
  • 沒法使用的預留名稱在數據庫表 TRESE中指定。

 

 

 

注意:

● 因爲一部分 CDS 源代碼當前僅包含一個語句 ,所以語句後的結束分號是可選的 。

● SELECT、select和 Select均是指定關鍵字的有效方式 。另外一方面,seLect 和 SeLect會生成語法錯誤 。

● MYVIEW、myview和 myView均表示同一操做數 。

● 0.5 是有效的數字文字 ,但 .5 不是。

有關常規 ABAPCDS 語法規則的詳細信息 ,

可參閱此處:https://help.sap.com/ abapdocu_750/en/abencds_general_syntax_rules.htm

 

語言要素 含義
DEFINE VIEW ...AS 定義 CDS 視圖
WITH PARAMETERS 定義 CDS 視圖的輸入參數
SELECT [DISTINCT] ...FROM CDS 視圖的 SELECT 語句
INNER JOIN ...ON SELECT 語句的內部鏈接
LEFT|RIGHT OUTER JOIN ...ON SELECT 語句的外部鏈接
ASSOCIATION ...TO ...AS ...ON 在 SELECT 語句中定義路徑表達式的關聯
1: 路徑表達式的屬性
INNER ...WHERE 路徑表達式的屬性
LEFT OUTER ...WHERE 路徑表達式的屬性
KEY ...AS SELECT 清單要素
$EXTENSION.* SELECT 清單中的加強要素
WHERE ... SELECT 語句的 WHERE 子句
GROUP BY ... SELECT 語句的 GROUP-BY 子句
HAVING ... SELECT 語句的 HAVING 子句
UNION ALL ... SELECT 語句的 UNION 子句
   

 

數據定義語言 (DDL) 語法規則 - 表達式

運算符 含義
MAX、MIN、AVG、SUM、COUNT SELECT 語句中的聚合表達式
+、-、*、/ 運算符
CASE、WHEN、THEN、ELSE、END 條件區分
CAST SELECT 語句中的轉型表達式
=、<>、<、>、<=、> =、BETWEEN、LIKE、 IS NULL、NOT、AND、OR SELECT 語句中的關係表達式
   

數據定義語言 (DDL) 語法規則 - 預約義函數

函數 含義
ABS、CEIL、DIV、DIVISION、FLOOR、 MOD、ROUND SELECT 語句中的數字函數
CONCAT 、CONCAT_WITH_SPACE 、 INSTR 、LEFT、LENGTH、LPAD 、LTRIM 、 REPLACE、RIGHT、RPAD 、RTRIM、SUBSTRING SELECT 語句中的字符串函數
BINTOHEX、HEXTOBIN SELECT 語句中的字節字符串函數
COALESCE SELECT 語句中的合併函數
UNIT_CONVERSION、CURRENCY_CONVERSION、DECIMAL_SHIFT SELECT 語句中的轉換函數

DATS_IS_VALID、

DATS_DAYS_BETWEEN、

DATS_ADD_DAYS、

DATS_ADD_MONTHS

SELECT 語句中的日期函數
TIMS_IS_VALID SELECT 語句中的時間函數

TSTMP_IS_VALID、

TSTMP_CURRENT_UTCTIMESTAMP、

TSTMP_SECONDS_BETWEEN、

TSTMP_ADD_SECONDS

SELECT 語句中的時戳函數
   

有關 ABAPCDS 語言要素的詳細信息 ,可參閱此處:https://help.sap.com/ abapdocu_750/en/abencds_language_elements.htm

 

數據定義語言 (DDL) 語法規則 - 關鍵字和附加 語言要素 含義

語言要素 含義
EXTEND VIEW ...WITH 經過 CDS 視圖加強加強 CDS 視圖

有關 ABAPCDS 語言要素的詳細信息 ,可參閱此處:https://help.sap.com/ abapdocu_750/en/abencds_language_elements.htm

相關文章
相關標籤/搜索