ABAP新语法中函数式调用的几种常见写法(to_upper, for, line_exists, xsdbool)
S/4HANA版本的NetWeaver平台上,ABAP已经进化的和现代编程语言很类似了。ABAP可以支持很多“函数式”调用的写法,这种写法让ABAP的写法更简短,也更容易被现代程序员所接受。
本文列举了最常见的几种“函数式”调用的写法,供大家参考。
"1. Variable in-line declaration
DATA(variable) = 'A'. " MOVE 'A' TO variable.
"2. Use build-in function
DATA(uppercase) = to_upper( lowercase ). " TRANSLATE lowercase TO UPPER CASE.
"3. += operation
index += 1. " >= NW 7.54
index = index + 1. " < NW 7.54
" ADD 1 TO index.
"4. Key word NEW to instantiate object
DATA(object) = NEW /clean/my_class( ). " CREATE OBJECT object TYPE /dirty/my_class.
" 5. Key word FOR
result = VALUE #( FOR row IN input ( row-text ) ).
" LOOP AT input INTO DATA(row).
" INSERT row-text INTO TABLE result.
" ENDLOOP.
"6. READ TABLE
DATA(line) = value_pairs[ name = 'A' ]. " READ TABLE value_pairs INTO DATA(line) WITH KEY name = 'A'.
"7. xsdbool to do boolean expression
DATA(exists) = xsdbool( line_exists( value_pairs[ name = 'A' ] ) ).
IF line_exists( value_pairs[ name = 'A' ] ).
" READ TABLE value_pairs TRANSPORTING NO FIELDS WITH KEY name = 'A'.
" DATA(exists) = xsdbool( sy-subrc = 0 ).
欢迎大家补充、提问。
post SAP-Garson
原文链接:https://blog.csdn.net/nkGavinGuo/article/details/120077234文章来自于网络,如果侵犯了您的权益,请联系站长删除!