FORM 和 PERFORM 中的参数数量不同
Different number of parameters in FORM and PERFORM
我想避免在我的函数中复制粘贴,并想创建一个子例程。
但这失败了。
函数如下(我去掉了不重要的部分):
FUNCTION /foo/bar .
*"----------------------------------------------------------------------
*" IMPORTING
*" VALUE(IV_STATIC_PARAMETER_LIST) TYPE WDY_KEY_VALUE_LIST
*"----------------------------------------------------------------------
data selection_table TYPE TABLE OF RSPARAMS.
PERFORM GET_REPORT_READ_PARAMETER
USING IV_DYNAMIC_PARAMETER_LIST
CHANGING selection_table.
我收到此错误消息:
Different number of parameters in FORM and PERFORM (routine:
GET_REPORT_READ_PARAMETER, number of formal parameters: 4, number of
actual parameters: 2)
子例程如下所示:
FORM GET_REPORT_READ_PARAMETER
USING parameter_list TYPE WDY_KEY_VALUE_LIST
CHANGING sel_table TYPE TABLE OF RSPARAMS.
....
ENDFORM
知道为什么 ABAP 认为有 4 个而不是 2 个参数吗?
错误在这一行:
CHANGING sel_table TYPE TABLE OF RSPARAMS
通过键入参数,上述语法无效,“OF
”和“RSPARAMS
”被解释为单独的 CHANGING
参数。
您必须直接使用 table 类型键入参数(就像您对 USING
参数所做的那样)。在这种情况下,它可以是:
CHANGING sel_table TYPE RSPARAMS_TT.
RSPARAMS_TT 是 table 类型的 RSPARAMS(您可以在 SE11 中查看)
我想避免在我的函数中复制粘贴,并想创建一个子例程。
但这失败了。
函数如下(我去掉了不重要的部分):
FUNCTION /foo/bar .
*"----------------------------------------------------------------------
*" IMPORTING
*" VALUE(IV_STATIC_PARAMETER_LIST) TYPE WDY_KEY_VALUE_LIST
*"----------------------------------------------------------------------
data selection_table TYPE TABLE OF RSPARAMS.
PERFORM GET_REPORT_READ_PARAMETER
USING IV_DYNAMIC_PARAMETER_LIST
CHANGING selection_table.
我收到此错误消息:
Different number of parameters in FORM and PERFORM (routine: GET_REPORT_READ_PARAMETER, number of formal parameters: 4, number of actual parameters: 2)
子例程如下所示:
FORM GET_REPORT_READ_PARAMETER
USING parameter_list TYPE WDY_KEY_VALUE_LIST
CHANGING sel_table TYPE TABLE OF RSPARAMS.
....
ENDFORM
知道为什么 ABAP 认为有 4 个而不是 2 个参数吗?
错误在这一行:
CHANGING sel_table TYPE TABLE OF RSPARAMS
通过键入参数,上述语法无效,“OF
”和“RSPARAMS
”被解释为单独的 CHANGING
参数。
您必须直接使用 table 类型键入参数(就像您对 USING
参数所做的那样)。在这种情况下,它可以是:
CHANGING sel_table TYPE RSPARAMS_TT.
RSPARAMS_TT 是 table 类型的 RSPARAMS(您可以在 SE11 中查看)