选择选项作为FM参数

时间:2018-01-24 22:58:03

标签: sap abap

如何将select-options作为功能模块参数传递?

我有一个带有一些参数的程序,需要将select-options参数传递给Z_FM才能在select语句中使用。

3 个答案:

答案 0 :(得分:1)

在功能模块定义的表格部分,定义一个表格LIKE RFG_RANGES。

您的FM看起来像

require

然后您就可以像使用原始的select-options参数一样使用它。

net

这在用作RFC 的FM中有效 希望这有帮助

答案 1 :(得分:1)

是的,它会转移长度错误。

解决方案是使用辅助表。

DATA t_aux TYPE STANDARD TABLE OF efg_ranges.

t_aux[] = param_range[];

CALL FUNCTION 'Z_MYFM'
  TABLES
    range_param = t-aux.

这应该有用。

问题是select-option根据用于定义select-options的表格字段设置低和高的长度。

rfg_ranges的固定长度为45。

答案 2 :(得分:1)

只是为了分享完整的解决方案。

参数:

SELECT-OPTIONS: p_docs FOR bkpf-belnr.

拨打FM。

DATA taux TYPE STANDARD TABLE OF efg_ranges.

taux[] = p_docs[].

CALL FUNCTION 'ZCRIP_GET_PG'
  EXPORTING
    soc           = p_bukrs
    fecha_ini     = fini
    fecha_fin     = ffin
  TABLES
    documentos    = taux.