Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

field catalog

Former Member
0 Kudos

Hi,

can any one pls tell how can we pass internal table name and its field for field catalog .

the requirement is i am adding some new fields into itab and which i have to use field catalog .totally 7 fields.

thanks,

gopan

1 ACCEPTED SOLUTION

Former Member
0 Kudos

Hi ,

see the example coding for FieldCatlog

type-pools : slis.
data: fieldtab type slis_t_fieldcat_alv,
      header type slis_t_listheader,
      events type slis_t_event,
      layout type slis_layout_alv,
      count(3) type n,
      formname type slis_formname value 'TOP_OF_PAGE',
      ls_fieldcat type slis_fieldcat_alv.

 data : count(2) type n.
  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BUKRS'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BUKRS'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'ICON'.
  ls_fieldcat-tabname = 'ITAB'.
*  LS_FIELDCAT-REF_FIELDNAME = 'ICON'.
*  LS_FIELDCAT-REF_TABNAME = 'BSID'.
  ls_fieldcat-reptext_ddic = 'Status'.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  ls_fieldcat-icon = 'X'.
  append ls_fieldcat to fieldtab.


  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'ZUONR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'ZUONR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.


  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BELNR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BELNR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  if umsks = 'X'.
    clear : ls_fieldcat.
    count = count + 1.
    ls_fieldcat-col_pos = count.
    ls_fieldcat-fieldname = 'UMSKZ'.
    ls_fieldcat-tabname = 'ITAB'.
    ls_fieldcat-ref_fieldname = 'UMSKZ'.
    ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
    append ls_fieldcat to fieldtab.
  endif.
  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BUDAT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BUDAT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BLDAT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BLDAT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'KUNNR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'KUNNR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'NAME1'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'NAME1'.
  ls_fieldcat-ref_tabname = 'KNA1'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BLART'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BLART'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'SHKZG'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'SHKZG'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'GSBER'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'GSBER'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'CDMBTR'.
  ls_fieldcat-tabname = 'ITAB'.
*  LS_FIELDCAT-REF_FIELDNAME = 'DMBTR'.
*  LS_FIELDCAT-REF_TABNAME = 'BSID'.
  ls_fieldcat-reptext_ddic = 'Credit'.
  ls_fieldcat-outputlen =  16.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'DDMBTR'.
  ls_fieldcat-tabname = 'ITAB'.
*  LS_FIELDCAT-REF_FIELDNAME = 'G'.
*  LS_FIELDCAT-REF_TABNAME = 'BSID'.
  ls_fieldcat-reptext_ddic = 'Debit'.
  ls_fieldcat-outputlen =  16.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'AUGBL'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'AUGBL'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'XBLNR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'XBLNR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.


  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'SGTXT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'SGTXT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'AUGDT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'AUGDT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

layout-zebra = 'X'.
*LAYOUT-NO_VLINE = 'X'.
*LAYOUT-NO_HLINE = ''.
  layout-numc_sum = 'X'.
*  layout-info_fieldname = 'LINE_COLOR'.
*P_LAYOUT-F2CODE = F2CODE.
  layout-expand_all = 'X'.
*LAYOUT-ITEM_TEXT = 'X'.
*LAYOUT-NO_AUTHOR = 'X'.
  layout-totals_before_items = 'X'. " diplay totals before the items
*LAYOUT-detail_popup = ''.
*  layout-box_fieldname = '%_BOX'.


data: ls_event type slis_alv_event.

  call function 'REUSE_ALV_EVENTS_GET'
    exporting
      i_list_type = 0
    importing
      et_events   = events.
  read table events with key name = slis_ev_top_of_page into ls_event.

  if sy-subrc = 0.
    move formname to ls_event-form.
    append ls_event to events.
  endif.

 data : p_repid type sy-repid.
  p_repid = sy-repid.

  call function 'REUSE_ALV_GRID_DISPLAY'
   exporting
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
     i_callback_program                = p_repid
