`

ALV输出示例

阅读更多
*==========================================================*
*  ZTEST  ALV事例程序01                                    *
*==========================================================*
*  作成者: 莫怀远                                         *
*  作成日期: 2006/11/29                                   *
*  变更履历: yyyy/mm/dd xxx                               *
*             text                                         *
*             yyyy/mm/dd xxx                               *
*             text                                         *
*  概要内容:自定义ALV输出项目事例                         *
*----------------------------------------------------------*
REPORT ZTEST0001111 NO STANDARD PAGE HEADING.

*==========================================================*
* TYPE-POOLS
*==========================================================*
TYPE-POOLS SLIS.

*==========================================================*
* TABLES
*==========================================================*
TABLES: EKPO.

*----------------DEFINE MACRO------------------------------*
DEFINE ADD_FIELD.
  WA_FIELD-FIELDNAME = &1.
  WA_FIELD-REPTEXT_DDIC = &2.
  APPEND WA_FIELD TO IT_FIELD.
END-OF-DEFINITION.

*==========================================================*
* 定义变量和字段组
*==========================================================*
DATA: G_REPID TYPE SY-REPID,
      GS_LAYOUT TYPE SLIS_LAYOUT_ALV.

*==========================================================*
* TYPES定义
*==========================================================*
TYPES : BEGIN OF TY_EKPO,
          EBELN LIKE EKPO-EBELN,
          AEDAT LIKE EKPO-AEDAT,
          TXZ01 LIKE EKPO-TXZ01,
          MENGE LIKE EKPO-MENGE,
          MEINS LIKE EKPO-MEINS,
          NETWR LIKE EKPO-NETWR,
        END OF TY_EKPO.

*==========================================================*
* 定义内部表和工作区
*==========================================================*
DATA: WA_FIELD TYPE SLIS_FIELDCAT_ALV,
      IT_FIELD TYPE SLIS_T_FIELDCAT_ALV.

DATA : WA_EKPO TYPE TY_EKPO,
       IT_EKPO TYPE STANDARD TABLE OF TY_EKPO. "自定义用

*==========================================================*
* 抬头设置(自定义用)
ADD_FIELD 'EBELN' '订单编号'.
ADD_FIELD 'AEDAT' '订单日期'.
ADD_FIELD 'TXZ01' '物料名称'.
ADD_FIELD 'MENGE' '数    量'.
ADD_FIELD 'MEINS' '单    位'.
ADD_FIELD 'NETWR' '金    额'.

*==========================================================*
* SELETION-SCREEN
*==========================================================*
SELECTION-SCREEN BEGIN OF BLOCK BLOCK1 WITH FRAME .
  SELECT-OPTIONS: S_AEDAT FOR  EKPO-AEDAT.
SELECTION-SCREEN END OF BLOCK BLOCK1.

*==========================================================*
* START-OF-SELECTION
*==========================================================*
START-OF-SELECTION.
  PERFORM FRM_GET_DATA.

*==========================================================*
* END-OF-SELECTION
*==========================================================*
END-OF-SELECTION.
  PERFORM FRM_OUTPUT_ALV.

*&---------------------------------------------------------*
*&      Form  FRM_GET_DATA
*&---------------------------------------------------------*
*       读取数据
*----------------------------------------------------------*
FORM FRM_GET_DATA.

  SELECT EBELN
         AEDAT
         TXZ01
         MENGE
         MEINS
         NETWR
    INTO TABLE IT_EKPO
    FROM EKPO
   WHERE AEDAT IN S_AEDAT.

  IF SY-SUBRC <> 0.
    MESSAGE S208(00) WITH 'NO GET DATA!'.
    LEAVE LIST-PROCESSING.
  ENDIF.

ENDFORM.                    " FRM_GET_DATA
*
*&---------------------------------------------------------*
*&      Form  OUT_BY_ALV
*&---------------------------------------------------------*
*       ALV样式输出
*----------------------------------------------------------*
FORM FRM_OUTPUT_ALV.

G_REPID = SY-REPID.
GS_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
GS_LAYOUT-WINDOW_TITLEBAR   = TEXT-101.     "TITLE
*TEXT-101(自定义ALV输出项目事例)

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
  EXPORTING
    I_CALLBACK_PROGRAM = G_REPID
*    I_STRUCTURE_NAME         = 'EKPO'    "系统参照调用方法
    IT_FIELDCAT        = IT_FIELD        "自定义调用方法
    IS_LAYOUT          = GS_LAYOUT       "输出式样
    I_SAVE             = 'A'             "报表可保存状态设定
  TABLES
    T_OUTTAB           = IT_EKPO.        "报表明细数据

ENDFORM.                    " FRM_OUTPUT_ALV
分享到:
评论

相关推荐

    ABAP-ALV进阶

    "ABAP-ALV进阶知识点详解" ABAP-ALV进阶是指在SAP系统中使用ABAP语言开发的高级...六、ALV 简单示例 面向对象的 ALV GRID 必须存在于一个容器当中,就是 FUNCTION 的 ALV,实际上也是使用 CL_GUI_ALV_GRID 这个类的。

    ALV资料大全,有图示例,非常全面

    ALV,全称为ABAP List Viewer,是SAP系统中的一种标准报表输出工具,用于以表格形式展示数据。本资料大全旨在提供一个全面的ALV学习资源,包括各种使用技巧、示例和教程,帮助用户深入理解和应用ALV功能。 在ALV中...

    abap-ALV.rar_ABAP系统ALV_abap_abap开发alv

    - 输出格式:ALV可以导出为多种格式,如CSV、Excel等,需要配置相应的输出选项。 - 性能优化:处理大量数据时,需考虑性能优化策略,如分页、延迟加载等。 通过阅读“abap ALV.doc”文档,你可以更详细地了解到这些...

    ALV导出数据到EXCEL时数据丢失位数的解决方法

    在SAP系统中,ALV(Advanced List Viewer)是一种功能强大的报表工具,经常用于数据报表的生成和输出。但是在将ALV数据导出到Excel时,可能会出现数据丢失位数的问题,具体来说,就是最后一位数字被截断或丢失。这是...

    ALV.rar_SAP_abaP ALV_abap_alv_sap alv

    在SAP系统中,ALV(Accelerated List Viewer)是一种用于数据展示的工具,它提供了标准的表格形式来显示数据库查询...文件"ALV.txt"和"www.pudn.com.txt"可能包含了更具体的代码示例或进一步的信息,供你参考和学习。

    abap alv 总结

    示例程序包括:ALV 的 Grid 方式和 List 方式的示例程序、报表的自主开发设计的示例程序、选择屏幕上字段的示例程序等。ALV 的 Grid 方式和 List 方式的示例程序能够帮助开发者更好地理解 ALV 的基本使用方法。报表...

    SAP ALV功能总结

    本文将重点介绍`REUSE_ALV_GRID_DISPLAY`函数,并结合具体示例来探讨其在SAP ABAP编程中的应用。 #### 二、`REUSE_ALV_GRID_DISPLAY`函数详解 `REUSE_ALV_GRID_DISPLAY`是SAP ALV的一个核心函数模块,用于展示表格...

    ABAP ALV入门教程

    ABAP ALV是SAP系统中用于输出数据的高级列表查看器(Advanced List Viewer)的简称,它作为ABAP程序中的一个控件,用于实现更加丰富和用户友好的数据展示功能。ABAP ALV入门教程旨在为初学者提供一个易于理解和实践...

    SAP ABAP ALV分页显示

    本示例中的分页显示是通过将原始内表(IT_ZZP1)中的数据按需加载到另一个内表(IT_ZZP2)中实现的。具体步骤如下: 1. **原始数据准备**:创建了一个名为`ZZP`的结构类型,并初始化两个内表`IT_ZZP1`和`IT_ZZP2`。通过...

    SAP ALV 教程

    在这一部分,我们首先创建输出字段项目,然后编辑ALV输出项目,最后调用ALV表格显示函数。 3. 在CREATE_ALV_FIELDCATALOG中,通过调用REUSE_ALV_FIELDCATALOG_MERGE函数合并字段目录。其中I_STRUCTURE_NAME参数指定...

    ALV & SMARTFORMS 并分页

    在文档《代码.doc》中,可能会详细列出实现ALV和SMARTFORMS分页的源码示例和步骤,包括如何设置分页参数、如何触发分页事件、如何更新显示内容等。对于初学者,理解并掌握这些代码至关重要,因为它们可以帮助理解SAP...

    ALV 編輯,Update,Insert

    接着,我们定义了一个字段类别(`WA_ALV_FIELD`),用于指定哪些列可以被编辑(`WA_ALV_FIELD-edit='X'`),并设置了输出长度和字段名称等属性。通过向字段类别表(`WA_ALV_FIELDCAT`)添加这些字段,我们可以控制...

    abap_alv工具栏修改

    - **PBO (Process Before Output)** 和 **PAI (Process After Input)**:这两个过程是ALV处理中的关键步骤,分别发生在数据输出前和用户输入后。 #### 三、具体步骤 ##### 1. 创建GUI Status - **步骤**: 首先需要...

    ALV和SMARTFORMS实例

    在示例代码中,可以看到定义了与SMARTFORMS表格接口相同的变量,并将ALV中的数据(例如表头值)赋值给这些变量。这样,当用户点击打印时,SMARTFORM会根据接收到的数据生成相应的打印内容。 总的来说,ALV和...

    ABAP_ALV_知识整理

    ### ABAP_ALV_知识整理 #### 一、ALV简介 ##### 1、简介 ALV(SAP List Viewer)是一种在SAP系统中广泛使用的报表展示方式,也被称为ABAP表单浏览器。它的主要功能是提供一个标准化且简单的表格展示方式,使R/3...

    sample_tree alv

    根据提供的文件信息,本文将详细解释ALV(Application List Viewer)中的一个简单示例——`SIMPLE_TREE`,以及如何在ABAP环境中实现一个基本的树形结构展示。 ### ALV简介 ALV(Application List Viewer)是SAP...

    SAP编程ALV的开发手册

    在ALV.pdf文档中,可能详细讲解了以上步骤,并提供了示例代码来解释如何实现这些功能。此外,文档可能还涵盖了以下高级主题: - **ALV回调函数**: 这些函数允许开发者控制ALV的行为,例如`GET_ROW_COUNT`获取行数,...

    ALV 显示.docx

    在示例中,声明了三个变量`lt_fieldcat`、`wa_fieldcat`和`ls_layout`分别对应这三个数据结构。 2. **定义内表**: 在报告中,首先定义了一个名为`ty_alvshow`的内表类型,包含了多个字段,如销售凭证号`vbeln`、...

    alv grid参考文档

    - **过程前输出**:通过模块创建ALV Grid实例,检查容器实例是否已存在,若不存在则创建并刷新,最后调用显示方法。 ### 总结 ALV Grid是SAP系统中一个高度灵活的报表工具,适用于创建复杂的、可交互的报表。通过...

    SAP ALV学习

    **ALV简单示例**: 面向对象的ALV Grid需要在容器(FUNCTION的ALV)中创建。首先,创建一个SCREEN并在其中定义一个容器。接着,声明并初始化变量,如WCL_CONTAINER。然后,利用CL_GUI_ALV_GRID类实例化ALV,配置...

Global site tag (gtag.js) - Google Analytics