【问题标题】:Create Fieldcatalog for INCLUDE STRUCTURE types?为 INCLUDE STRUCTURE 类型创建 Fieldcatalog?
【发布时间】:2023-01-23 16:57:59
【问题描述】:

我用“类型”创建了一个结构:

TYPES: BEGIN OF ty_pers_bst.
     INCLUDE STRUCTURE zieb_pers_bst.
     TYPES: lifname TYPE zieb_lieferant-lifname,
   END OF ty_pers_bst.

data: i_structure_bst_add TYPE ty_pers_bst.

我现在想使用“LVC_FIELDCATALOG_MERGE”基于此结构创建字段目录。但是我得到错误,找不到 fieldcatalog。

关于如何根据我的“zieb_pers_bst”DDIC 结构将单个字段添加到预先存在的字段目录,是否有替代方法,或者我是否必须仅为该单个字段创建一个新的 DDIC 结构?

【问题讨论】:

  • 我通常使用REUSE_ALV_FIELDCATALOG_MERGE 来自动生成字段目录。但我不确定这是否能解决这种特殊情况下的问题。
  • 然后当然可以选择手动为该附加字段创建表格行。自己构建字段目录条目实际上并不那么复杂。

标签: abap alv


【解决方案1】:

试试这个示例:

TYPES: BEGIN OF ty_pers_bst.
        INCLUDE STRUCTURE a900.
        TYPES: lifname TYPE lfa1-name1,
       END OF ty_pers_bst.

DATA: i_structure_bst_add TYPE TABLE OF ty_pers_bst.

DATA: table TYPE REF TO data.
DATA: fcat  TYPE lvc_t_fcat.
CREATE DATA table LIKE i_structure_bst_add.
ASSIGN table->* TO FIELD-SYMBOL(<table>).
TRY.
    cl_salv_table=>factory( IMPORTING r_salv_table = DATA(salv_table)
                            CHANGING  t_table      = <table> ).
    fcat = cl_salv_controller_metadata=>get_lvc_fieldcatalog(
    r_columns      = salv_table->get_columns( )
    r_aggregations = salv_table->get_aggregations( ) ).
  CATCH cx_root.
ENDTRY.

【讨论】:

    猜你喜欢
    • 2012-11-01
    • 2022-01-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多