SAP ABAP CDS view裡的註解在ABAP後臺是如何被解析的?
我們在ABAP Development Tool裡編寫SAP CDS view,為檢視維護這些以@開頭的註解,同Java Spring裡廣泛應用的annotation一樣,都是一種為development object維護後設資料的方式。
如上圖所示,我維護了五個不同的註解,一旦儲存,這個cds view的原始碼被髮送到ABAP後臺,通過CL_DD_DDL_HANDLER解析,DDL此處是Data Definition Language的縮寫。
這個類的ANNOTATIONS欄位包含了一個內表M_ENTRIES,裡面的內容即代表五個被解析出來的註解。
cds view所有支援的annotation都在這個ABAP介面定義的常量裡了:
if_dd_ddl_annotations
比如下圖的if_dd_ddl_annotations=>AbapCatalog_sqlViewName就代表我在CDS view原始碼裡申明的註解:@AbapCatalog.sqlViewName: 'znaming'
而ABAP Development Tool裡採用文字方式編輯的ABAP CDS view,如何被ABAP後端解析的呢?通過這個CL_DD_DDL_HANDLER~GET_OBJDEF_FROM_SRC方法裡的第163行parse_cds解析。
這個方法是在kernel端實現的,能高效的把文字格式的CDS view原始碼解析成ABAP結構:
如下圖所示:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24475491/viewspace-2671995/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SAP ABAP CDS view 裡 INNER JOIN 和 Association 的區別View
- SAP ABAP CDS view Association 引入的緣由View
- 在 Excel 內使用 ODBC 消費 SAP ABAP CDS viewExcelView
- SAP ABAP CDS view 檢視的 Replacement 技術介紹View
- 如何用ABAP讀取CDS view association的資料View
- 在SAP ABAP裡使用註解@Inject模擬Java SpringJavaSpring
- 如何用ABAP程式碼讀取CDS view association的資料View
- SAP ABAP Netweaver 裡的 ABAP 會話概念會話
- 使用 Excel 讀取 SAP ABAP CDS View 通過 ODBC 暴露出來的資料ExcelView
- 在 Excel 裡使用 ODBC 讀取 SAP BTP 平臺上 CDS view 的資料ExcelView
- SAP ABAP使用CDS獲取系統資訊
- 在 SAP ABAP Gateway 系統上定義後臺系統的 AliasGateway
- SAP CDS view自學教程之二:當SAP CDS view被啟用時,背後發生了什麼View
- SAP SEGW 事物碼裡的 ABAP Editor
- SAP ABAP maintanence view的資料校驗機制AIView
- 什麼是 SAP ABAP 的 include structureStruct
- SAP ABAP Netweaver裡的胖介面(fat interface)
- 如何找到ABAP裡被動態呼叫的update function moduleFunction
- 如何使用 SAP CDS view 中的 currency conversion 功能View
- ABAP webdynpro的view navigation和WebUI的view navigationWebViewNavigationUI
- SAP ABAP的CI/CD解決方案
- 如何讓 ABAP 報表在後臺作業的模式下執行模式
- 什麼是 SAP ABAP 的 SYSTEM_EXIT
- 如何透過 ABAP 程式碼給 SAP OData 後設資料增添註解試讀版
- 如何使用 ABAP 程式消費 SAP ABAP OData 服務
- SAP ABAP Gateway Client 的 ABAP 實現,重用 HTTP ConnectionGatewayclientHTTP
- SAP ABAP 平臺新的程式設計模型程式設計模型
- 在SAP CRM WebClient UI裡開啟ABAP Webdynpro頁面WebclientUI
- 如何修改SAP ABAP webdynpro的背景色Web
- SAP Hybris和ABAP Netweaver裡的DAO(Data access object)Object
- SAP ABAP Netweaver 裡的使用者會話概念會話
- 如何在 SAP BTP ABAP 程式設計環境裡直接呼叫 ABAP On-Premises 系統的 RFC 函式程式設計REM函式
- SAP CDS view自學教程之一:如何測試基於SAP CDS view自動生成的OData服務View
- SAP ABAP FOR ALL ENTRIES 的用法
- 如何基於 SAP CDS view 生成 object pageViewObject
- 如何把一個ABAP檢視新增到SAP GUI的收藏夾裡GUI
- SAP ABAP裡資料庫表的Storage Parameters從哪裡來的資料庫
- SAP CDS view自學教程之八:SAP Fiori Elements裡不同型別的annotationView型別