REUSE_ALV_FIELDCATALOG_MERGE - ooxxvv/MySAPnotes GitHub Wiki

PageOutline {{{#!comment -------------------- 以上的部份是固定的,不要變動 ----- --------------------------------------- 在建立連結時,請標明連結的頁面類型,例如:wiki:WikiStart,而不要只用 WikiStart ----- }}}

REUSE_ALV_FIELDCATALOG_MERGE

  • Create field catalog from dictionary structure or internal table 。
  • 根據輸入的 Table name (Structure, View) 取得 DDIC 中所設定的各項屬性。

EXPORTING (Import)

IMPORTING (Export)

i_program_name

  • 如果要捉程式中 Internal table 的結構,在此指定程式名稱

i_internal_tabname

  • 如果要捉程式中 Internal table 的結構,在此指定 Internal table 名稱
  • Internal table 的欄位要用 like 來宣告,不然會捉不到設定

i_inclname

  • 如果要捉程式中 Internal table 的結構,若 Include 太多支,可在此指定宣告 Internal table 的 Include 程式名稱

i_structure_name

  • DDIC 的 Table name (或 Structure, View ...)

  • i_inclname

TABLES

CHANGING

  • CT_FIELDCAT => 傳回的 Field 屬性。
  • TYPE SLIS_T_FIELDCAT_ALV => 其實是一個 Internal table 型態的變數
  • 需先宣告 TYPE-POOLS slis , 才會有這個 Type

EXCEPTIONS

Attributes

Methods

Code

{{{#!abap DATA: l_repid LIKE sy-repid. DATA: l_itabname TYPE slis_tabname.

l_repid = sy-repid. l_itabname = 'IT_DATA'.

CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE' EXPORTING i_program_name = l_repid i_internal_tabname = l_itabname i_inclname = 'ZIPAD1017TOP' CHANGING ct_fieldcat = it_fieldcat[] EXCEPTIONS inconsistent_interface = 1 program_error = 2 OTHERS = 3.

IF sy-subrc <> 0. WRITE: 'Output ALV error'. STOP. ENDIF. }}}

{{{#!comment -------------------- 以下的部份是固定的,不要變動 ----- }}}