二维码

[fmalv] 自定义fieldcate输出字段的alv控件实例

Twilight发表于 2014-01-18 14:51Twilight 最后回复于 2014-01-18 14:51 [复制链接] 4007 0

以航班表(spfli)为例,使用自定义fieldcate结构,通过ALV控件显示数据。

运行效果图:
自定义alv输出列.jpg


程序代码:
  1. REPORT  ZDEMON_002.
  2. TYPE-POOLS:SLIS.  "ALV使用的类库

  3. DATA: ST_FIELDCAT_LVC TYPE LVC_S_FCAT,
  4.       IT_FIELDCAT_LVC TYPE LVC_T_FCAT.

  5. DATA:WA_SPFLI TYPE SPFLI.
  6. DATA:IT_SPFLI TYPE STANDARD TABLE OF SPFLI.

  7. START-OF-SELECTION.
  8. PERFORM GET_DATA.
  9. PERFORM FIELDCATE.
  10. PERFORM ALV_DISPALY.

  11. FORM GET_DATA .
  12.   SELECT *
  13.   INTO CORRESPONDING FIELDS OF TABLE IT_SPFLI
  14.   FROM SPFLI.
  15. ENDFORM.                    " GET_DATA

  16. FORM FIELDCATE .
  17.   CLEAR ST_FIELDCAT_LVC."清空fieldcate结构,该结构里字段很多,防止前列的字段属性带入到后列
  18.   ST_FIELDCAT_LVC-COL_POS = 1. " Output column
  19.   ST_FIELDCAT_LVC-FIELDNAME = 'CARRID'." Field name of internal table field
  20.   ST_FIELDCAT_LVC-SCRTEXT_M = '航线承运人'. "Medium Field Label
  21.   APPEND ST_FIELDCAT_LVC TO IT_FIELDCAT_LVC.
  22.   CLEAR ST_FIELDCAT_LVC.
  23.   ST_FIELDCAT_LVC-COL_POS = 2.
  24.   ST_FIELDCAT_LVC-FIELDNAME = 'CONNID'. "注意引号里的字段不能小写,必须大写
  25.   ST_FIELDCAT_LVC-SCRTEXT_M = '航班链接'.
  26.   APPEND ST_FIELDCAT_LVC TO IT_FIELDCAT_LVC.
  27.   CLEAR ST_FIELDCAT_LVC.
  28.   ST_FIELDCAT_LVC-COL_POS = 3.
  29.   ST_FIELDCAT_LVC-FIELDNAME = 'CITYFROM'.
  30.   ST_FIELDCAT_LVC-SCRTEXT_M = '起飞城市'.
  31.   APPEND ST_FIELDCAT_LVC TO IT_FIELDCAT_LVC.
  32.   CLEAR ST_FIELDCAT_LVC.
  33.   ST_FIELDCAT_LVC-COL_POS = 1.
  34.   ST_FIELDCAT_LVC-FIELDNAME = 'CITYTO'.
  35.   ST_FIELDCAT_LVC-SCRTEXT_M = '目标城市'.
  36.   APPEND ST_FIELDCAT_LVC TO IT_FIELDCAT_LVC.
  37. ENDFORM.                    " FIELDCATE

  38. FORM ALV_DISPALY .
  39.   CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
  40.   EXPORTING
  41.     IT_FIELDCAT_LVC                   = IT_FIELDCAT_LVC
  42. *    I_DEFAULT                         = 'X'
  43.   TABLES
  44.     T_OUTTAB                          = IT_SPFLI.

  45. ENDFORM.                    " ALV_DISPALY
复制代码



回复

使用道具 举报

快速回帖

本版积分规则
您需要登录后才可以回帖 登录 | 注册有礼

快速回复 返回顶部 返回列表