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結構:
如下圖所示:
要獲取更多Jerry的原創文章,請關注公眾號"汪子熙":
總結
以上是生活随笔為你收集整理的SAP ABAP CDS view里的注解在ABAP后台是如何被解析的?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 全部预付资本是指的什么
- 下一篇: 博德之门2全剧情攻略-第四章