Parameters 使用SELECT-OPTIONS作为类方法的导出参数?
我目前在使用select选项数据类型调用方法时遇到问题。它给出了错误:Parameters 使用SELECT-OPTIONS作为类方法的导出参数?,parameters,abap,Parameters,Abap,我目前在使用select选项数据类型调用方法时遇到问题。它给出了错误:S\u NETWR与\u NETWR中的形式参数类型不兼容 我不确定需要做什么才能将它们作为参数导出。对不起,我是ABAP的新手。任何帮助都将不胜感激 源代码片段: "set the audit at $50,000 lv_max = 50000. SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001. SELECT-OPTIONS: s_netwr F
S\u NETWR
与\u NETWR中的形式参数类型不兼容
我不确定需要做什么才能将它们作为参数导出。对不起,我是ABAP的新手。任何帮助都将不胜感激
源代码片段:
"set the audit at $50,000
lv_max = 50000.
SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS: s_netwr FOR ekpo-netwr,
s_datvr FOR nast-datvr NO INTERVALS.
SELECTION-SCREEN END OF BLOCK blk1.
*sets last run date from tvarvc
INITIALIZATION.
PERFORM get_lastrun.
CALL METHOD lcl_audit->get_po
EXPORTING
in_netwr = s_netwr
in_datvr = s_datvr
IMPORTING
out_po = it_po
.
get\u po
方法从我的类zcl\u audit\u 02
:
METHOD get_po.
SELECT DISTINCT ekko~ebeln ekpo~netwr ekko~lifnr ekko~ekorg
ekpo~werks ekko~ekgrp t024~eknam
FROM ( ekpo
INNER JOIN ekko
ON ekko~ebeln = ekpo~ebeln
INNER JOIN t024
ON ekko~ekgrp = t024~ekgrp
INNER JOIN nast
ON nast~objky = ekko~ebeln )
INTO TABLE out_po
WHERE ekpo~netwr = in_netwr
AND nast~datvr = in_datvr.
IF sy-subrc = 0.
SORT out_po BY ebeln ASCENDING.
ELSE.
MESSAGE 'No Purchase Orders Found' TYPE 'I'.
ENDIF.
ENDMETHOD.
提前谢谢你 SELECT-OPTIONS
创建带有标题行的内部表格。问题是在使用ABAPOO时不再允许使用标题行。您必须通过将so\u foo[]
传递给方法而不是so\u foo
来除去标题行。括号确保只对表组件进行寻址,而忽略标题行。我看不出您的方法参数是什么类型。但你需要做到以下几点。
符号字符1
选项2
低网络
高网络。
在数据字典中创建此类型的结构,然后创建该结构的表类型,并使用该表类型作为参数的数据类型。我需要在类中定义类型范围,并导出s_netwr[]和s_datvr[]。这解决了问题。谢谢大家 请将代码作为问题的一部分插入,而不是将其粘贴到某个外部网站上,该网站可能会或可能不会将代码保留很长时间……请包括方法签名以及方法正文。我将参数传递为s_netwr[]
和s_datvr[]
,但仍然收到相同的错误。我错过什么了吗?再次感谢。正如我所说,请提供完整的代码,包括方法签名。