*   I_CALLBACK_PF_STATUS_SET          = ' '
*   I_CALLBACK_USER_COMMAND           = ' '
     i_callback_top_of_page            = 'TOP_OF_PAGE'
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
*   I_STRUCTURE_NAME                  =
*   I_BACKGROUND_ID                   = ' '
*   I_GRID_TITLE                      =
*   I_GRID_SETTINGS                   =
     is_layout                         = layout
     it_fieldcat                       = fieldtab[]
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
   i_default                         = 'X'
   i_save                            = 'X'
*   IS_VARIANT                        =
*   IT_EVENTS                         =
*   IT_EVENT_EXIT                     =
*   IS_PRINT                          =
*   IS_REPREP_ID                      =
*   I_SCREEN_START_COLUMN             = 0
*   I_SCREEN_START_LINE               = 0
*   I_SCREEN_END_COLUMN               = 0
*   I_SCREEN_END_LINE                 = 0
*   IT_ALV_GRAPHICS                   =
*   IT_HYPERLINK                      =
*   IT_ADD_FIELDCAT                   =
*   IT_EXCEPT_QINFO                   =
*   I_HTML_HEIGHT_TOP                 =
*   I_HTML_HEIGHT_END                 =
* IMPORTING
*   E_EXIT_CAUSED_BY_CALLER           =
*   ES_EXIT_CAUSED_BY_USER            =
    tables
      t_outtab                          = itab
   exceptions
     program_error                     = 1
     others                            = 2
            .
  if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  endif.

Regards,

Balakumar.G.

Rewards points if helpful.

4 REPLIES 4

Former Member
0 Kudos

Hi,


CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
 EXPORTING
   I_PROGRAM_NAME               = sy-repid
   I_INTERNAL_TABNAME           = 'ITAB'"ur internal table in upper case
*   I_STRUCTURE_NAME             =
*   I_CLIENT_NEVER_DISPLAY       = 'X'
   I_INCLNAME                   = sy-repid
*   I_BYPASSING_BUFFER           =
*   I_BUFFER_ACTIVE              =
  CHANGING
    CT_FIELDCAT                  = fcat
* EXCEPTIONS
*   INCONSISTENT_INTERFACE       = 1
*   PROGRAM_ERROR                = 2
*   OTHERS                       = 3
          .
IF SY-SUBRC <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.

rgds,

bharat.

Former Member
0 Kudos

Hi ,

Refer this Thread:

