ABAP初体验三:ABAP的简单报表及内表

2022-03-11 10:33:36 浏览数 (1)

声明:本文仅代表原作者观点,仅用于SAP软件的应用与学习,不代表SAP公司。注:文中所示截图来源SAP软件,相应著作权归SAP所有。

01

目录

3 简单报表

3.1 屏幕讲解

3.2 RANGE讲解,如何使用

3.3 select

3.4 内表及loop into

3.5 屏幕变式

3.5.1 定义变式

3.5.2 动态维护变式

3.5.3 se38删除屏幕变式

3.6 后台任务

3.7 Tcode创建

3.8 网上一个比较好的示例

3.8.1 定义格式;定义引用的表;定义池,用于alv

3 简单报表

02

正文

2 基本语法

3 简单报表

3.1 屏幕讲解

3.2 RANGE讲解,如何使用

代码语言:javascript复制


RANGES: lgz_range for sy-datum.

*&---------------------------------------------------------------------*
*& INITIALIZATION.:程序变量进行初始化,启动程序开始执行
*&---------

INITIALIZATION.

lgz_range-option = 'EQ'.
lgz_range-sign = 'I'.
lgz_range-low = sy-datum - 1 .
APPEND lgz_range.

3.3 select

例如in range,表示定义一个范围,然后SQL语句中某个字段in range。

1.上面是把表查出来主记录,下面通过for all entries in语句去检索主记录对应的文本信息、t001w表信息等,这样就减少了数据库的压力。一般簇表都需要用for all entries in,否则就嗨了天了。

3.4 内表及loop into

1.定义符号结构

2.定义内表

3.用结构循环内表进行数据处理,有两种方式,两种方式的主要区别是方式一直接进行内表循环,需要最后modify i_table,而用符号的话不用再修改内表(符号是指针)。方式二长用于BW

方式一:

方式一直接loop,原则上必须要进行排序并用二叉树的索引检索方式,会大大提高效率。

方式二:

方拾二,常用于BW。

3.5 屏幕变式

3.5.1 定义变式

如果勾选保护,那么该屏幕变式就保护起来不允许修改了

3.5.2 动态维护变式

针对日期字段

选择当前日期减1

3.5.3 se38删除屏幕变式

3.6 后台任务

1.SM36,随便输入任务名

2.点击创建,然后输入屏幕名和变式

3.定时设置

4.SM37查看

选择定时,要选择job查看的期间

5.也可以在程序界面,选择变式后

内容是几乎一致的设置

3.7 Tcode创建

1.se93 选择程序和选择屏幕(适用于报表)

2.正常保存即可

3.如果用屏幕变式(比如设置变式日期不可以修改),就可以约束日期不能修改了。

3.8 网上一个比较好的示例

3.8.1 定义格式;定义引用的表;定义池,用于alv

2.变量定义

3.选择屏幕

4.入库日期必输提示,然后移动类型101必须输入。这个range是多余的。

5.选择条件前和后

6.form sub_fetchdata

7.alv输出

0 人点赞