ABAP中我用OO ALV,调用方法SET_TABLE_FOR_FIRST_DISPLAY 后,为何没有保存格式按钮?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ABAP中我用OO ALV,调用方法SET_TABLE_FOR_FIRST_DISPLAY 后,为何没有保存格式按钮?相关的知识,希望对你有一定的参考价值。

参考技术A ooalv 标准的按钮 是没有这个保存按钮的,你可以见一个类 实现它的 HANDLE_TOOLBAR 事件,然后debug该事件,进去看CL_ALV_EVENT_TOOLBAR_SET-》MT_TOOLBAR,这个内表中存了所有的标准按钮,内表中是没有保存按钮的。你可以将你要的按钮加到这个内表中就可以了!追问

麻烦你写个可以保存ALV格式的代码,加50分.

追答

你指的是 保存此时ALV 的layout的吗?

参考技术B 看编的程序是不是把保存按钮隐藏了。SET PF-STATUS XXXX你编的gui status名,然后后面有这个的话EXCLUDING rt_extab,就是你设置了隐藏按钮。 参考技术C SET_TABLE_FOR_FIRST_DISPLAY
的参数:[I_SAVE ]需要进行设置。
I_SAVE = ‘X’。追问

我可以肯定没有隐藏保存按钮,也设置了I_SAVE = 'X'.但就是没有保存按钮,请高手再想想,用什么方法调出保存按钮.

追答

你把I_SAVE设置成'A'试试看。不然你把你调用这个方法的代码贴上来看看。

参考技术D OOALV的一般情况下是使用STATUS的按钮的,你检查一下PBO事件中,你多半没有打开SET PF-STATUS XXXX.
注意要copy或者create一个ststus.
第5个回答  2011-03-14 你指的是直接一个保存Layout的保存按钮?
试一下有一个下拉框的,里面有layout的控制。

20170218 OO-ALV标准工具栏按钮

 
图标与对应的 功能码
明细 &DETAIL
检查 &CHECK
刷新 &REFRESH
剪切 &LOCAL&CUT
复制文本 &LOCAL&COPY
插入总览 &MB_PASTE
撤销 &LOCAL&UNDO
附加行   &LOCAL&APPEND
插入行 &LOCAL&INSERT_ROW
删除行 &LOCAL&DELETE_ROW
复制行   &LOCAL&COPY_ROW
降序 &SORT_DSC
升序 &SORT_ASC
查找 &FIND
查找下一个 &FIND_MORE
设置筛选器 &FILTER
总计 &MB_SUM 
小计 &SUBTOT /&MB_SUBTOT
打印 &PRINT
视图 &VIEW
输出 &MB_EXPORT
格式 &MB_VARIANT
显示图形 &GRAPH
最终用户文档 &INFO
 
