• ABAPALV(2)


     承接上一节,由于ALV报表通常有选择屏幕作为程序和用户之间的接口,所以这一节主要介绍一下选择屏幕。

    二、选择屏幕

          选择屏幕上的各种元素是用程序语句生成的,而不是使用屏幕编辑器添加的。

          1、选择屏幕的功能

              *选择参数元素,用于单值输入

              *复杂选择标准,可用于多值及范围的输入

              *可为输入参数定义输入帮助(F1)及搜索帮助(F4)

              *可定义变式,保存常用的输入条件

          2、选择屏幕元素

               2.1 选择屏幕参数

               (是最简单的选择屏幕元素,此种方式只接受单值输入,定义该参数时变量的长度不能超过8个字符

                定义格式: Parameters  name TYPE/LIKE  type/dobj   <options>.

                选择屏幕参数有许多附加格式化选项,但都不是必选,在需要的时候可以使用。如下:

                *DEFAULT  value:分配默认值

                *OBLIGATORY:设置必输项,当设置该选项以后,若输入的时候没有值,则系统会自动报错。

                *LOWER CASE:设置小写

                *VISIBLE LENGTH len :设这可显示长度

                *MATCHCODE  OBJECT  s_help:分配查询帮助,但该查询帮助对象s_help必须在数据字典中已经定义

                *VALUE CHECK:进行值检查

                *NO-DISPLAY:隐藏显示

                *MODIF  ID key:分配修改代码组

                *MEMORY  ID pid:使用内存默认值

                *AS CHECKBOX: 创建复选框

                *RADIOBUTTON  GROUP   radi:创建单选按钮组,每个分组至少两个参数,组名称的最大长度为4,并且每个组中只有一个参数可以设置默认值

                以上打上红色的格式化选项是我在开发ALV报表时设计选择屏幕中比较常用的几个,之后我会使用实例来讲解它们的用法。

                2.2 复杂选择标准

                定义变量为复杂选择标准,该变量为一个包含有四个组件的内表,如下:

                DATA: BEGIN OF seltab OCCURS  0,

                           SIGN(1),

                           OPTION(2),

                           LOW  LIKE f,

                           HIGH LIKE f,

                          END OF seltab.

                 该内表的具体用法,就不在此做讲解,具体可以参考黄佳的《SAP程序设计》。

                 (注:在使用Ranges定义变量的时候,其性质与该内表一样,所以在使用的时候要设置SIGN和OPTION,否则会报错!)

              复杂选择标准的格式选项,除了有与选择屏幕参数一致的选项外,还有自己特有的选项:

               *NO-EXTENSION  限制选择表为单行

               *NO INTERVALS   限制选择表为单值

               3、其他选择屏幕元素

               可以使用SELECTION-SCREEN……<options>……进行添加一些其他元素。

               1>、SELECTION-SCREEN  SKIP(N).产生空行,N值为1-9,当省略N时,默认空1行

               2>、SELECTION-SCREEN  ULINE [[/]pos(len)]  [MODIF  ID  key].用于给屏幕中的行划下划线

               3>、SELECTION-SCREEN  COMMENT  [/]pos(len) comm  [FOR FIELD f] [MODIF  ID   key].给选择屏幕添加注释行文字

               4>、SELECTION-SCREEN  POSITION   pos.将选择屏幕的元素按指定的位置输出

               4、组合选择屏幕元素

                1>、SELECTION-SCREEN BEGIN OF LINE.

                       ………………

                       SELECTION-SCREEN END OF LINE.是将多个不同的元素在同一行输出

                2>、SELECTION-SCREEN  BEGIN OF BLOCK block [ WITH FRAME [TITLE  title]]  [NO  INTERVALS].

                       ………………

                       SELECTION-SCREEN  END OF BLOCK  block.将一组选择元素组合在一个区域中输出,最多可以嵌套5层。

            3、选择屏幕事件

                 选择屏幕事件是在INITIALIZATION事件和START-OF-SELECTION事件之间触发的,以下是相关的选择屏幕事件:

                 AT SELECTION-SCREEN OUTPUT.是选择屏幕的PBO事件,在每次选择屏幕被调用之前触发

                 AT SELECTION-SCREEN.是选择屏幕的PAI事件,是用户输入数据传输到程序后触发,是选择屏幕事件中最后触发的事件

                 AT SELECTION-SCREEN  ON field.对输入的某个字段进行触发

                 AT SELECTION-SCREEN  ON BLOCK  block.是对选择屏幕中的某个选择区域进行触发

                 AT SELECTION-SCREEN  ON RADIOBUTTON GROUP  radi.对某个单选按钮组进行触发

                 AT SELECTION-SCREEN  ON seltab.

                 AT SELECTION-SCREEN  ON END OF seltab.此两个事件只在多行选择对话框才会触发

                 AT SELECTION-SCREEN  ON HELP-REQUEST  FOR field.POH事件,相当于F1事件

                 AT SELECTION-SCREEN  ON VALUE-REQUEST  FOR field.POV事件,相当于F4事件

                                                                      ---------------------------------以上知识摘自黄佳的《SAP程序设计》

         

  • 相关阅读:
    php错误处理和异常处理
    (转)Android内存泄漏分析及调试
    (转)完美解决 Android WebView 文本框获取焦点后自动放大有关问题
    (转)Android studio 使用心得(五)—代码混淆和破解apk
    Execution failed for task ':app:clean'.
    (转)Android短信的发送和接收监听
    Android的AsyncQueryHandler详解
    (转)如何获得当前ListVIew包括下拉的所有数据?
    一个优秀的Android应用从建项目开始
    (转)Android性能优化——工具篇
  • 原文地址:https://www.cnblogs.com/qlb8268/p/2776073.html
Copyright © 2020-2023  润新知