在ABAP中调用复合子例程?

在ABAP中调用复合子例程?,abap,Abap,可以调用同时具有使用和更改参数的子例程的多个实例吗?像这样: PERFORM FM_CHECK_INPUT: USING INPUT_A FIELD_B CHANGING MESSAGE_A, USING INPUT_B FIELD_B CHANGING MESSAGE_B, ... USING INPUT_E FIELD_E CHANGING MESSAGE_E. 还是必须分别调用每个实例 PERFORM FM_CHECK_INPUT USING INPUT_A

可以调用同时具有使用和更改参数的子例程的多个实例吗?像这样:

PERFORM FM_CHECK_INPUT:
   USING INPUT_A  FIELD_B
CHANGING MESSAGE_A,
   USING INPUT_B  FIELD_B
CHANGING MESSAGE_B,
...
   USING INPUT_E  FIELD_E
CHANGING MESSAGE_E.
还是必须分别调用每个实例

PERFORM FM_CHECK_INPUT USING INPUT_A
                             FIELD_A
                    CHANGING MESSAGE_A.
PERFORM FM_CHECK_INPUT USING INPUT_B
                             FIELD_B
                    CHANGING MESSAGE_B.
...
PERFORM FM_CHECK_INPUT USING INPUT_E
                             FIELD_E
                    CHANGING MESSAGE_E.
我以前在子例程中使用过复合语句,但仅当子例程只有USING或CHANGING语句时,我不确定在USING和CHANGING参数都使用时是否也可以使用复合语句。

一般来说,即使用
,用于重复
左侧的单词,并处理前后的任何单词序列,而不是特定于任何语句(它可以用于数据、执行、调用、翻译和所有其他语句)

例如,以下声明:

AAA BBB : CCC DDD, EEE, FFF GGG.
相当于这3种说法:

AAA BBB CCC DDD.
AAA BBB EEE.
AAA BBB FFF GGG.

(当然,如果您编译这个虚拟示例,编译会失败,因为AAA未知,所以请使用real语句)

是的,它可以工作,但是为什么不试试呢?