点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
我正在尝试在alv网格显示中显示2行多标题,其中每个主标题应占据2个子标题,如下所示:
报告ZSAM8消息标识zz。 TYPE-POOLS:slis。 " SLIS包含所有ALV数据 类型:BEGIN OF ty_report, jan_deb TYPE UMXXS, jan_cred TYPE UMXXH, feb_deb TYPE UMXXS, feb_cred TYPE UMXXH, END OF ty_report, tt_report ty_report的类型表。 数据:带有标题行的lt_report类型tt_report, WA类型ty_report, LFC1的LFC1_table TYPE标准表, 修复型sy-repid, wa_deb类型SALDV, wa_cred TYPE SALDV, it_fieldcat TYPE slis_t_fieldcat_alv, wa_fieldcat TYPE slis_fieldcat_alv, x_events类型slis_alv_event, it_events类型为SLIS_T_EVENT, L_LAYOUT类型为slis_layout_alv。 FIELD-SYMBOLS:与lt_report类似, 喜欢LFC1_table的行。 从LFC1中选择*到表LFC1_table的相应字段中,其中bukrs ='1000'并且GJAHR = 2003。 循环在LFC1_table分配 。 将初始行追加到lt_report ASSIGNING 。 如果 -UM01S> -UM01H。 -jan_deb = -UM01S- -UM01H。 其他。 -jan_cred = -UM01H- -UM01S。 万一。 如果 -UM02S> -UM02H。 -feb_deb = -UM02S- -UM02H。 其他。 -feb_cred = -UM02H- -UM02S。 万一。 endLOOP。 repid = sy-repid。 *建立现场目录 wa_fieldcat-fieldname ='JAN_DEB'。 数据表中的字段名 wa_fieldcat-seltext_l ='deb'。 "输出中的ColuAN_DEBmn描述 wa_fieldcat-col_pos = 1。 将wa_fieldcat附加到it_fieldcat。 wa_fieldcat-fieldname ='JAN_CRED'。 wa_fieldcat-seltext_l ='cred'。 wa_fieldcat-col_pos = 1。 将wa_fieldcat附加到it_fieldcat。 wa_fieldcat-fieldname ='FEB_DEB'。 数据表中的字段名 wa_fieldcat-seltext_l ='deb'。 "输出中的列描述 wa_fieldcat-col_pos = 2。 将wa_fieldcat附加到it_fieldcat。 wa_fieldcat-fieldname ='FEB_CRED'。 wa_fieldcat-seltext_l ='cred'。 wa_fieldcat-col_pos = 2。 将wa_fieldcat附加到it_fieldcat。 调用函数" REUSE_ALV_GRID_DISPLAY" 出口 i_callback_program =快速 i_callback_user_command ='HANDLE_USER_COMMAND' i_callback_html_top_of_page ='HTML_TOP_OF_PAGE' it_fieldcat = it_fieldcat 桌子 t_outtab = lt_report 例外情况 程序错误= 1 其他= 2。 表格HTML_TOP_OF_PAGE使用LW_DOCUMENT类型引用到CL_DD_DOCUMENT。 数据:DOCTABLE TYPE REF CL_DD_TABLE_ELEMENT, COL1_T1类型参考CL_DD_AREA, 将COL2_T1类型参考为CL_DD_AREA。 *添加具有五列的快速表格 呼叫方法LW_DOCUMENT-> ADD_TABLE 出口 NO_OF_COLUMNS = 12 边界='1' WITH_HEADING ='X' 宽度='150%' 输入 TABLE = DOCTABLE。 *填充行中的列 呼叫方法DOCTABLE-> ADD_COLUMN 出口 宽度='8%' 输入 COLUMN = COL1_T1。 *填充行中的列 呼叫方法DOCTABLE-> ADD_COLUMN 出口 宽度='8%' 输入 COLUMN = COL2_T1。 调用方法为DOCTABLE-> NEW_ROW。 呼叫方法COL1_T1-> ADD_TEXT 出口 TEXT ='JAN'。 呼叫方法COL2_T1-> ADD_TEXT 出口 TEXT ='FEB'。 ENDFORM。 " html_top_of_page
如您所见,我正在尝试使用html_top_of_page,但主要标题位于顶部,而不与子标题内联。 我知道您也可以使用alv_list_display,但是我需要按顺序显示网格才能在子标题上使用过滤和排序。 主标题不需要使用过滤或排序或其他任何方法,但它们必须位于子标题的上方并与它们内联,其中每个标题应占据两个子标题。 整个报告可以使用一行滚动吗? 如果主标题是自动居中的,那就更好了。 如何实现呢?
ALV中只有一个列标题,例如在Excel中执行多行标题是不可行的。 在SCN上已多次问过此问题。 Google->" alv标头多行"
"页面顶部"是整个ALV的单独标头,它根本不与列对齐。
一周热门 更多>