点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
尊敬的专家:
我在以下程序中遇到以下错误,请您提出我必须纠正的建议。
错误:不允许本地SELECT-OPTIONS(FORM例程或GET事件处于活动状态)。 活动)。
报告Y_MESSAGE_SELECT_SINGLE。
表kna1。
kna1-kunnr的选择选项s_kunnr。
数据vi类型kna1-kunnr。
在选择屏幕上。
从kna1中选择单个kunnr。 进入vi,其中s_kunnr中的kunnr。
如果sy-subrc <> 0.
消息A000(ZSPT_8AM_MSG)带有'Invalid length'。
endif。
表vbak。
选择 -选项s_vbeln用于vbak-vbeln。
数据vi在选择屏幕上键入vbak-vbeln。
。
从vbak到vi中选择单个vbeln,其中s_vbeln中的vbeln。
如果s-subrc <> 0.
消息a000(ZSPT_8AM_MSG)带有'无效的客户'。
尾号。
表lfa1。
lfa1-lifnr的选择选项s_lifnr。
数据vi类型lfa1- lifnr。
在s_lifnr的选择屏幕上。
从lfa1到vi中选择单个lifnr,其中s_lifnr中的lifnr。
如果sy-subrc <> 0.
消息a000(ZSPT_8AM_MSG)带有'无效的供应商 '。
endif。
选择开始。
从kna1选择kunnr name1 ort01到表it_kna1中,其中s_kunnr中的kunnr。
选择结束。
如果p_ dis ='X'。
在it_kna1循环进入wa_kna1。
写入:/wa_kna1-kunnr,wa_kna1-name1,wa_kna1-ort01。
endloop。
如果p_nodis ='X'。 br>写入:"请选择复选框"。
结束符。
页面顶部。
写入" sy tech"。
页面末尾。
写入:'hs 30,高于deb'。
您好 kumar kumar ,
下次您发布代码时,请 确保您像我在下面那样使用CODE选项,以便您的代码可以很好地对齐并易于阅读。
现在回到您面临的错误:
原因是 您已经在AT SELECTION SCREEN EVENT中声明了Selection Screen参数。 这就是为什么由于不允许使用本地选择选项而导致错误的原因。
要了解的几个要点:
1)声明和选择屏幕参数必须是程序的初始部分。 特定的选择屏幕参数不应在程序中声明的任何显式事件开始后声明。
2)如果您具有用于数据声明,选择屏幕参数和其余子对象的单独包含,则这是最佳实践
3)您已经在选择屏幕事件中声明了Multiple,这不是必需的。
4)您在从未声明的程序中使用了Parameters。
< p>建议您在继续进行之前了解报表编程中事件的流程。 根据我对您要求的理解,我已更正了您的代码,建议您在继续进行操作之前先阅读代码。致谢!
已更改标签,因为问题与SAP Cloud Platform的ABAP环境无关
一周热门 更多>