gpt4 book ai didi

abap - 表格控件不显示所有行

转载 作者:行者123 更新时间:2023-12-04 13:41:01 27 4
gpt4 key购买 nike

我遇到一个问题,即我的表格控件的所有行并未显示在 ABAP 740 SP13 中。

例如,我有一个包含这两行的表格:

Values of LT_TRANSFER_CONFIRM_TC

这是执行此代码的表的状态:

CALL SCREEN 0300 STARTING AT 10 5
ENDING AT 85 16.

这会立即进入我的 Process Before Output 代码:

*----------------------------------------------------------------------*
* PROCESS BEFORE OUTPUT *
*----------------------------------------------------------------------*
PROCESS BEFORE OUTPUT.
MODULE status_0300.
LOOP AT lt_transfer_confirm_tc
INTO ls_transfer_confirm_tc
WITH CONTROL tc_transfer_confirm
CURSOR tc_transfer_confirm-current_line.
MODULE tc_transfer_confirm_get_lines.
ENDLOOP.

status_0300 是:

MODULE status_0300 OUTPUT.
SET PF-STATUS 'STATUS_0300'.
" Confirm Material Number Count
SET TITLEBAR 'T05'.
ENDMODULE.

并且是tc_transfer_confirm_get_lines:

MODULE tc_transfer_confirm_get_lines OUTPUT.
g_tc_transfer_confirm_lines = sy-loopc.
ENDMODULE.

在我的 PBO 循环的第一次迭代结束时,ls_transfer_confirm_tc 值与 lt_transfer_confirm_tc 表的第一行匹配,tc_transfer_confirm-current_line 1g_tc_transfer_confirm_lines(在tc_transfer_confirm_get_lines中)设置为10

循环的第二次迭代永远不会处理。光标从 ENDLOOP(从第一次迭代开始)跳到 CURSOR tc_transfer_confirm-current_line. 行(因为它是 LOOP 的结尾)语句),最后到 ENDLOOP,而不会在 MODULE tc_transfer_confirm_get_lines 行上停止。本次循环结束时,ls_transfer_confirm_tc为initial,tc_transfer_confirm-current_line仍为1g_tc_transfer_confirm_lines仍为10。一直以来,lt_transfer_confirm_tc 表中仍然有两行,如问题顶部的图片所示。

此时屏幕显示如下:

Table Control displayed by SCREEN 0300

我不确定为什么这个循环不处理我表格的第二行,因此不在屏幕上显示它。

谢谢。

最佳答案

问题是我从来没有设置 tc_transfer_confirm-lines 的值,因此该值始终为 1。

以下代码运行成功:

*----------------------------------------------------------------------*
* PROCESS BEFORE OUTPUT *
*----------------------------------------------------------------------*
PROCESS BEFORE OUTPUT.
MODULE status_0300.
MODULE tc_trnsfr_cnfrm_change_tc_attr.
LOOP AT lt_transfer_confirm_tc
INTO ls_transfer_confirm_tc
WITH CONTROL tc_transfer_confirm
CURSOR tc_transfer_confirm-current_line.
MODULE tc_transfer_confirm_get_lines.
ENDLOOP.

使用新模块tc_trnsfr_cnfrm_change_tc_attr:

*&SPWIZARD: OUTPUT MODULE FOR TC 'TC_TRANSFER_CONFIRM'. DO NOT CHANGE THIS LINE!
*&SPWIZARD: UPDATE LINES FOR EQUIVALENT SCROLLBAR
MODULE tc_trnsfr_cnfrm_change_tc_attr OUTPUT.
DESCRIBE TABLE lt_transfer_confirm_tc LINES tc_transfer_confirm-lines.
ENDMODULE.

关于abap - 表格控件不显示所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38229547/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com