温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

CDS view注解解析 - @Environment.systemField

发布时间:2020-08-08 17:44:01 来源:ITPUB博客 阅读:141 作者:i042416 栏目:数据库

下面的CDS view使用到了@Environment.systemField这个注解,定义了两个参数#SYSTEM_LANGUAGE和#USER。

这个view从CRM物料主数据的产品抬头表COMM_PRODUCT读取product_id, product_type,以及comm_prshtext表里读取产品的描述信息,存储在字段description里。

 @AbapCatalog.sqlViewName: 'zprdtext' @AbapCatalog.compiler.compareFilter: true @AccessControl.authorizationCheck: #CHECK @EndUserText.label: 'Jerry product description' define view Zproductdescription with parameters @Consumption.hidden: true @Environment.systemField: #SYSTEM_LANGUAGE P_Language : syLangu, 
@Consumption.hidden: true @Environment.systemField : #USER p_uname : syst_uname as select from comm_product as product inner join comm_prshtext as _text on product.product_guid = _text.product_guid { key product.product_id, 
product.product_type, 
_text.short_text as description } where product.upname = :p_uname and _text.langu = :p_Language 

当我们在ABAP Development Studio里预览该view时, 我们会被要求给这两个参数指定值:

CDS view注解解析 - @Environment.systemField

在Open SQL里,这两个参数会自动被分别赋以ABAP编程语言里系统变量sy-langu和sy-uname的值。

 data: lt_result TYPE TABLE OF Zproductdescription. SELECT * FROM Zproductdescription INTO TABLE @lt_result . 

这一点我们可以通过使用事务码ST05得到的trace里得到确认:在运行时P_LANGUAGE被赋以了sy-langu的值E,而P_UNAME被赋以sy-uname的值WANGJER.

CDS view注解解析 - @Environment.systemField

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

CDS view注解解析 - @Environment.systemField
CDS view注解解析 - @Environment.systemField
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI