ALV GRID的参考文档(V)
2007-12-03 15:19
323 查看
打印调整
我们通过方法’set_table_for_first_display’的参数’is_print’来调整打印的格式。
在ALV GRID的预览中PRNTLSTINF的效果是看不到的。如果你先产生一个SPOOL请求,通过SP01你可以看到效果。
筛掉不想要的功能按钮
在alv grid中我们可能需要筛出一些不想要的功能按钮。如果想要筛出按钮需要填充一个类型为‘UI_FUNCTIONS’的内表,并把它传送给方法’set_table_for_first_display‘的参数‘IT_TOOLBAR_EXCLUDING‘
按钮的功能代码的值可以通过‘cl_gui_alv_grid’的常量属性获得,或者在事件处理方法’after_user_command’中获得。如果想隐掉整个工具条可以设置layout structure的NO_TOOLBAR参数。
FORM exclue_tb_functions CHANGIN pt_exclude TYPE ui_functions.
DATA: ls_exclude TYPE ui_func.
Ls_exclude = cl_gui_alv_grid=>mc_fc_maximum.
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_minimum.
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_subtot
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_sum
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_average
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_mb_sum.
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_mb_subtot
APPEND ls_exclude TO pt_exclude.
ENDFORM.
这里以‘MC_FC_’便是按钮的功能代码,以’MC_MB_’开头的是一些包含子功能菜单的功能菜单。最后一个排除了包含在这个菜单下的所有子功能菜单。
非事件的其他功能
到此已经介绍了如何设置ALV GRID的格式。下面将更加深入的研究ALV GRID的其他功能。
ALV GRID显示后改变field catalog和格式设置。下面的四个方法可以实现这些功能:
FOR the fieldcatalog: get_frontend_fieldcatalog
Set_frontend_fieldcatalog
For the layout: get_frontend_layout
Set_frontend_layout
使用这些方法随时都可以得到设置信息并改变他:
DATA:ls_fcat TYPE lvc_s_fcat,
Lt_fcat TYPE lvc_t_fcat,
Ls_layout TYPE lvc_s_layo.
CALL METHOD gr_alvgrid->get_frontend_fieldcatalog
IMPORTING
Et_fieldcatalog = lt_fcat[].
LOOP AT lt_fcat INTO ls_fcat.
IF ls_fcat-fieldname = ‘PAYMENTSUM’.
Ls_fcat-no_out = space.
MODIFY lt_fcat FROM ls_fcat.
ENDIF.
ENDLOOP.
CALL METHOD gr_alvgrid->set_frontend_fieldcatalog
EXPORTING
Et_fieldcatalog = lt_fcat[].
CALL METHOD gr_alvgrid->get_frontend_layout
IMPORTING
Es_layout = ls_layout.
Ls_layout-grid_title = ‘Flights(with payment sums’.
CALL METHOD gr_alvgrid->set_frontend_layout
EXPORTING
Es_layout = ls_layout.
我们通过方法’set_table_for_first_display’的参数’is_print’来调整打印的格式。
Field name | Description | Value range |
GRPCHGEDIT | 用户可以用来定义预览的方式。如果设置了这个字段,跳向SAP LIST VIEWER就会相应的被设置。在排序对话框中用户可以设定排序方式。使用SORT TABLE可以动态的设定格式。 | SPACE,’X’ |
NO_COLWOPT | 在打印之前ALV GRID CONTROL会自动调整每列的宽度。如果设置了这个值缺省的设置就会被取消。 | SPACE,’X’ |
PRNTLSTINF | 打印列表信息。设置了这个值排序,子汇总和筛选都将会被作为统计信息显示在列表中 | SPACE,’X’ |
PRNT_TITLE | 定义grid title在什么时候显示 | 0:在PRINT_TOP_OF_LIST 之前。 1:在PRINT_TOP_OF_LIST 之后 2:在PRINT_TOP_OF_PAGE 之前 3:在PRINT_TOP_OF_PAGE 之后 |
RESERVELNS | Print_end_of_page保留的行数 | 自然数 |
筛掉不想要的功能按钮
在alv grid中我们可能需要筛出一些不想要的功能按钮。如果想要筛出按钮需要填充一个类型为‘UI_FUNCTIONS’的内表,并把它传送给方法’set_table_for_first_display‘的参数‘IT_TOOLBAR_EXCLUDING‘
按钮的功能代码的值可以通过‘cl_gui_alv_grid’的常量属性获得,或者在事件处理方法’after_user_command’中获得。如果想隐掉整个工具条可以设置layout structure的NO_TOOLBAR参数。
FORM exclue_tb_functions CHANGIN pt_exclude TYPE ui_functions.
DATA: ls_exclude TYPE ui_func.
Ls_exclude = cl_gui_alv_grid=>mc_fc_maximum.
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_minimum.
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_subtot
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_sum
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_fc_average
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_mb_sum.
APPEND ls_exclude TO pt_exclude.
Ls_exclude = cl_gui_alv_grid=>mc_mb_subtot
APPEND ls_exclude TO pt_exclude.
ENDFORM.
这里以‘MC_FC_’便是按钮的功能代码,以’MC_MB_’开头的是一些包含子功能菜单的功能菜单。最后一个排除了包含在这个菜单下的所有子功能菜单。
非事件的其他功能
到此已经介绍了如何设置ALV GRID的格式。下面将更加深入的研究ALV GRID的其他功能。
ALV GRID显示后改变field catalog和格式设置。下面的四个方法可以实现这些功能:
FOR the fieldcatalog: get_frontend_fieldcatalog
Set_frontend_fieldcatalog
For the layout: get_frontend_layout
Set_frontend_layout
使用这些方法随时都可以得到设置信息并改变他:
DATA:ls_fcat TYPE lvc_s_fcat,
Lt_fcat TYPE lvc_t_fcat,
Ls_layout TYPE lvc_s_layo.
CALL METHOD gr_alvgrid->get_frontend_fieldcatalog
IMPORTING
Et_fieldcatalog = lt_fcat[].
LOOP AT lt_fcat INTO ls_fcat.
IF ls_fcat-fieldname = ‘PAYMENTSUM’.
Ls_fcat-no_out = space.
MODIFY lt_fcat FROM ls_fcat.
ENDIF.
ENDLOOP.
CALL METHOD gr_alvgrid->set_frontend_fieldcatalog
EXPORTING
Et_fieldcatalog = lt_fcat[].
CALL METHOD gr_alvgrid->get_frontend_layout
IMPORTING
Es_layout = ls_layout.
Ls_layout-grid_title = ‘Flights(with payment sums’.
CALL METHOD gr_alvgrid->set_frontend_layout
EXPORTING
Es_layout = ls_layout.
相关文章推荐
- ALV GRID参考文档 ( 8 ) - 插入超级链接
- ALV GRID 参考文档 ( 15 ) - 单元输入事件
- ALV GRID参考文档(II)
- ALV GRID参考文档 ( 3 ) - 建立field catalog
- ALV GRID参考文档 ( 11 ) -表单中显示按钮
- ALV GRID参考文档(III)
- ALV GRID的参考文档 ( 4 ) - 显示格式的调整
- ALV GRID参考文档 ( 13 ) - ALV控件中的内容可编辑
- ALV GRID的参考文档 ( 6 ) - 设置排序条件
- ALV GRID的参考文档(九)
- ALV GRID的参考文档(IV)
- ALV GRID的参考文档(VI)
- WAS6.1 参考文档
- SWF文档参考
- Android API文档,最好的学习参考。
- IBM TIM 开发接口参考文档地址
- sublime+gist插件的参考文档
- 组策略参考文档1-共享打印机
- Spring4.x官方参考文档中文版——第21章 Web MVC框架(17)
- Mybatis官方参考文档---mybatis-3.2.7.pdf