没有错误,但不能输入选择的开始帮助我纠正

2020-08-15 11:44发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)




报告Z645PROG107。

表Z01_CUST。

数据:WA_CUST TYPE Z01_CUST,
t_cust类型表Z01_CUST。
数据标志。
>
参数:p_cid TYPE int4默认值1。



选择框bk1的开始,帧标题为t1。
SELECTION-SCREEN COMMENT 8(30)lb1。
< br>参数:p_c1类型z_CUST,
p_c2类型z_CNAME,
p_c3类型z_ADDRS,
p_c4类型z_EMAIL,
p_c5类型z_PHONENO。

块bk1的SELECTION-SCREEN。

选择屏幕跳过2.
选择屏幕按钮6(12)b1用户命令fc1。
选择屏幕按钮20(12)b2用户命令fc2。
选择 -屏幕按钮34(12)b3用户命令fc3。
选择屏幕按钮48(12)b4用户命令fc4。
选择屏幕跳过2.
选择屏幕按钮13(12) b5用户命令fc5。

在选择屏幕上。

CASE标志。

当'fc1'。
screen-active ='0'。
>
FLAG ='1'。

当'fc2'。

FLAG ='2'。

当'fc3'。
< br> FLAG ='3'。

当'fc4'。

FLAG ='4'。
当'fc5'。
FLAG ='5'

结束案例。
开始选择。


案例标记。当'FC1'时。 "创建。

WA_CUST-CID = p_c1。
WA_CUST-CUSTOMER_NAME = p_c2。
WA_CUST-CUSTOMER_ADDRESS = p_c3。
WA_CUST-CUS_EMAIL = p_c4。
WA_CUST-CUS_CPH 。
从wa_cust插入z01_cust。

如果sy-subrc =0。
消息'已插入客户记录'类型'I'。
ELSEIF sy-subrc <> 0。
消息'错误的客户ID'类型'E'。
退出。
ENDIF。

当'FC2'时。"显示

选择*
FROM z01_cust
输入表t_cust
CID = p_cid。
如果sy-subrc = 0。
在t_cust处循环输入到wa_cust。

写:/3'CID',
20'CUSTOMER_NAME ',
35'CUSTOMER_ADDRESS',
70'CUS_EMAIL',
90'CUS_PHONE'。



WRITE:/3 WA_CUST-CID,20 WA_CUST-CUSTOMER_NAME ,35 WA_CUST-CUSTOMER_ADDRESS,70 WA_CUST-CUS_EMAIL,90 WA_CUST-CUS_PHONE。

ENDLOOP。
endif。
当'FC3'时。 " UPDATE

从Z01_CUST
中选择*
到表t_cust
CID = p_c1的表中。
UPDATE Z01_CUST SET CID = p_c1
CUSTOMER_NAME = p_c2 CUSTOMER_ADDRESS = p_c3 CUS_EMAIL =
CUS_PHONE = p_c5
CID = P_C1。

如果sy-subrc =0。
消息'客户记录已更新'类型'I'。
ELSEIF sy-subrc <> 0。
消息'错误的客户ID'类型'E'。
退出。
ENDIF。
退出。


当'FC4'时。"删除。 >
从Z01_CUST的CID = P_C1处删除。
如果sy-subrc =0。
消息'客户记录已删除'类型'I'。
ELSEIF sy-subrc <> 0。
消息'错误的客户ID'类型'E'。
退出。
ENDIF。

当'FC5'。

WRITE/'按钮5被单击'。

当其他人时。

写/"未单击按钮"。
结束语。

初始化。
lb1 ='输入客户的详细信息'。
t1 ='输入数据'。
b1 ='创建'。
b2 ='显示'。
b3 ='更新'。
b4 ='删除'。

b5 ='退出'。

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)




报告Z645PROG107。

表Z01_CUST。

数据:WA_CUST TYPE Z01_CUST,
t_cust类型表Z01_CUST。
数据标志。
>
参数:p_cid TYPE int4默认值1。



选择框bk1的开始,帧标题为t1。
SELECTION-SCREEN COMMENT 8(30)lb1。
< br>参数:p_c1类型z_CUST,
p_c2类型z_CNAME,
p_c3类型z_ADDRS,
p_c4类型z_EMAIL,
p_c5类型z_PHONENO。

块bk1的SELECTION-SCREEN。

选择屏幕跳过2.
选择屏幕按钮6(12)b1用户命令fc1。
选择屏幕按钮20(12)b2用户命令fc2。
选择 -屏幕按钮34(12)b3用户命令fc3。
选择屏幕按钮48(12)b4用户命令fc4。
选择屏幕跳过2.
选择屏幕按钮13(12) b5用户命令fc5。

在选择屏幕上。

CASE标志。

当'fc1'。
screen-active ='0'。
>
FLAG ='1'。

当'fc2'。

FLAG ='2'。

当'fc3'。
< br> FLAG ='3'。

