首页 > 其他 > 详细

sap 动态屏幕

时间:2021-03-28 11:11:08      阅读:21      评论:0      收藏:0      [点我收藏+]

1、 动态屏幕

 技术分享图片

 

 

如图要求:点击批量导入显示导入模板路径

          点击手工维护隐藏导入模板路径

实现方法:

1、 )定义

两个屏幕区域blk 和 bk2

区域blk 里添加两个按钮 p_opt1 和 p_opt2

区域bk2 里定义p_file

注意:1.屏幕进来后所有屏幕字段的值,在没有给默认值的情况下都是为空的

所以刚进来时p_opt1 和 p_opt2都为空的

因此p_opt1 默认DEFAULT ‘X’

2. USER-COMMAND cmd 必须写,

            用来控制两个按钮 p_opt1 和 p_opt2的事件触发,如果不写不会触发动态屏幕切换

  1.    3.  MODIF ID gr1 必须写。

       用来判断p_file 什么时候隐藏。如果用screen-name = ‘P_FILE’来定位该字段的隐藏,会有问题:导入模板路径的描述不会隐藏

问题截图如下

技术分享图片

 

 技术分享图片

 

 技术分享图片

 

 

   2)、实现方法

      技术分享图片

 

 2、 手动添加必输控制

要求:工厂必输和导入模板路径在批量导入时必输

 技术分享图片

 

 

 两种实现方式:以工厂举例

1) 使用关键字必输 OBLIGATORY

  在有动态屏幕选择控制的时候,切换按钮的时候都会报必输错误,其实是不需要报错。只能用第二种方法如下

2) 自定义必输控制

第一先给工厂字段勾上对号(实现切换按钮时不报错)

AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF screen-name = P_WERKS.
      screen-required = 2.
    ENDIF.
        MODIFY SCREEN.
  ENDLOOP.

第二在需要报错时要手动添加实现报错,并且点击执行按钮时报错

AT SELECTION-SCREEN ON  p_werks.
  IF p_werks IS INITIAL AND sy-ucomm = ONLI.
    MESSAGE e001(00) WITH ‘填写所有必填字段‘.
  ENDIF.

3、 选择屏幕自定义按钮

实现结果:

 技术分享图片

 

 实现过程:如下 (定义+ function)

1、定义 :

TABLES:sscrfields.

技术分享图片

2、Function key 代码如下:

SELECTION-SCREEN: FUNCTION KEY 1.   "激活按钮
INITIALIZATION.
  sscrfields-ucomm = FC01.
  sscrfields-functxt_01 = ‘下载模板’."‘下载模板

 

sap 动态屏幕

原文:https://www.cnblogs.com/lovelidan/p/14587308.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!