赛跑网

 找回密码
 注册

QQ登录

只需一步,快速开始

快捷登录

查看: 3718|回复: 22

赛跑网-ALV属性之FIELDCAT设置方法小结

  [复制链接]
发表于 2012-5-2 22:01:22 | 显示全部楼层 |阅读模式
     以ALV方式输出报表的时候,有一个属性是必须设置的,指定ALV要输出的字段和字段的名称(也就是fieldcat属性)。通常有两种方法来获取要输出的字段和名称:手动往内部表中添加、调用函数实现。
    1、手动添加:这种方法是要往内部表中添加要输出的字段,常用到这几个属性 col_pos (指定输出在第几列) fieldname  (待输出的字段) seltext_l (文本描述分为长短中三种)一般有了上面三个字段,就可以指定ALV的输出列的字段了。代码示例如下。(在调用函数 REUSE_ALV_GRID_DISPLAY 时,只需把t_fieldcat赋值给 EXPORTING 下的 it_fieldcat就可以了 )
  CLEAR w_fieldcat.
  w_fieldcat-col_pos = '1'.
  w_fieldcat-fieldname = 'BUKRS'.
  w_fieldcat-seltext_l = '公司代码'.
  APPEND w_fieldcat TO  t_fieldcat.
  CLEAR w_fieldcat.
  w_fieldcat-col_pos = '2'.
  w_fieldcat-fieldname = 'LIFNR'.
  w_fieldcat-seltext_l = '供应商代码'.
  APPEND w_fieldcat TO  t_fieldcat.
     2、调用函数实现 在调用函数之前,需要手工建立一个structure,该structure的结果必须和你存储待输出数据的内部表的结构一致! 然后调用函数 REUSE_ALV_FIELDCATALOG_MERGE ,通过这个函数实现把要显示输出的列,传给 it_field ,示例代码如下
游客,如果您要查看本帖隐藏内容请回复
  IF sy-subrc <> 0.
    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
            WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
  ENDIF.
如果我们要设置列的其他属性。就要loop循环it_field来实现了。
  第一种方法,对应字段比较少的内部表使用时比较方便,但如果要显示的字段很多的话,第二种方法更为实用!

最近访客

  • 91_ARES
    2022-03-23
  • austin
    2022-03-23




上一篇:赛跑网-使用REUSE_ALV_FIELDCATALOG_MERGE的注意点
下一篇:赛跑网-找表的一个小方法总结
本楼点评(0) 收起
发表于 2012-5-2 22:13:23 | 显示全部楼层
嗯,老师写得很好
本楼点评(0) 收起
发表于 2012-7-21 20:51:53 | 显示全部楼层
本楼点评(0) 收起
发表于 2012-9-25 22:22:00 | 显示全部楼层
fieldcat参数真多啊
本楼点评(0) 收起
发表于 2012-10-12 09:29:21 | 显示全部楼层
再复习一遍!
本楼点评(0) 收起
 楼主| 发表于 2012-10-12 13:47:03 | 显示全部楼层
石子儿 发表于 2012-10-12 09:29
再复习一遍!

温故而知新!
本楼点评(0) 收起
发表于 2012-10-14 12:43:49 | 显示全部楼层
看看
本楼点评(0) 收起
发表于 2012-11-7 19:08:11 | 显示全部楼层
复习
本楼点评(0) 收起
发表于 2012-12-25 14:49:34 | 显示全部楼层
学习
本楼点评(0) 收起
发表于 2013-3-21 12:44:05 | 显示全部楼层
我回复啦啦啦
本楼点评(0) 收起
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|联系我们|赛跑网 ( QQ:108519493QQfsq

GMT+8, 2024-3-29 01:25 , Processed in 0.268261 second(s), 58 queries .

Powered by 91SAP X3.4

© 2001-2023 91sap Team.

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