点击此处---> 群内免费提供SAP练习系统(在群公告中)
加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)
大家好
在我的ALV报告中,似乎活动仅部分起作用。
未获得自定义GUI状态或标准GUI状态,自定义GUI按钮也未显示。
只有空白的"页面顶部"区域可见。
**当不使用"事件"内部表并将例程传递给I_callback参数时出现相同的问题。
*&------------------------------------------------ --------------------- * *&表格DISPLAY_ALV *&------------------------------------------------ --------------------- * FORM display_alv。 通话功能'REUSE_ALV_GRID_DISPLAY' 出口 * i_callback_program = sy-cprog * i_callback_pf_status_set ='f_pf_status' * i_callback_user_command ='f_user_cmd' * i_callback_top_of_page ='f_top_of_page' * i_grid_title ='GRID DISPLAY' is_layout = wa_layout it_fieldcat = it_fldcat IT_EVENTS = it_event 桌子 t_outtab = it_final 例外情况 PROGRAM_ERROR = 1 其他= 2 。 如果sy-subrc <> 0。 *在这里实施适当的错误处理 万一。 ENDFORM。 " DISPLAY_ALV *&------------------------------------------------ --------------------- * *&表格ALV_EVENTS *&------------------------------------------------ --------------------- * 格式alv_events。 wa_event-name ='TOP_OF_PAGE'。 wa_event-form ='f_top_of_page'。 将wa_event附加到it_event。 清除wa_event。 wa_event-name ='USER_COMMAND'。 wa_event-form ='f_user_cmd'。 将wa_event附加到it_event。 清除wa_event。 wa_event-name ='PF_STATUS_SET'。 wa_event-form ='f_pf_status'。 将wa_event附加到it_event。 ENDFORM。 " ALV_EVENTS *&------------------------------------------------ --------------------- * *&表格F_TOP_OF_PAGE *&------------------------------------------------ --------------------- * 表格f_top_of_page。 数据:it_top TYPE slis_t_listheader, wa_top类似于it_top的行。 wa_top-typ ='H'。 wa_top-info ='材料和植物'。 附加wa_top到it_top。 通话功能" REUSE_ALV_COMMENTARY_WRITE" 出口 it_list_commentary = it_top。 ENDFORM。 " F_TOP_OF_PAGE *&------------------------------------------------ --------------------- * *&表格F_PF_STATUS *&------------------------------------------------ -------------------- * 表格f_pf_status。 设置PF-STATUS'NEWGUI'。 ENDFORM。 " F_PF_STSTUS *&------------------------------------------------ --------------------- * *&表格F_USER_CMD *&------------------------------------------------ --------------------- * 表格f_user_cmd。 数据:r_ucomm就像sy-ucomm, rs自私的TYPE slis_selfield。 案例r_ucomm。 当" PDF"。 执行get_pdf。 当"邮件"。 执行send_mail。 结束。 ENDFORM。
请帮助。 谢谢。alv-problem.jpg (264.4 kB)
好的。 我认为您的意思是希望ALV按钮出现在标题和网格之间。 使用下面的解决方案2可以做到这一点,但这意味着这些按钮将不会成为GUI状态的一部分,因为GUI状态按钮仅出现在屏幕顶部。 但这是一个复杂的解决方案,因此我建议将所有按钮都放在解决方案1的标题上方(在"应用程序工具栏"中)。
解决方案1:将按钮显示在应用程序工具栏中的最上方 一种简单的解决方案->创建一个GUI状态,例如ALV全屏GUI状态(复制程序SAPLKKBL的GUI状态STANDARD_FULLSCREEN)并添加自定义按钮。
解决方案2:在标题和网格之间显示按钮, 您必须在所谓的"容器"中显示网格->使用类CL_SALV_TABLE或CL_GUI_ALV_GRID代替功能模块REUSE_ALV_GRID_DISPLAY。
处理上方容器中的标题。 您可以使用CL_ABAP_BROWSER类显示文本。
通过CL_GUI_SPLITTER_CONTAINER类将两个容器排列成一个容器。
在dynpro屏幕内定义自定义容器元素。
例如(当然在PBO中):
您好 David Akuveedu ,
可以 您请激活ps状态或单击状态并尝试对其进行编辑。
否则,请编写我们的代码。
在调试中,它会停止在您的子例程中吗?
在以大写形式输入子例程名称时该怎么办? 是IT_EVENTS参数吗?
您是否激活了GUI状态? (更确切地说是程序的用户界面)
我从SE41复制了Standard_Fullscreen并将其重命名,并在"应用程序工具栏"部分添加了2个自定义按钮,然后将其激活。
标题空间已分配给Top_of_page事件,但内容未显示。
谢谢。
我现在使用具有相同代码的LIST Display FM获取,首先输出ALV(没有应用程序工具栏按钮和页面顶部内容),当我单击"返回"按钮然后获取"顶部"时 页面和GUI状态。
请找到图片。
我的错,我解释得不够好(答案已纠正)。 解决方案1是将按钮放在标题上方(在"应用程序工具栏"中)。 解决方案2是您想要的,但要复杂得多。
谢谢。
调试器正在进入子例程。
在IT_EVENTS中以大写字母输入了子例程。
激活SE80中的所有对象,并分别激活GUI状态。
但同样的问题,没有改变。
一周热门 更多>