动态选择屏幕

2020-08-19 05:48发布

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

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


Hello Freinds,

我正在处理权限检查对象,在某些程序中有"动态选择"屏幕,因此如何在动态选择屏幕中查找字段。

请指导我.........

谢谢

阿玛尔

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

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


Hello Freinds,

我正在处理权限检查对象,在某些程序中有"动态选择"屏幕,因此如何在动态选择屏幕中查找字段。

请指导我.........

谢谢

阿玛尔

付费偷看设置
发送
5条回答
Aaron 3364
1楼 · 2020-08-19 06:24.采纳回答

嗨Amar,

根据您的要求,只需在选择屏幕输出事件中添加所需的字段即可。 您可以通过修改屏幕内部表格来修改选择屏幕。

以无帧间隔的b1块开始选择屏幕。

参数:s1单选按钮组g1用户命令u1默认为'X',

p_name(10)修改ID M1,

p_email(20)修改ID M1,

s2单选按钮组G1。

参数:p_name1(10)MODIF ID M2,

p_fax(10)修改ID M2。

b1块的选择屏幕结尾。

在选择屏幕输出上。

  • 如果S_BOX ='X'。

环视屏幕。

如果SCREEN-GROUP1 ='M3'。

SCREEN-ACTIVE ='0'。

修改屏幕。

ELSE。

SCREEN-ACTIVE ='1'。

修改屏幕。

ENDIF。

ENDLOOP。

  • ENDIF。

如果S1 ='X'。

环视屏幕。

如果SCREEN-GROUP1 ='M2'。

SCREEN-ACTIVE ='0'。

修改屏幕。

ELSEIF SCREEN-GROUP1 ='M1'。

SCREEN-ACTIVE ='1'。

修改屏幕。

ENDIF。

ENDLOOP。

ELSEIF S2 ='X'。

环视屏幕。

如果SCREEN-GROUP1 ='M1'。

SCREEN-ACTIVE ='0'。

修改屏幕。

ELSEIF SCREEN-GROUP1 ='M2'。

SCREEN-ACTIVE ='1'。

修改屏幕。

ENDIF。

ENDLOOP。

ENDIF。

此致

Ranveer。

wang628962
2楼-- · 2020-08-19 06:43

没关系,

但是在我的程序中,动态选择屏幕已经使用过,例如。 公司代码由动态选择屏幕定义,因此该字段未在program中定义。现在,我必须对公司 因此,如何申请以及如何获得该公司代码字段。

谢谢

Tushar

灬番茄
3楼-- · 2020-08-19 06:34

hiii

转到此链接

saptechnical.com

教程

abap

动力学屏幕

演示

http://www.saptechnical.com/Tutorials /ABAP/DynamicSScreen/demo.htm

编辑者:pardeep kumar,2008年8月11日下午12:14

spaceman01
4楼-- · 2020-08-19 06:24

嗨,阿马尔,

公司代码必须在程序中声明。

因为程序将不接受未经声明的公司代码。

如果确定它在动态选择屏幕中,则只需在程序中搜索所有参数/选择选项。

然后进行权限检查。

此致

PRem

Doze时光
5楼-- · 2020-08-19 06:22

报告ZSELECTION。

*选择屏幕字段

表格:sscrfields,MARA。

*全球声明

*********** SELECTION-SCREENS **********************

带有框架的块blk1的选择屏幕开始。

*用于模块的动态显示

参数:MATNR RADIOBUTTON GROUP rad用户命令com默认为'X',ERSDA RADIOBUTTON GROUP rad,

MTART RADIOBUTTON GROUP拉德。

blk1的选择屏幕结束。

选择屏幕跳过。

选择屏幕评论2(6)text_001。

参数:MATNR TYPE MARA-MATNR MODID ID mod。

参数:ERSDA类型MARA-ERSDA修改ID rad。

参数:MTART类型MARA-MTART修改ID cad。

在选择屏幕输出处。

*单击第一个无线电按钮

如果MATNR ='X'。

*基于所选无线电获得动力的代码

环视屏幕。

如果screen-group1 ='MOD'。

屏幕增强='1'。

屏幕激活=1。

screen-display_3d ='1'。

修改屏幕。

ENDIF。

如果screen-group1 ='RAD'。

屏幕增强='0'。

屏幕激活= 0。

screen-display_3d ='0'。

修改屏幕。

ENDIF。

如果screen-group1 ='CAD'。

屏幕增强='0'。

屏幕激活=0。

screen-display_3d ='0'。

修改屏幕。

ENDIF。

ENDLOOP。

ENDIF。

*第二广播的点击

如果ERSDA ='X'。

环视屏幕。

如果screen-group1 ='RAD'。

屏幕增强='1'。

屏幕激活=1。

screen-display_3d ='1'。

修改屏幕。

ENDIF。

如果screen-group1 ='MOD'。

屏幕增强='0'。

屏幕激活=0。

screen-display_3d ='0'。

修改屏幕。

ENDIF。

如果screen-group1 ='CAD'。

屏幕增强='0'。

屏幕激活=0。

screen-display_3d ='0'。

修改屏幕。

ENDIF。

ENDLOOP。

ENDIF。

*单击第三电台

如果MTART ='X'。

环视屏幕。

如果screen-group1 ='RAD'。

屏幕增强='0'。

屏幕激活=0。

screen-display_3d ='0'。

修改屏幕。

ENDIF。

如果screen-group1 ='MOD'。

屏幕增强='0'。

屏幕激活=0。

screen-display_3d ='0'。

修改屏幕。

ENDIF。

如果screen-group1 ='CAD'。

屏幕增强='1'。

屏幕激活=1。

screen-display_3d ='1'。

修改屏幕。

ENDIF。

ENDLOOP。

ENDIF。

一周热门 更多>