当'fc4'。

FLAG ='4'。
当'fc5'。
FLAG ='5'

结束案例。
开始选择。


案例标记。当'FC1'时。 "创建。

WA_CUST-CID = p_c1。
WA_CUST-CUSTOMER_NAME = p_c2。
WA_CUST-CUSTOMER_ADDRESS = p_c3。
WA_CUST-CUS_EMAIL = p_c4。
WA_CUST-CUS_CPH 。
从wa_cust插入z01_cust。

如果sy-subrc =0。
消息'已插入客户记录'类型'I'。
ELSEIF sy-subrc <> 0。
消息'错误的客户ID'类型'E'。
退出。
ENDIF。

当'FC2'时。"显示

选择*
FROM z01_cust
输入表t_cust
CID = p_cid。
如果sy-subrc = 0。
在t_cust处循环输入到wa_cust。

写:/3'CID',
20'CUSTOMER_NAME ',
35'CUSTOMER_ADDRESS',
70'CUS_EMAIL',
90'CUS_PHONE'。



WRITE:/3 WA_CUST-CID,20 WA_CUST-CUSTOMER_NAME ,35 WA_CUST-CUSTOMER_ADDRESS,70 WA_CUST-CUS_EMAIL,90 WA_CUST-CUS_PHONE。

ENDLOOP。
endif。
当'FC3'时。 " UPDATE

从Z01_CUST
中选择*
到表t_cust
CID = p_c1的表中。
UPDATE Z01_CUST SET CID = p_c1
CUSTOMER_NAME = p_c2 CUSTOMER_ADDRESS = p_c3 CUS_EMAIL =
CUS_PHONE = p_c5
CID = P_C1。

如果sy-subrc =0。
消息'客户记录已更新'类型'I'。
ELSEIF sy-subrc <> 0。
消息'错误的客户ID'类型'E'。
退出。
ENDIF。
退出。


当'FC4'时。"删除。 >
从Z01_CUST的CID = P_C1处删除。
如果sy-subrc =0。
消息'客户记录已删除'类型'I'。
ELSEIF sy-subrc <> 0。
消息'错误的客户ID'类型'E'。
退出。
ENDIF。

当'FC5'。

WRITE/'按钮5被单击'。

当其他人时。

写/"未单击按钮"。
结束语。

初始化。
lb1 ='输入客户的详细信息'。
t1 ='输入数据'。
b1 ='创建'。
b2 ='显示'。
b3 ='更新'。
b4 ='删除'。

b5 ='退出'。

付费偷看设置
发送
4条回答
浮生未央
1楼-- · 2020-08-15 12:02

您好 PRAJWAL G

当SSCRFIELDS-UCOMM = ONLI时,将触发START-OF-SELECTION ,更简单地说,是在选择屏幕上按F8时。 你按F8了吗? 还是只按了一个按钮?

亲切的问候,
Mateusz

Violet凡
2楼-- · 2020-08-15 12:05

你好,Prajwal,

感谢您访问SAP社区,以获取问题的答案。 由于您是第一次在这里提出问题,因此建议您熟悉 https ://community.sap.com/resources/questions-and-answers (如果您还没有的话),因为它提供了准备问题的技巧,这些问题引起了我们成员的反馈。 例如,您可以概述寻找答案所需采取的步骤(以及为什么这些步骤无效)。 您提供的详细信息越多,成员越有可能为您提供帮助。 如果您愿意,可以先选择"操作",再选择"编辑"来修改问题(尽管有人回答了问题,您将失去编辑问题的能力,但是如果发生这种情况,可以在评论中保留更多详细信息)。 最后,如果您希望与读者建立联系,请考虑在个人资料中添加图片。 操作方法如下: https://www.youtube.com/watch?v = F5JdUbyjfMA&list = PLpQebylHrdh5s3gwy-h6RtymfDpoz3vDS 。 通过使用您的照片来个性化个人资料,可以鼓励读者做出回应。

jovirus
3楼-- · 2020-08-15 11:53

您必须使用过ABAP演示程序DEMO_SEL_SCREEN_PUSHBUTTON。

如果您在演示程序中注意到,则关键字为大写。 进行调试以检查是否可以解决您的问题。

欢迎使用ABAP。 继续学习。

表sscrfields。

 在选择屏幕上。

   案例sscrfields-ucomm。
     当" FC1"。
       screen-active =" 0"。
       标志=" 1"。
     当" FC2"。
       标志=" 2"。
     当" FC3"。
       标志=" 3"。
     当" FC4"。
       标志=" 4"。
     当" FC5"。
       标志=" 5"。
   
落灬小鱼
4楼-- · 2020-08-15 12:00

ABAP不区分大小写。 您的意思是引号内的值必须为大写。

即使如此,这也不能解释为什么在其他情况下使用

。
 WRITE/'未单击任何按钮'。

不会触发。

一周热门 更多>