SAP ABAP报表ALV的实现与操作

一、目的和特征

        SAP提供了修饰报表的功能模块 ALV (ABAP LIST VIEWER)。这个模块是用来增强输出报表的可读性和功能性。
        ALV可以帮助选择输出字段,排列输出字段和保存不同的变量。这是一个非常有效率的对报表进行排序和字段排列的工具。
        ABAP做成报表一览画面的标准化和简易化 ,对用户各自的不同条件进行调整表示成为可能。例如,有些项目要做排序,过滤或用 Excel 下载做成一览表,这以 ABAP 编码是不能做到。
        修改网页(例如,以帐票的输出领域做成网页的形式输出。)      ( HEADER 信息定义,然而只有单纯的 HEADER 信息定义。)
二、处理和标准化项目的对应

 三、关于 ALV Grid 表示用的数据定义

数据声明:

SAP标准类型池:SLIS 
( TYPE-POOLS slis. )

内表和工作地区的定义。
FIELD CATALOGUE情報
  ( DATA it_fieldcat  TYPE slis_t_fieldcat_alv.)
LAYOUT情報
  ( DATA wa_layout    TYPE slis_layout_alv.)
SORT情報
  ( DATA it_sort      TYPE slis_t_sortinfo_alv.)

 四、FIELD CATALOGUE信息的设定方法

工作地区的定义
  (DATA wa_fieldcat  TYPE slis_fieldcat_alv.)

把各种信息向FIELD CATALOGUE信息的表( it_fieldcat )中追加。
 被表示报表的列的信息设定。

wa_fieldcat-fieldname(项目名)         :内部输出表内的项目符号名(必须是大写)
wa_fieldcat-outputlen(列宽)           :输出列的列宽
wa_fieldcat-seltext_s(项目标签(短))   :被表示的项目标题的短的原文
wa_fieldcat-seltext_l(项目标签(长))   :被表示的项目标题的长的原文
wa_fieldcat-key      (KEY列)          :KEY项目的场合设定为‘X’
wa_fieldcat-currency(通货)          :金额项目的场合设定
wa_fieldcat-no_out  (项目一览的项目):初始不表示的场合设定为‘X’

※关于其他信息的设定、参照最后共同模块‘REUSE_ALV_GRID_DISPLAY’的说  明

五、LAYOUT信息的设定方法

各种信息在LAYOUT的工作区域 ( wa_layout )中设定。

wa_layout-zebra            (Stripe pattern):需要斑马线形式表示数据的时候设定为‘X’

wa_layout-colwidth_optimize(列宽的最优化)   :初始时需要列宽最优化的时候设定为‘X’

六、SORT信息的设定方法

工作地区的定义
        (DATA wa_fieldcat  TYPE slis_fieldcat_alv.)

把各种信息向SORT的表( it_sort )中追加。 对要进行排序的列、设定它们的信息。

wa_sort-spos(sort顺序)   :sort的顺序、从1开始设定一个唯一值。

wa_sort-fieldname(项目名):内表中要排序的项目名 

wa_sort-up(排序方式)     :升序的场合设定为‘X’

七、HEADER信息的设定方法

ALV专用的子程序top_of_page做成。

设定内表并进行工作区域的定义。
(DATA it_listheader TYPE slis_t_listheader.)

(DATA wa_listheader TYPE slis_listheader.)

把各种信息向HEADER的表( it_listheader )中追加。

wa_listheader-typ(TYPE):设定显示文本文字的类型。
Header方式显示设定为‘H’、Selection 方式显示设定为‘S’、Action 方式显示设定为‘A’ 。
wa_listheader-info(显示文本):所要显示的文本。

八、ALV Grid画面表示

使用共通模块‘REUSE_ALV_GRID_DISPLAY’。

在表示HEADER信息时,先做成ALVGrid专用的子程序top_of_page,然后在参数i_callback_top_of_page中指定刚才所做成的子程序top_of_page。

ALVGrid中实行EVENT的场合,先做成专用的子程序,然后在参数i_callback_user_command中指定刚才所做成的子程序。
   指定子程序的接口按照以下的方法定义。
   FORM user_command USING p_ucomm    LIKE sy-ucomm
                            p_selfield TYPE slis_selfield.

九、各共通模块参数列表

 

注:以上信息仅供大家参考学习 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
SAP ABAP ALV 报表是一种基于 ABAP 编程语言的高级列表工具,用于生成和显示数据报表。如果你想要为 ALV 报表添加自定义校验逻辑,可以按照以下步骤进行修改: 1. 首先,创建一个包含自定义校验逻辑的 ABAP 函数模块。该函数模块可用于对 ALV 报表的数据进行验证。在函数模块中,你可以定义各种校验规则和逻辑,例如检查数据的完整性、一致性或合法性。 2. 在 ABAP 程序中,使用 ALV 报表时,可以在数据填充之前或之后调用自定义函数模块。例如,你可以使用 FUNCTION MODULE_BEFORE_OUTPUT 或 FUNCTION MODULE_AFTER_OUTPUT 事件处理程序,在 ALV 表的输出之前或之后执行自定义校验逻辑。 3. 在这些事件处理程序中,可以调用定义的自定义函数模块来执行数据校验。通过将 ALV 表的数据传递给这些函数模块,你可以对数据进行校验,并根据校验结果决定是否允许数据的修改。如果校验失败,可以通过向用户显示错误消息、高亮显示错误行或阻止修改操作来提醒用户。 4. 在 ALV 报表的输出或修改事件中,你还可以根据需要调整和修改 ALV 表的格式和显示。例如,你可以通过修改字段属性、调整列宽或添加新的 ALV 功能按钮来满足特定的需求。 通过以上步骤,你可以在 SAP ABAP ALV 报表中成功添加自定义校验逻辑。这将提高报表数据的质量和准确性,并为用户提供更好的用户体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ᝰ随心ꦿེএ

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值