2020-08-25 23:15发布
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好。
我真的需要你的帮助。
我已经实施了报告程序。
此报告程序在报告中至少显示120列。
当我通过单击excel格式的"本地文件(Ctrl + Shift + F9)"下载数据时,即使有更多列,excel文件也只包含99列。
我如何在Excel文件中将所有列都超过99列?
请不要让我单击"电子表格(Shift + F2)"。
我需要在按钮(本地文件)中使用它。
提前谢谢你们。
嗨,
希望以下线程会帮助您。
oo-alv-maximum-number- 列
谢谢。
我了解发生了什么情况。
实际上,您不是通过ABAP列表显示ALV,而是通过ALV网格控件显示ALV,因此 列数不受限制。
在ALV网格控件中,SAP通过使用参数I_EXPORT调用功能模块K_KKB_LIST_DISPLAY,重新实现了ABAP列表功能"导出为文件"(ctrl + shift + f9)。 ='X',它"在内存中显示ALV",因此最多可显示99列,并触发导出功能。
结论:无法通过"导出为文件"导出超过99列。
PS:要重现的代码:
DATA(ts_alv)= cl_abap_structdescr => get( p_components = VALUE#( 当i = 0时我+1当我<120 (名称= | A {i} | 类型= CAST#(cl_abap_typedescr => describe_by_name('SCARR-CARRID')))))。 DATA dref TYPE REF TO数据。 创建数据dref类型句柄ts_alv。 将dref-> *指定给FIELD-SYMBOL()。 创建数据表的dref。 字段符号类型标准表。 ASSIGN dref-> *至。 做120次。 将结构的组件sy-index分配给FIELD-SYMBOL()。 = | {sy-index} |。 ENDDO。 做10次。 将附加到。 ENDDO。 cl_salv_table =>工厂( 输入 r_salv_table = DATA(salv) 改变 t_table = )。 数据(函数)= salv-> get_functions()。 功能-> set_all()。 salv-> display()。
Sandra Rossi
感谢您的详细说明。
现在我可以知道SAP ABAP导出为文件的工作方式。
我认为在这种情况下,解决方法是创建自己的下载按钮并自行处理数据下载。 另一种方法是处理事件after_salv_function并将数据保存到同一路径以覆盖下载的文件。
最多设置5个标签!
嗨,
希望以下线程会帮助您。
oo-alv-maximum-number- 列
谢谢。
我了解发生了什么情况。
实际上,您不是通过ABAP列表显示ALV,而是通过ALV网格控件显示ALV,因此 列数不受限制。
在ALV网格控件中,SAP通过使用参数I_EXPORT调用功能模块K_KKB_LIST_DISPLAY,重新实现了ABAP列表功能"导出为文件"(ctrl + shift + f9)。 ='X',它"在内存中显示ALV",因此最多可显示99列,并触发导出功能。
结论:无法通过"导出为文件"导出超过99列。
>PS:要重现的代码:
Sandra Rossi
感谢您的详细说明。
现在我可以知道SAP ABAP导出为文件的工作方式。
我认为在这种情况下,解决方法是创建自己的下载按钮并自行处理数据下载。 另一种方法是处理事件after_salv_function并将数据保存到同一路径以覆盖下载的文件。
一周热门 更多>