我找到了以下代码:
FUNCTION /FOO/BAR.
*"----------------------------------------------------------------------
*"*"Lokale Schnittstelle:
*" IMPORTING
*" VALUE(IV_XYZ) TYPE STRING
*" EXPORTING
*" VALUE(EV_RESULT_JSON) TYPE STRING
*"----------------------------------------------------------------------
*-- Initialization
clear ev_result_json.
是否需要clear ev_result_json
?
答案 0 :(得分:2)
是或否
否,因为它是通过值(VALUE(EV_RESULT_JSON))传递的参数,因此其起始值始终为初始值。
如果它是通过引用传递的,则答案可能是是,因为它的起始值是传递的自变量的值,因此它取决于功能模块的算法。
PS:就个人而言,在参数按值传递的情况下,有时我更喜欢在处理开始时添加一个CLEAR,以便使用“跳转”按钮重新启动处理来方便调试;对于通过引用传递的参数,我有时会在“文档”中添加一个CLEAR,以表明未使用输入值。
附录1小时后:由于EXPORTING参数的逻辑并不那么明显,并且由于(尽可能)建议使用ABAP Objects,因此最好将功能模块转换为带有RETURNING参数的功能方法,总是通过值传递,所以不会有任何混乱。
答案 1 :(得分:0)
No
,因为它们将在您退出FM后清除。
对不起,阅读不正确。答案是否定的。因为输入FM后,“出口价值”中没有任何内容。