排除按钮,用的时候直接拷贝
  "明细
  ls_exclude = ‘&DETAIL‘.
  APPEND ls_exclude TO pt_exclude.
 
  "检查
  ls_exclude = ‘&CHECK‘.
  APPEND ls_exclude TO pt_exclude.
 
  "刷新
  ls_exclude = ‘&REFRESH‘.
  APPEND ls_exclude TO pt_exclude.
 
  "剪切
  ls_exclude = ‘&LOCAL&CUT‘.
  APPEND ls_exclude TO pt_exclude.
 
  "复制文本
  ls_exclude = ‘&LOCAL&COPY‘.
  APPEND ls_exclude TO pt_exclude.
 
  "插入总览
  ls_exclude = ‘&MB_PASTE‘.
  APPEND ls_exclude TO pt_exclude.
 
  "撤销
  ls_exclude = ‘&LOCAL&UNDO‘.
  APPEND ls_exclude TO pt_exclude.
 
  "附加行
  ls_exclude = ‘&LOCAL&APPEND‘.
  APPEND ls_exclude TO pt_exclude.
 
  "插入行
  ls_exclude =‘&LOCAL&INSERT_ROW‘.
  APPEND ls_exclude TO pt_exclude.
 
  "删除行
  ls_exclude =‘&LOCAL&DELETE_ROW‘.
  APPEND ls_exclude TO pt_exclude.
 
  "复制行
  ls_exclude =‘&LOCAL&COPY_ROW‘.
  APPEND ls_exclude TO pt_exclude.
 
  "降序
  ls_exclude = ‘&SORT_DSC‘.
  APPEND ls_exclude TO pt_exclude.
 
  "升序
  ls_exclude = ‘&SORT_ASC‘.
  APPEND ls_exclude TO pt_exclude.
 
  "查找
  ls_exclude = ‘&FIND‘.
  APPEND ls_exclude TO pt_exclude.
 
  "查找下一个
  ls_exclude = ‘&FIND_MORE‘.
  APPEND ls_exclude TO pt_exclude.
 
  "设置筛选器
  ls_exclude = ‘&FILTER‘.
  APPEND ls_exclude TO pt_exclude.
 
  "总计
  ls_exclude = ‘&MB_SUM ‘.
  APPEND ls_exclude TO pt_exclude.
 
  "小计
  ls_exclude = ‘&SUBTOT‘.
  APPEND ls_exclude TO pt_exclude.
 
  "打印
  ls_exclude = ‘&PRINT‘.
  APPEND ls_exclude TO pt_exclude.
 
  "视图
  ls_exclude = ‘&VIEW‘.
  APPEND ls_exclude TO pt_exclude.
 
  "输出
  ls_exclude = ‘&MB_EXPORT‘.
  APPEND ls_exclude TO pt_exclude.
 
  "格式
  ls_exclude = ‘&MB_VARIANT‘.
  APPEND ls_exclude TO pt_exclude.
 
  "显示图形
  ls_exclude = ‘&GRAPH‘.
  APPEND ls_exclude TO pt_exclude.
 
  "最终用户文档
  ls_exclude = ‘&INFO‘.
  APPEND ls_exclude TO pt_exclude.

 

功能代码: 函数文本: 图标名称:

&ETA         细节 ICON_SELECT_DETAIL
&EB9         调用报告 ICON_TABLE_SETTINGS
&REFRESH 刷新 ICON_REFRESH
&ALL 全部选择 ICON_SELECT_ALL
&SAL 取消全选 ICON_DESELECT_ALL 
&OUP 按升序排列 ICON_SORT_UP
&ODN 按降序排列 ICON_SORT_DOWN 
&ILT 设置过滤器 ICON_FILTER 
&UMC 总计 ICON_SUM 
&SUM 小计 ICON_INTERMEDIATE_SUM 
&RNT_PREV 打印预览 ICON_LAYOUT_CONTROL 
&VEXCEL Microsoft Excel ICON_XLS
&AQW 字处理... ICON_WORD_PROCESSING 
%PC 本地文件 ... ICON_EXPORT
%SL 邮件收件人 ICON_MAIL
&ABC ABC 分析 ICON_ABC 
&GRAPH 图形 ICON_GRAPHICS 
&OL0 更改布局... ICON_ALV_VARIANTS 
&OAD 选择格式... ICON_ALV_VARIANT_CHOOSE 
&AVE 保存格式... ICON_ALV_VARIANT_SAVE 
&INFO 信息 ICON_INFORMATION

以上是关于ABAP中我用OO ALV,调用方法SET_TABLE_FOR_FIRST_DISPLAY 后,为何没有保存格式按钮?的主要内容,如果未能解决你的问题,请参考以下文章

ABAP OO ALV实操

abap 用的OO ALV 显示的 怎么可以修改标题

ABAP学习(11):ALV显示之OO ALV使用示例

ABAP_ALV_Function方式与OO方式(较为简单普通的ALV)

OO ALV 问题?

[SAP][ABAP] 关于用FUNCTION实现ALV中选择多列的实现