[;

Hope this help.

Reward if helpful

Regards

Sourabh Verma

Former Member
0 Kudos

Hi ,

see the example coding for FieldCatlog

type-pools : slis.
data: fieldtab type slis_t_fieldcat_alv,
      header type slis_t_listheader,
      events type slis_t_event,
      layout type slis_layout_alv,
      count(3) type n,
      formname type slis_formname value 'TOP_OF_PAGE',
      ls_fieldcat type slis_fieldcat_alv.

 data : count(2) type n.
  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BUKRS'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BUKRS'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'ICON'.
  ls_fieldcat-tabname = 'ITAB'.
*  LS_FIELDCAT-REF_FIELDNAME = 'ICON'.
*  LS_FIELDCAT-REF_TABNAME = 'BSID'.
  ls_fieldcat-reptext_ddic = 'Status'.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  ls_fieldcat-icon = 'X'.
  append ls_fieldcat to fieldtab.


  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'ZUONR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'ZUONR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.


  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BELNR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BELNR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  if umsks = 'X'.
    clear : ls_fieldcat.
    count = count + 1.
    ls_fieldcat-col_pos = count.
    ls_fieldcat-fieldname = 'UMSKZ'.
    ls_fieldcat-tabname = 'ITAB'.
    ls_fieldcat-ref_fieldname = 'UMSKZ'.
    ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
    append ls_fieldcat to fieldtab.
  endif.
  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BUDAT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BUDAT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BLDAT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BLDAT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'KUNNR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'KUNNR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'NAME1'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'NAME1'.
  ls_fieldcat-ref_tabname = 'KNA1'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'BLART'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'BLART'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'SHKZG'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'SHKZG'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'GSBER'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'GSBER'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'CDMBTR'.
  ls_fieldcat-tabname = 'ITAB'.
*  LS_FIELDCAT-REF_FIELDNAME = 'DMBTR'.
*  LS_FIELDCAT-REF_TABNAME = 'BSID'.
  ls_fieldcat-reptext_ddic = 'Credit'.
  ls_fieldcat-outputlen =  16.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'DDMBTR'.
  ls_fieldcat-tabname = 'ITAB'.
*  LS_FIELDCAT-REF_FIELDNAME = 'G'.
*  LS_FIELDCAT-REF_TABNAME = 'BSID'.
  ls_fieldcat-reptext_ddic = 'Debit'.
  ls_fieldcat-outputlen =  16.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'AUGBL'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'AUGBL'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'XBLNR'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'XBLNR'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.


  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'SGTXT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'SGTXT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

  clear : ls_fieldcat.
  count = count + 1.
  ls_fieldcat-col_pos = count.
  ls_fieldcat-fieldname = 'AUGDT'.
  ls_fieldcat-tabname = 'ITAB'.
  ls_fieldcat-ref_fieldname = 'AUGDT'.
  ls_fieldcat-ref_tabname = 'BSID'.
*  LS_FIELDCAT-REPTEXT_DDIC = P_SELTEXT.
*  LS_FIELDCAT-OUTPUTLEN =  P_OUTPUTLEN.
*  LS_FIELDCAT-FIX_COLUMN   = P_FIX_COLUMN.
  append ls_fieldcat to fieldtab.

layout-zebra = 'X'.
*LAYOUT-NO_VLINE = 'X'.
*LAYOUT-NO_HLINE = ''.
  layout-numc_sum = 'X'.
*  layout-info_fieldname = 'LINE_COLOR'.
*P_LAYOUT-F2CODE = F2CODE.
  layout-expand_all = 'X'.
*LAYOUT-ITEM_TEXT = 'X'.
*LAYOUT-NO_AUTHOR = 'X'.
  layout-totals_before_items = 'X'. " diplay totals before the items
*LAYOUT-detail_popup = ''.
*  layout-box_fieldname = '%_BOX'.


data: ls_event type slis_alv_event.

  call function 'REUSE_ALV_EVENTS_GET'
    exporting
      i_list_type = 0
    importing
      et_events   = events.
  read table events with key name = slis_ev_top_of_page into ls_event.

  if sy-subrc = 0.
    move formname to ls_event-form.
    append ls_event to events.
  endif.

 data : p_repid type sy-repid.
  p_repid = sy-repid.

  call function 'REUSE_ALV_GRID_DISPLAY'
   exporting
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
     i_callback_program                = p_repid
*   I_CALLBACK_PF_STATUS_SET          = ' '
*   I_CALLBACK_USER_COMMAND           = ' '
     i_callback_top_of_page            = 'TOP_OF_PAGE'
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
*   I_STRUCTURE_NAME                  =
*   I_BACKGROUND_ID                   = ' '
*   I_GRID_TITLE                      =
*   I_GRID_SETTINGS                   =
     is_layout                         = layout
     it_fieldcat                       = fieldtab[]
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
   i_default                         = 'X'
   i_save                            = 'X'
*   IS_VARIANT                        =
*   IT_EVENTS                         =
*   IT_EVENT_EXIT                     =
*   IS_PRINT                          =
*   IS_REPREP_ID                      =
*   I_SCREEN_START_COLUMN             = 0
*   I_SCREEN_START_LINE               = 0
*   I_SCREEN_END_COLUMN               = 0
*   I_SCREEN_END_LINE                 = 0
*   IT_ALV_GRAPHICS                   =
*   IT_HYPERLINK                      =
*   IT_ADD_FIELDCAT                   =
*   IT_EXCEPT_QINFO                   =
*   I_HTML_HEIGHT_TOP                 =
*   I_HTML_HEIGHT_END                 =
* IMPORTING
*   E_EXIT_CAUSED_BY_CALLER           =
*   ES_EXIT_CAUSED_BY_USER            =
    tables
      t_outtab                          = itab
   exceptions
     program_error                     = 1
     others                            = 2
            .
  if sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  endif.

Regards,

Balakumar.G.

Rewards points if helpful.

Former Member
0 Kudos

Hi,

Add those new fields to ur internal table . Modify it . Pass those newly added fields while building catalog. Pass this catalog to it_catalog.

And content table to t_outtab.

Reward if helpful.

regards,

Ramya