【问题标题】:How to set data length in ALV?如何在 ALV 中设置数据长度?
【发布时间】:2012-10-12 12:46:53
【问题描述】:

我有来自 HTEXT 的“Müşteri siparişinden müşteri siparişine nakil kaydı”文本。

HTEXT 是一个 25 个字符的字段,您知道。但是当我使用“WRITE”命令时,它会写成“Müşteri siparişinden müşteri siparişine nakil kaydı”。

我更改了 ALV 的代码。然后它在 ALV 中显示文本为“Müşteri siparişinden müş”。

如您所见,“Müşteri siparişinden müş”文本有 25 个字符。

如何更改屏幕上显示的数据长度?

我搜索了我的问题,但我无法集成我自己的代码。我的代码如下。

TABLES : mseg, mkpf, zrapor_mseg_mkpf_alv .

CONSTANTS : gc_alv_item_table TYPE slis_tabname VALUE 'GT_ALV' ,                                    "ALV itab name
            gc_program_name LIKE sy-repid VALUE 'ZRAPOR_MSEG_MKPF_ALV' , "Program name
            gc_structure_name LIKE dd02l-tabname VALUE 'ZRAPOR_MSEG_MKPF_ALV'. "Structure name

DATA : gt_alv TYPE TABLE OF zrapor_mseg_mkpf_alv WITH HEADER LINE .
DATA : gt_flcat TYPE slis_t_fieldcat_alv . "Field Catalog is defined
DATA : gwa_flcat LIKE LINE OF gt_flcat . "Field catalog's work area
DATA : gwa_flcat2 LIKE LINE OF gt_flcat .
DATA : gs_alv LIKE LINE OF gt_alv .

FORM make_field_catalog .
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
        EXPORTING
          i_program_name         = gc_program_name
          i_internal_tabname     = gc_alv_item_table
          i_structure_name       = gc_structure_name
        CHANGING
          ct_fieldcat            = gt_flcat
        EXCEPTIONS
          inconsistent_interface = 1
          program_error          = 2
          OTHERS                 = 3.
      DELETE gt_flcat WHERE fieldname = 'SOBKZ'.
ENDFORM.

【问题讨论】:

  • 你说得不太对劲。如果 HTEXT 是一个 25 个字符的字段,它怎么能包含超过 25 个字符?您能否为您的问题添加更多细节?
  • vwegert 是对的,您不能将超过 25 个字符的内容放入正好 25 个字符长的字段中。内容总是会被截断。
  • 我搜索了“t157h”表,发现htext下的一些数据超过了25个字符。
  • @cethint 以及T157H表中字段HTEXT的字段类型有什么长度?
  • TEXT60 域 -> 60 个字符字段

标签: listview abap datalength


【解决方案1】:

嗯,这是一个非常奇怪的行为,因为 ALV 网格应该显示整个值。好吧,因为我只看到您帖子中的代码,所以我认为您已经编写了一个字段目录(或没有),您可以在其中指定要显示的长度。像这样的:

data wa_fieldcat like line of gt_flcat. " The fieldcat line to append

wa_fieldcat-fieldname = 'MATNR'.
wa_fieldcat-ref_fieldname = 'MATNR'.
wa_fieldcat-ref_tabname = 'MARA'.

wa_fieldcat-outputlen = 10. " Specify the length

wa_fieldcat-col_pos = cont.
append wa_fieldcat to gt_flcat.

clear wa_fieldcat.
add 1 to cont.

...

或者您在 ALV 结构中使用的变量的长度可能为 25。检查它或发布您的代码,看看会发生什么。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-10-15
    • 1970-01-01
    • 2012-04-18
    • 2013-04-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-11
    相关资源
    最近更新 更多