ALV、选择屏幕

编程入门 行业动态 更新时间:2024-10-25 00:28:00

ALV、选择<a href=https://www.elefans.com/category/jswz/34/1767915.html style=屏幕"/>

ALV、选择屏幕

目录

ALV

内容:

Fanction开发流程:

(1)声明变量

(2)定义内表

(3)读取数据

(4)ALV格式控制

(5)定义事件

(6)显示ALV

(7)用户事件

GUI状态:

DEBUG:

选择屏幕:

1、基本元素

多值选择屏幕:select-options

单值选择屏幕:parameters

框架结构:SELECTION-SCREEN

文本元素 

2、选择屏幕的使用

          ​编辑


ALV

内容:

报表输出,丰富的交互功能。是一个显示列表的灵活的工具,它提供了基本功能的列表操作,也可以通过自定义来进行增强。

LIST型:与WRITE输出相近,只是多了许多功能按钮。

GRIT型:类似EXCEL,也是有许多功能按钮,。

实现方式:传统的Call Function:面向过程

          面向对象的编程

组成部分:工具栏,标题栏(前两项可省略),网格控制器。

工具栏

标题栏:总揽信息

网格控制器:筛选出的数据

Fanction开发流程:

(1)声明变量

TYPE-POOLS:SLIS 【现在可以不用了】

布局属性Layout

列表栏属性Fieldcat

(2)定义内表

存放自定义数据文件的数据,以及在ALV中显示

(3)读取数据

数据放在内表

(4)ALV格式控制

建立显示格式(layout)和显示字段清单(Field Catalogs)

fieldcat

(5)定义事件

SE37:查看函数

可有可无。事件用于控制不同的样式,共有17个。

(6)显示ALV

调用alv fanction module

(7)用户事件

定义user按键处理事件

GUI状态:

DEBUG:

     设置断点

选择屏幕:

注意: 尽管有一个名为“屏幕绘制器”的工具用于设计屏幕,但此处不使用此工具。而是根据 ABAP 代码中的参数声明生成选择屏幕。

1、基本元素

多值选择屏幕:select-options

          复杂选择:   SELECT-OPTIONS  name  FOR  data_object.

          name为选择选项的名称

          data_object是一个预定义变量,或者数据库表的字段

     1、常用于参照一数据库字段来建立,要在程序开始用TABLES声明表名

     2、其定义对象命名长度不能超过8位

     3、定义的屏幕元素在程序中当做内表来用,内表的结构比较特殊

名称

参考值

描述

SIGN

I或者E

I:包括,E:排除

OPTION

EQ,NE,CP,NP,

GE,LT,LE,GT

EQ(等于),NE(不等于)

NP(排除参考格式)

LT(小于),LE(小于或者等于)

CP(包含),NP(不包含)

GT(大于),GE(大于或者等于)

BT(范围),NB(排除范围)

LOW

维护项目-前

HIGH

维护项目-后

把输入的数据导入到一个内表中,以日期为例:

DATA:time TYPE d.  
time = s_rq-low.               "s_rq为定义的选择屏幕IF s_rq-high IS NOT INITIAL.WHILE time <= s_rq-high.gs_out-rq = time.APPEND gs_out TO gt_out.time = time + 1.ENDWHILE.ELSE.LOOP AT s_rq[] INTO DATA(ls_rq).gs_out-rq = ls_rq-low.APPEND gs_out TO gt_out.ENDLOOP.ENDIF.

多值屏幕扩展语法:     

  • MEMORY ID pid:将SELECT-OPTIONS分配参数名并存储在SAP内存,参数名长度不能超过三位。
  • NO-DISPLAY:将SELECT-OPTIONS设置为隐藏,不会在屏幕上输出。
  • LOWER CASE:如果输入小写,则将在回车或者执行时候继续保持小写
  • OBLIGATORY:限制该SELECT-OPTIONS为必须输入的项目,执行中系统会提示。
  • NO-EXTENSION:限制该SELECT-OPTIONS只能输入一行数据,输入多行按钮(上图最右边按钮)被隐藏。
  • NO INTERVALS:只能输入单值,不能输入范围
  • VISIBLE LENGTH vlen:定义所显示数据的长度。
  • MATCHCODE OBJECT :指定SE11搜索帮助

