ABAP ALV详细教程(一)

本文详细介绍了如何使用ABAP编程语言中的ALV(Application List Viewer)控件来展示和格式化数据。从变量声明到内表定义,再到数据读取及ALV格式设置,文章提供了完整的步骤和代码示例,帮助读者理解和掌握ALV控件的基本用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ABAP ALV详细教程(一)


第一步:第一步申明变量

TYPE-POOLS:slis.
       DATA : lt_fieldcat TYPE slis_t_fieldcat_alv,
              wt_fieldcat TYPE slis_fieldcat_alv,
              ls_layout TYPE slis_layout_alv.
              

第二步:定义内表

TYPES:BEGIN OF lt_xs,
  vbeln TYPE vbak-vbeln,
  matnr TYPE vbap-matnr,
  END OF lt_xs.
  DATA :gw_xs TYPE lt_xs,
        gt_xs TYPE TABLE OF lt_xs.

第三步:读取数据

SELECT vbak~vbeln matnr FROM vbak
      LEFT JOIN vbap
      on vbak~vbeln = vbap~vbeln
      INTO TABLE gt_xs.
      

第四步:ALV格式控制

  ls_layout-zebra = 'X'.
  ls_layout-detail_popup = 'X'.
  ls_layout-detail_titlebar = '详细信息'.
  ls_layout-f2code = '&ETA'.
  ls_layout-colwidth_optimize = 'X'.
   
  wt_fieldcat-fieldname = 'VBELN'.
  wt_fieldcat-col_pos  = '1'.
  wt_fieldcat-key = 'X'.
  wt_fieldcat-datatype = 'CHAR'.
  wt_fieldcat-outputlen = '10'.
  wt_fieldcat-seltext_m = '销售凭证'.
  APPEND wt_fieldcat TO lt_fieldcat.

  wt_fieldcat-fieldname = 'MATNR'.
  wt_fieldcat-col_pos  = '2'.
  wt_fieldcat-key = 'X'.
  wt_fieldcat-datatype = 'CHAR'.
  wt_fieldcat-outputlen = '18'.
  wt_fieldcat-seltext_m = '物料号'.
  APPEND wt_fieldcat TO lt_fieldcat.

第五步:ALV数据
显示

CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
   EXPORTING
*     I_INTERFACE_CHECK                 = ' '
*     I_BYPASSING_BUFFER                = ' '
*     I_BUFFER_ACTIVE                   = ' '
*     I_CALLBACK_PROGRAM                = ' '
*     I_CALLBACK_PF_STATUS_SET          = ' '
*     I_CALLBACK_USER_COMMAND           = ' '
*     I_CALLBACK_TOP_OF_PAGE            = ' '
*     I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*     I_CALLBACK_HTML_END_OF_LIST       = ' '
*     I_STRUCTURE_NAME                  =
*     I_BACKGROUND_ID                   = ' '
*     I_GRID_TITLE                      =
*     I_GRID_SETTINGS                   =
     IS_LAYOUT                         = ls_layout
     IT_FIELDCAT                       = lt_fieldcat
*     IT_EXCLUDING                      =
*     IT_SPECIAL_GROUPS                 =
*     IT_SORT                           =
*     IT_FILTER                         =
*     IS_SEL_HIDE                       =
*     I_DEFAULT                         = 'X'
*     I_SAVE                            = ' '
*     IS_VARIANT                        =
*     IT_EVENTS                         =
*     IT_EVENT_EXIT                     =
*     IS_PRINT                          =
*     IS_REPREP_ID                      =
*     I_SCREEN_START_COLUMN             = 0
*     I_SCREEN_START_LINE               = 0
*     I_SCREEN_END_COLUMN               = 0
*     I_SCREEN_END_LINE                 = 0
*     I_HTML_HEIGHT_TOP                 = 0
*     I_HTML_HEIGHT_END                 = 0
*     IT_ALV_GRAPHICS                   =
*     IT_HYPERLINK                      =
*     IT_ADD_FIELDCAT                   =
*     IT_EXCEPT_QINFO                   =
*     IR_SALV_FULLSCREEN_ADAPTER        =
*   IMPORTING
*     E_EXIT_CAUSED_BY_CALLER           =
*     ES_EXIT_CAUSED_BY_USER            =
    TABLES
      t_outtab                          = gt_xs
   EXCEPTIONS
     PROGRAM_ERROR                     = 1
     OTHERS                            = 2
            .
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值