单值选择屏幕:parameters

单值输入:    PARAMETERS  名称 LIKE/TYPE 类型.

1、输入变量的定义方法与普通变量相同

2、输入变量名不得超过8个字符长。

3、使用DEFAULT附加而非VALUE附加指定缺省值

4、PARAMETERS定义后不会产生内表,可作为变量在程序中运用

单值屏幕扩展语法:

  • MEMORY ID mid:将PARAMETERS存储在SAP内存,参数名长度不能超过三位
  • NO-DISPLAY:将PARAMETERS设置为隐藏,不会的屏幕上输出
  • LOWER CASE:如果输入小写,则将在回车或者执行时候继续保持小写
  • OBLIGATORY:限制该PARAMETERS为必填,否则会提示输入
  • AS CHECKBOX:创建CHECKBOX对象
  • RADIO BUTTON GROUP radi:创建(RADIO)单选框
  • VISIBLE LENGTH vlen:定义显示长度
  • USER-COMMAND ucom:功能码,只能分配给CHECKBOX或者LISTBOX或者RADIOBUTTON,当选择以上控件的时候,程序调用AT SELECTION-SCREEN事件,通过功能码控制屏幕其他元素的属性
  • AS LISTBOX VISIBLE LENGTH vlen:创建一个下拉框,并指定长度
  • MATCHCODE OBJECT :指定SE11的搜索帮助

DEFAULT:默认值

框架结构:SELECTION-SCREEN

SELECT-SCREEN语句:

用于创建屏幕的框架结构,主要包括屏幕元素的创建、子屏幕的创建等

1.SELECTION-SCREEN BEGIN OF BLOCK block.
   SELECTION-SCREEN END OF BLOCK.
该语法在屏幕中定义了一个框,其扩展语法包括:
      WITH FRAME:创建一个框架
      TITLE title:创建一个带标题的框架。
      NO INTERVALS:所创建的框架中限制SELECT只有一个输入项。 
2.SELECTION-SCREEN BEGIN OF SCREEN src.
SELECTION-SCREEN END OF SCREEN src.
用于定义一个INCLUDE SUREEN,可通过CALL方法在Report程序中引用
CALL屏幕窗体时加入STARTING AT ...  ENDING AT ...参数
可以将所定义屏幕窗体作为一个新的对话框窗体来引用,并指定期创建的具体大小及位置

文本元素 

文本符号(Text Symbols)

用于实现自定义文本及符号。开发人员可按需求定义相关文本或符号,该文本使用对象为SELECTION-SCREEN所定义的对象。

路径:

ABAP编辑器中:

转到→文本元素→文本符号

进行维护。可使用菜单

转到→翻译

进行翻译

2、选择屏幕的使用

    1、SELECTION-SCREEN BEGIN OF LINE. ....END OF LINE.

     让Begin of line 与End of line之间的部分位于同一行。

          

    2、SELECTION-SCREEN BEGIN OF BLOCK. ....END OF LINE.

     让Begin of line 与End of line之间的部分位于同一行。

           

SELECTION-SCREEN POSITION XX.

      将后面的第一个Screen element定位在这一行的XX位置,最大值为83。

SELECTION-SCREEN COMMENT XX(Y) TEXT-XXX FOR FIELD

      在当前行的指定列位置处输出一段文本

SELECTION-SCREEN SKIP 1.

跳过一行。类似于用WRITE写Report时的SKIP 1.也可以跳过多行。

SELECTION-SCREEN FUNCTION KEY 1.    最多五个

     

更多推荐

ALV、选择屏幕

本文发布于:2023-06-20 13:02:10,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/801930.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:屏幕   ALV

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!