<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: function module in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851314#M668167</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;REUSE_ALV_GRID_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;see this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  TABLES DECLARATION                                                 *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : ekko, ekpo, t001w, t161t, lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  INTERNAL TABLE DECLARATION                                         *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF tp_itab1,&lt;/P&gt;&lt;P&gt;            bukrs TYPE ekko-bukrs,&lt;/P&gt;&lt;P&gt;            lifnr TYPE ekko-lifnr,&lt;/P&gt;&lt;P&gt;            ebeln TYPE ekko-ebeln,&lt;/P&gt;&lt;P&gt;            waers TYPE ekko-waers,&lt;/P&gt;&lt;P&gt;            bsart TYPE ekko-bsart,&lt;/P&gt;&lt;P&gt;            ekorg TYPE ekko-ekorg,&lt;/P&gt;&lt;P&gt;            ekgrp TYPE ekko-ekgrp,&lt;/P&gt;&lt;P&gt;            ebelp TYPE ekpo-ebelp,&lt;/P&gt;&lt;P&gt;            txz01 TYPE ekpo-txz01,&lt;/P&gt;&lt;P&gt;            matnr TYPE ekpo-matnr,&lt;/P&gt;&lt;P&gt;            werks TYPE ekpo-werks,&lt;/P&gt;&lt;P&gt;            menge TYPE ekpo-menge,&lt;/P&gt;&lt;P&gt;            meins TYPE ekpo-meins,&lt;/P&gt;&lt;P&gt;            netpr TYPE ekpo-netpr,&lt;/P&gt;&lt;P&gt;            netwr TYPE ekpo-netwr,&lt;/P&gt;&lt;P&gt;            name1 TYPE t001w-name1,&lt;/P&gt;&lt;P&gt;            header_text(132),&lt;/P&gt;&lt;P&gt;            chk TYPE c,&lt;/P&gt;&lt;P&gt;        END OF tp_itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :    t_itab1  TYPE STANDARD TABLE OF tp_itab1,&lt;/P&gt;&lt;P&gt;          wa_itab1 TYPE tp_itab1,&lt;/P&gt;&lt;P&gt;          ws_name1 TYPE t001w-name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   f_itab1  TYPE  STANDARD TABLE OF tp_itab1,&lt;/P&gt;&lt;P&gt;         wa_fitab1 TYPE tp_itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   f_itab2  TYPE  STANDARD TABLE OF tp_itab1,&lt;/P&gt;&lt;P&gt;         wa_fitab2 TYPE tp_itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES :   BEGIN OF tp_name1,&lt;/P&gt;&lt;P&gt;            werks TYPE t001w-werks,&lt;/P&gt;&lt;P&gt;            name1 TYPE t001w-name1,&lt;/P&gt;&lt;P&gt;          END OF tp_name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   t_name1  TYPE STANDARD TABLE OF tp_name1,&lt;/P&gt;&lt;P&gt;         wa_name1 TYPE tp_name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :    t_lfa1 TYPE STANDARD TABLE OF lfa1,&lt;/P&gt;&lt;P&gt;          wa_lfa1 TYPE lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    hold_tabix TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   t_tlinetab  TYPE STANDARD TABLE OF tline,&lt;/P&gt;&lt;P&gt;         wa_tlinetab TYPE tline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    ws_name TYPE thead-tdname,&lt;/P&gt;&lt;P&gt;         ws_repid TYPE sy-repid VALUE 'YKTEST'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :  repid TYPE sy-repid.&lt;/P&gt;&lt;P&gt;DATA :  total TYPE p DECIMALS 2,&lt;/P&gt;&lt;P&gt;        quantity TYPE  p DECIMALS 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS :  ws_id TYPE thead-tdid VALUE 'F01',&lt;/P&gt;&lt;P&gt;             ws_object TYPE thead-tdobject VALUE 'EKKO',&lt;/P&gt;&lt;P&gt;             lc_view(1) TYPE c VALUE 'F',&lt;/P&gt;&lt;P&gt;             lc_form(10) TYPE c VALUE 'YK_FORM'.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  ALV DECLARATION                                                    *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS  : slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: lt_fieldcat TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;      lf_fieldcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA: lh_index    LIKE lf_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  l_layout   TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : l_sort     TYPE slis_t_sortinfo_alv,&lt;/P&gt;&lt;P&gt;       w_sort     TYPE slis_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  SELECTION-SCREEN                                                   *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_bukrs       FOR ekko-bukrs  OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_lifnr       FOR ekko-lifnr  OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_ebeln       FOR ekko-ebeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_bsart TYPE ekko-bsart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_matnr       FOR ekpo-matnr.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_ekorg       FOR ekko-ekorg.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_ekgrp       FOR ekko-ekgrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK a1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  START-OF-SELECTION                                                 *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FETCHING DATA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM fetch_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BUILD FIELD CATALOG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM build_fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BUILD LAYOUT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM build_layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SORT LAYOUT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sort_layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  END-OF-SELECTION.                                                  *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DISPLAY GRID&lt;/P&gt;&lt;P&gt;  PERFORM display_grid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fetch_data                                               *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fetch_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_bsart IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT  ekko~bukrs&lt;/P&gt;&lt;P&gt;            ekko~lifnr&lt;/P&gt;&lt;P&gt;            ekko~ebeln&lt;/P&gt;&lt;P&gt;            ekko~waers&lt;/P&gt;&lt;P&gt;            ekko~bsart&lt;/P&gt;&lt;P&gt;            ekko~ekorg&lt;/P&gt;&lt;P&gt;            ekko~ekgrp&lt;/P&gt;&lt;P&gt;            ekpo~ebelp&lt;/P&gt;&lt;P&gt;            ekpo~txz01&lt;/P&gt;&lt;P&gt;            ekpo~matnr&lt;/P&gt;&lt;P&gt;            ekpo~werks&lt;/P&gt;&lt;P&gt;            ekpo~menge&lt;/P&gt;&lt;P&gt;            ekpo~meins&lt;/P&gt;&lt;P&gt;            ekpo~netpr&lt;/P&gt;&lt;P&gt;            ekpo~netwr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            INTO TABLE  t_itab1 FROM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            ekko INNER JOIN ekpo ON ekko&lt;SUB&gt;ebeln = ekpo&lt;/SUB&gt;ebeln&lt;/P&gt;&lt;P&gt;            WHERE    ekko~ebeln IN s_ebeln  AND&lt;/P&gt;&lt;P&gt;                     ekko~bukrs IN s_bukrs  AND&lt;/P&gt;&lt;P&gt;                     ekko~lifnr IN s_lifnr  AND&lt;/P&gt;&lt;P&gt;                     ekko~ekorg IN s_ekorg  AND&lt;/P&gt;&lt;P&gt;                     ekko~ekgrp IN s_ekgrp  AND&lt;/P&gt;&lt;P&gt;                     ekpo~matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT   ekko~bukrs&lt;/P&gt;&lt;P&gt;             ekko~lifnr&lt;/P&gt;&lt;P&gt;             ekko~ebeln&lt;/P&gt;&lt;P&gt;             ekko~waers&lt;/P&gt;&lt;P&gt;             ekko~bsart&lt;/P&gt;&lt;P&gt;             ekko~ekorg&lt;/P&gt;&lt;P&gt;             ekko~ekgrp&lt;/P&gt;&lt;P&gt;             ekpo~ebelp&lt;/P&gt;&lt;P&gt;             ekpo~txz01&lt;/P&gt;&lt;P&gt;             ekpo~matnr&lt;/P&gt;&lt;P&gt;             ekpo~werks&lt;/P&gt;&lt;P&gt;             ekpo~menge&lt;/P&gt;&lt;P&gt;             ekpo~meins&lt;/P&gt;&lt;P&gt;             ekpo~netpr&lt;/P&gt;&lt;P&gt;             ekpo~netwr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;             INTO TABLE  t_itab1 FROM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;             ekko INNER JOIN ekpo ON ekko&lt;SUB&gt;ebeln = ekpo&lt;/SUB&gt;ebeln&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;             WHERE ekko~ebeln IN s_ebeln  AND&lt;/P&gt;&lt;P&gt;                   ekko~bukrs IN s_bukrs  AND&lt;/P&gt;&lt;P&gt;                   ekko~lifnr IN s_lifnr  AND&lt;/P&gt;&lt;P&gt;                   ekko~ekorg IN s_ekorg  AND&lt;/P&gt;&lt;P&gt;                   ekko~ekgrp IN s_ekgrp  AND&lt;/P&gt;&lt;P&gt;                   ekpo~matnr IN s_matnr AND&lt;/P&gt;&lt;P&gt;                   ekko~bsart = p_bsart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT t_itab1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FETCHING NAME1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT werks&lt;/P&gt;&lt;P&gt;           name1&lt;/P&gt;&lt;P&gt;           FROM t001w&lt;/P&gt;&lt;P&gt;           INTO TABLE t_name1&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN t_itab1&lt;/P&gt;&lt;P&gt;           WHERE werks = t_itab1-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT t_itab1 BY werks.&lt;/P&gt;&lt;P&gt;    SORT t_name1 BY werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      LOOP AT t_itab1 INTO wa_itab1.&lt;/P&gt;&lt;P&gt;        hold_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;       READ TABLE t_name1 INTO wa_name1 WITH KEY werks = wa_itab1-werks&lt;/P&gt;&lt;P&gt;                                                         BINARY SEARCH.&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          wa_itab1-name1 = wa_name1-name1.&lt;/P&gt;&lt;P&gt;          MODIFY t_itab1 INDEX  hold_tabix FROM wa_itab1.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FETCHING HEADER TEXT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MOVE wa_itab1-ebeln TO ws_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL FUNCTION 'READ_TEXT'&lt;/P&gt;&lt;P&gt;          EXPORTING&lt;/P&gt;&lt;P&gt;            id                      = ws_id&lt;/P&gt;&lt;P&gt;            language                = sy-langu&lt;/P&gt;&lt;P&gt;            name                    = ws_name&lt;/P&gt;&lt;P&gt;            object                  = ws_object&lt;/P&gt;&lt;P&gt;          TABLES&lt;/P&gt;&lt;P&gt;            lines                   = t_tlinetab&lt;/P&gt;&lt;P&gt;          EXCEPTIONS&lt;/P&gt;&lt;P&gt;            id                      = 1&lt;/P&gt;&lt;P&gt;            language                = 2&lt;/P&gt;&lt;P&gt;            name                    = 3&lt;/P&gt;&lt;P&gt;            not_found               = 4&lt;/P&gt;&lt;P&gt;            object                  = 5&lt;/P&gt;&lt;P&gt;            reference_check         = 6&lt;/P&gt;&lt;P&gt;            wrong_access_to_archive = 7&lt;/P&gt;&lt;P&gt;            OTHERS                  = 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          LOOP AT t_tlinetab INTO wa_tlinetab.&lt;/P&gt;&lt;P&gt;            wa_itab1-header_text = wa_tlinetab-tdline.&lt;/P&gt;&lt;P&gt;            MODIFY t_itab1 FROM wa_itab1.&lt;/P&gt;&lt;P&gt;          ENDLOOP.&lt;/P&gt;&lt;P&gt;        ENDIF.                             " IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        CLEAR : wa_itab1,&lt;/P&gt;&lt;P&gt;                hold_tabix,&lt;/P&gt;&lt;P&gt;                wa_name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                 "  IF NOT t_itab1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF t_itab1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    MESSAGE i000(zg) WITH text-008.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT  : t_itab1 BY bukrs  lifnr ebeln ebelp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fetch_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_fieldcatalog                                       *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_fieldcatalog .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COMPANY CODE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fix_column    = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; VENDOR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fix_column    = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PURCHASING DOCUMENT NUMBER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'EBELN'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'EBELN'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; lf_fieldcat-key           = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fix_column    = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ITEM NUMBER OF PURCHASING DOCUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'EBELP'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'EBELP'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SHORT TEXT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'TXZ01'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'TXZ01'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MATERIAL NUMBER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PLANT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NAME&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'NAME1'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'T001W'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'NAME1'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PURCHASE ORDER QUANTITY&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'MENGE'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'MENGE'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-qfieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNIT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NET PRICE IN PURCHASING DOCUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'NETPR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'NETPR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-cfieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NET ORDER VALUE IN PO CURRENCY&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'NETWR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'NETWR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-cfieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CURRENCY&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER TEXT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'HEADER_TEXT'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-seltext_m  = 'Header Text'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_fieldcatalog&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  display_grid                                             *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM display_grid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;    i_callback_program                =   ws_repid&lt;/P&gt;&lt;P&gt;    i_callback_pf_status_set          =   'PF_STATUS'&lt;/P&gt;&lt;P&gt;    i_callback_user_command           =   'USER_COMMAND'&lt;/P&gt;&lt;P&gt;    is_layout                         =   l_layout&lt;/P&gt;&lt;P&gt;    it_fieldcat                       =   lt_fieldcat&lt;/P&gt;&lt;P&gt;    it_sort                           =   l_sort&lt;/P&gt;&lt;P&gt;    i_save                            =   'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      t_outtab                        =   t_itab1&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   program_error                     =   1&lt;/P&gt;&lt;P&gt;   OTHERS                            =   2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;         WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_grid&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_layout                                             *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_layout .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;  l_layout-zebra = 'X'.&lt;/P&gt;&lt;P&gt;  l_layout-box_fieldname = 'CHK'.&lt;/P&gt;&lt;P&gt;  l_layout-box_tabname = 'T_ITAB1' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_layout&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sort_layout                                              *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sort_layout .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR w_sort.&lt;/P&gt;&lt;P&gt;  w_sort-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  w_sort-tabname = 'T_ITAB1'.&lt;/P&gt;&lt;P&gt;  w_sort-spos = 1.&lt;/P&gt;&lt;P&gt;  w_sort-up = 'X'.&lt;/P&gt;&lt;P&gt;  w_sort-subtot = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_sort TO l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR w_sort.&lt;/P&gt;&lt;P&gt;  w_sort-fieldname = 'EBELN'.&lt;/P&gt;&lt;P&gt;  w_sort-tabname = 'T_ITAB1'.&lt;/P&gt;&lt;P&gt;  w_sort-spos = 1.&lt;/P&gt;&lt;P&gt;  w_sort-up = 'X'.&lt;/P&gt;&lt;P&gt;  w_sort-subtot = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_sort TO l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sort_layout&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  PF_STATUS&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM pf_status USING rt_extab TYPE slis_t_extab.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'STANDARD1' EXCLUDING rt_extab.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " PF_STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  user_command&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM user_command USING s_ucomm TYPE sy-ucomm&lt;/P&gt;&lt;P&gt;                       rs_selfield  TYPE slis_selfield.&lt;/P&gt;&lt;P&gt;  CLEAR wa_itab1.&lt;/P&gt;&lt;P&gt;  READ TABLE t_itab1 INTO wa_itab1 INDEX rs_selfield-tabindex.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE s_ucomm.&lt;/P&gt;&lt;P&gt;    WHEN 'POD'.&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'BES' FIELD wa_itab1-ebeln.&lt;/P&gt;&lt;P&gt;      CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      CLEAR wa_itab1.&lt;/P&gt;&lt;P&gt;    WHEN 'MAT'.&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'MAT' FIELD wa_itab1-matnr.&lt;/P&gt;&lt;P&gt;      CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;      IF rs_selfield-fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'MAT' FIELD wa_itab1-matnr.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      ELSEIF  rs_selfield-fieldname = 'EBELN'.&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'BES' FIELD wa_itab1-ebeln.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'PRINT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM multiple_sel.&lt;/P&gt;&lt;P&gt;      PERFORM call_form.&lt;/P&gt;&lt;P&gt;      CLEAR : f_itab1, f_itab2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'SMART'.&lt;/P&gt;&lt;P&gt;      PERFORM multiple_sel.&lt;/P&gt;&lt;P&gt;      PERFORM call_smartform.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 19 Sep 2007 09:04:15 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-09-19T09:04:15Z</dc:date>
    <item>
      <title>function module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851311#M668164</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;can u tell me as what function module i should use to display my content in alv in next window.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pls refer me any program also.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Sep 2007 09:01:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851311#M668164</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-19T09:01:01Z</dc:date>
    </item>
    <item>
      <title>Re: function module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851312#M668165</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;REPORT  ZALV .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : VBAP.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS : SLIS.&lt;/P&gt;&lt;P&gt;DATA : BEGIN OF ITAB OCCURS 0,&lt;/P&gt;&lt;P&gt;       VBELN LIKE VBAP-VBELN,&lt;/P&gt;&lt;P&gt;       POSNR LIKE VBAP-POSNR,&lt;/P&gt;&lt;P&gt;       ERNAM LIKE VBAP-ERNAM,&lt;/P&gt;&lt;P&gt;       ERDAT LIKE VBAP-ERDAT.&lt;/P&gt;&lt;P&gt;DATA : END OF ITAB.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;       WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : WA_LAYOUT TYPE SLIS_LAYOUT_ALV.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS : S_VBELN FOR VBAP-VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT VBELN&lt;/P&gt;&lt;P&gt;       POSNR&lt;/P&gt;&lt;P&gt;       ERNAM&lt;/P&gt;&lt;P&gt;       ERDAT&lt;/P&gt;&lt;P&gt;       FROM VBAP&lt;/P&gt;&lt;P&gt;       INTO CORRESPONDING FIELDS OF TABLE ITAB&lt;/P&gt;&lt;P&gt;       WHERE VBELN IN S_VBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PERFORM MODIFY_CAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt; EXPORTING&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_INTERFACE_CHECK                 = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BYPASSING_BUFFER                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BUFFER_ACTIVE                   = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_PROGRAM                = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_PF_STATUS_SET          = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_USER_COMMAND           = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_TOP_OF_PAGE            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_HTML_TOP_OF_PAGE       = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_CALLBACK_HTML_END_OF_LIST       = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_STRUCTURE_NAME                  =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_BACKGROUND_ID                   = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_GRID_TITLE                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_GRID_SETTINGS                   =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   IS_LAYOUT                         = WA_LAYOUT&lt;/P&gt;&lt;P&gt;   IT_FIELDCAT                       = IT_FIELDCAT&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCLUDING                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_SPECIAL_GROUPS                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_SORT                           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_FILTER                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_SEL_HIDE                       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_DEFAULT                         = 'X'&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SAVE                            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_VARIANT                        =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EVENTS                         =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EVENT_EXIT                     =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_PRINT                          =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IS_REPREP_ID                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_COLUMN             = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_START_LINE               = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_COLUMN               = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_SCREEN_END_LINE                 = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_ALV_GRAPHICS                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_HYPERLINK                      =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_ADD_FIELDCAT                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  IT_EXCEPT_QINFO                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_HTML_HEIGHT_TOP                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_HTML_HEIGHT_END                 =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  E_EXIT_CAUSED_BY_CALLER           =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ES_EXIT_CAUSED_BY_USER            =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  TABLES&lt;/P&gt;&lt;P&gt;    T_OUTTAB                          = ITAB&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;EXCEPTIONS&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  PROGRAM_ERROR                     = 1&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  OTHERS                            = 2&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;          .&lt;/P&gt;&lt;P&gt;IF SY-SUBRC &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*LOOP AT ITAB.&lt;/P&gt;&lt;P&gt;*WRITE : / ITAB-VBELN,&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         ITAB-POSNR,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         ITAB-ERNAM,&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;         ITAB-ERDAT.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*ENDLOOP.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  MODIFY_CAT&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; --&amp;gt;  p1        text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; &amp;lt;--  p2        text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;&lt;STRONG&gt;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM MODIFY_CAT .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'ITAB'..&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'VBELN'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_L = 'SALES DOC'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-COL_POS = 1.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-OUTPUTLEN = 10.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'ITAB'..&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'POSNR'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_L = 'ITEM'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-COL_POS = 2.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-OUTPUTLEN = 6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'ITAB'..&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'ERNAM'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_L = 'PERSON NAME'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-COL_POS = 3.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-OUTPUTLEN = 12.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'ITAB'..&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'ERDAT'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_L = 'DATE'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-COL_POS = 4.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-OUTPUTLEN = 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO IT_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_LAYOUT-ZEBRA = 'X'.&lt;/P&gt;&lt;P&gt;*WA_LAYOUT-INFO_FIELDNAME = 'COLOR'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " MODIFY_CAT&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This is sample program for getting output using ALV&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Vasu&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Sep 2007 09:03:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851312#M668165</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-19T09:03:40Z</dc:date>
    </item>
    <item>
      <title>Re: function module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851313#M668166</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;reuse_alv_grid_disply&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;resuse_alv_list_disply&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Sep 2007 09:03:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851313#M668166</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-19T09:03:42Z</dc:date>
    </item>
    <item>
      <title>Re: function module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851314#M668167</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;REUSE_ALV_GRID_DISPLAY&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;see this&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  TABLES DECLARATION                                                 *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TABLES : ekko, ekpo, t001w, t161t, lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  INTERNAL TABLE DECLARATION                                         *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF tp_itab1,&lt;/P&gt;&lt;P&gt;            bukrs TYPE ekko-bukrs,&lt;/P&gt;&lt;P&gt;            lifnr TYPE ekko-lifnr,&lt;/P&gt;&lt;P&gt;            ebeln TYPE ekko-ebeln,&lt;/P&gt;&lt;P&gt;            waers TYPE ekko-waers,&lt;/P&gt;&lt;P&gt;            bsart TYPE ekko-bsart,&lt;/P&gt;&lt;P&gt;            ekorg TYPE ekko-ekorg,&lt;/P&gt;&lt;P&gt;            ekgrp TYPE ekko-ekgrp,&lt;/P&gt;&lt;P&gt;            ebelp TYPE ekpo-ebelp,&lt;/P&gt;&lt;P&gt;            txz01 TYPE ekpo-txz01,&lt;/P&gt;&lt;P&gt;            matnr TYPE ekpo-matnr,&lt;/P&gt;&lt;P&gt;            werks TYPE ekpo-werks,&lt;/P&gt;&lt;P&gt;            menge TYPE ekpo-menge,&lt;/P&gt;&lt;P&gt;            meins TYPE ekpo-meins,&lt;/P&gt;&lt;P&gt;            netpr TYPE ekpo-netpr,&lt;/P&gt;&lt;P&gt;            netwr TYPE ekpo-netwr,&lt;/P&gt;&lt;P&gt;            name1 TYPE t001w-name1,&lt;/P&gt;&lt;P&gt;            header_text(132),&lt;/P&gt;&lt;P&gt;            chk TYPE c,&lt;/P&gt;&lt;P&gt;        END OF tp_itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :    t_itab1  TYPE STANDARD TABLE OF tp_itab1,&lt;/P&gt;&lt;P&gt;          wa_itab1 TYPE tp_itab1,&lt;/P&gt;&lt;P&gt;          ws_name1 TYPE t001w-name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   f_itab1  TYPE  STANDARD TABLE OF tp_itab1,&lt;/P&gt;&lt;P&gt;         wa_fitab1 TYPE tp_itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   f_itab2  TYPE  STANDARD TABLE OF tp_itab1,&lt;/P&gt;&lt;P&gt;         wa_fitab2 TYPE tp_itab1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES :   BEGIN OF tp_name1,&lt;/P&gt;&lt;P&gt;            werks TYPE t001w-werks,&lt;/P&gt;&lt;P&gt;            name1 TYPE t001w-name1,&lt;/P&gt;&lt;P&gt;          END OF tp_name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   t_name1  TYPE STANDARD TABLE OF tp_name1,&lt;/P&gt;&lt;P&gt;         wa_name1 TYPE tp_name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :    t_lfa1 TYPE STANDARD TABLE OF lfa1,&lt;/P&gt;&lt;P&gt;          wa_lfa1 TYPE lfa1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    hold_tabix TYPE sy-tabix.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :   t_tlinetab  TYPE STANDARD TABLE OF tline,&lt;/P&gt;&lt;P&gt;         wa_tlinetab TYPE tline.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:    ws_name TYPE thead-tdname,&lt;/P&gt;&lt;P&gt;         ws_repid TYPE sy-repid VALUE 'YKTEST'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA :  repid TYPE sy-repid.&lt;/P&gt;&lt;P&gt;DATA :  total TYPE p DECIMALS 2,&lt;/P&gt;&lt;P&gt;        quantity TYPE  p DECIMALS 3.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;CONSTANTS :  ws_id TYPE thead-tdid VALUE 'F01',&lt;/P&gt;&lt;P&gt;             ws_object TYPE thead-tdobject VALUE 'EKKO',&lt;/P&gt;&lt;P&gt;             lc_view(1) TYPE c VALUE 'F',&lt;/P&gt;&lt;P&gt;             lc_form(10) TYPE c VALUE 'YK_FORM'.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  ALV DECLARATION                                                    *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPE-POOLS  : slis.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA: lt_fieldcat TYPE slis_t_fieldcat_alv,&lt;/P&gt;&lt;P&gt;      lf_fieldcat TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;DATA: lh_index    LIKE lf_fieldcat-col_pos.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:  l_layout   TYPE slis_layout_alv.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : l_sort     TYPE slis_t_sortinfo_alv,&lt;/P&gt;&lt;P&gt;       w_sort     TYPE slis_sortinfo_alv.&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  SELECTION-SCREEN                                                   *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_bukrs       FOR ekko-bukrs  OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_lifnr       FOR ekko-lifnr  OBLIGATORY.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_ebeln       FOR ekko-ebeln.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PARAMETERS: p_bsart TYPE ekko-bsart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_matnr       FOR ekpo-matnr.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_ekorg       FOR ekko-ekorg.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS: s_ekgrp       FOR ekko-ekgrp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN SKIP 2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK a1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  START-OF-SELECTION                                                 *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FETCHING DATA&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM fetch_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BUILD FIELD CATALOG&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM build_fieldcatalog.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;BUILD LAYOUT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM build_layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SORT LAYOUT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  PERFORM sort_layout.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;  END-OF-SELECTION.                                                  *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;END-OF-SELECTION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*DISPLAY GRID&lt;/P&gt;&lt;P&gt;  PERFORM display_grid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  fetch_data                                               *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM fetch_data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF p_bsart IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT  ekko~bukrs&lt;/P&gt;&lt;P&gt;            ekko~lifnr&lt;/P&gt;&lt;P&gt;            ekko~ebeln&lt;/P&gt;&lt;P&gt;            ekko~waers&lt;/P&gt;&lt;P&gt;            ekko~bsart&lt;/P&gt;&lt;P&gt;            ekko~ekorg&lt;/P&gt;&lt;P&gt;            ekko~ekgrp&lt;/P&gt;&lt;P&gt;            ekpo~ebelp&lt;/P&gt;&lt;P&gt;            ekpo~txz01&lt;/P&gt;&lt;P&gt;            ekpo~matnr&lt;/P&gt;&lt;P&gt;            ekpo~werks&lt;/P&gt;&lt;P&gt;            ekpo~menge&lt;/P&gt;&lt;P&gt;            ekpo~meins&lt;/P&gt;&lt;P&gt;            ekpo~netpr&lt;/P&gt;&lt;P&gt;            ekpo~netwr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            INTO TABLE  t_itab1 FROM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;            ekko INNER JOIN ekpo ON ekko&lt;SUB&gt;ebeln = ekpo&lt;/SUB&gt;ebeln&lt;/P&gt;&lt;P&gt;            WHERE    ekko~ebeln IN s_ebeln  AND&lt;/P&gt;&lt;P&gt;                     ekko~bukrs IN s_bukrs  AND&lt;/P&gt;&lt;P&gt;                     ekko~lifnr IN s_lifnr  AND&lt;/P&gt;&lt;P&gt;                     ekko~ekorg IN s_ekorg  AND&lt;/P&gt;&lt;P&gt;                     ekko~ekgrp IN s_ekgrp  AND&lt;/P&gt;&lt;P&gt;                     ekpo~matnr IN s_matnr.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SELECT   ekko~bukrs&lt;/P&gt;&lt;P&gt;             ekko~lifnr&lt;/P&gt;&lt;P&gt;             ekko~ebeln&lt;/P&gt;&lt;P&gt;             ekko~waers&lt;/P&gt;&lt;P&gt;             ekko~bsart&lt;/P&gt;&lt;P&gt;             ekko~ekorg&lt;/P&gt;&lt;P&gt;             ekko~ekgrp&lt;/P&gt;&lt;P&gt;             ekpo~ebelp&lt;/P&gt;&lt;P&gt;             ekpo~txz01&lt;/P&gt;&lt;P&gt;             ekpo~matnr&lt;/P&gt;&lt;P&gt;             ekpo~werks&lt;/P&gt;&lt;P&gt;             ekpo~menge&lt;/P&gt;&lt;P&gt;             ekpo~meins&lt;/P&gt;&lt;P&gt;             ekpo~netpr&lt;/P&gt;&lt;P&gt;             ekpo~netwr&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;             INTO TABLE  t_itab1 FROM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;             ekko INNER JOIN ekpo ON ekko&lt;SUB&gt;ebeln = ekpo&lt;/SUB&gt;ebeln&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;             WHERE ekko~ebeln IN s_ebeln  AND&lt;/P&gt;&lt;P&gt;                   ekko~bukrs IN s_bukrs  AND&lt;/P&gt;&lt;P&gt;                   ekko~lifnr IN s_lifnr  AND&lt;/P&gt;&lt;P&gt;                   ekko~ekorg IN s_ekorg  AND&lt;/P&gt;&lt;P&gt;                   ekko~ekgrp IN s_ekgrp  AND&lt;/P&gt;&lt;P&gt;                   ekpo~matnr IN s_matnr AND&lt;/P&gt;&lt;P&gt;                   ekko~bsart = p_bsart.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF NOT t_itab1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FETCHING NAME1&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    SELECT werks&lt;/P&gt;&lt;P&gt;           name1&lt;/P&gt;&lt;P&gt;           FROM t001w&lt;/P&gt;&lt;P&gt;           INTO TABLE t_name1&lt;/P&gt;&lt;P&gt;           FOR ALL ENTRIES IN t_itab1&lt;/P&gt;&lt;P&gt;           WHERE werks = t_itab1-werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    SORT t_itab1 BY werks.&lt;/P&gt;&lt;P&gt;    SORT t_name1 BY werks.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;      LOOP AT t_itab1 INTO wa_itab1.&lt;/P&gt;&lt;P&gt;        hold_tabix = sy-tabix.&lt;/P&gt;&lt;P&gt;       READ TABLE t_name1 INTO wa_name1 WITH KEY werks = wa_itab1-werks&lt;/P&gt;&lt;P&gt;                                                         BINARY SEARCH.&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          wa_itab1-name1 = wa_name1-name1.&lt;/P&gt;&lt;P&gt;          MODIFY t_itab1 INDEX  hold_tabix FROM wa_itab1.&lt;/P&gt;&lt;P&gt;        ENDIF.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;FETCHING HEADER TEXT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        MOVE wa_itab1-ebeln TO ws_name.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        CALL FUNCTION 'READ_TEXT'&lt;/P&gt;&lt;P&gt;          EXPORTING&lt;/P&gt;&lt;P&gt;            id                      = ws_id&lt;/P&gt;&lt;P&gt;            language                = sy-langu&lt;/P&gt;&lt;P&gt;            name                    = ws_name&lt;/P&gt;&lt;P&gt;            object                  = ws_object&lt;/P&gt;&lt;P&gt;          TABLES&lt;/P&gt;&lt;P&gt;            lines                   = t_tlinetab&lt;/P&gt;&lt;P&gt;          EXCEPTIONS&lt;/P&gt;&lt;P&gt;            id                      = 1&lt;/P&gt;&lt;P&gt;            language                = 2&lt;/P&gt;&lt;P&gt;            name                    = 3&lt;/P&gt;&lt;P&gt;            not_found               = 4&lt;/P&gt;&lt;P&gt;            object                  = 5&lt;/P&gt;&lt;P&gt;            reference_check         = 6&lt;/P&gt;&lt;P&gt;            wrong_access_to_archive = 7&lt;/P&gt;&lt;P&gt;            OTHERS                  = 8.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;        IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;          LOOP AT t_tlinetab INTO wa_tlinetab.&lt;/P&gt;&lt;P&gt;            wa_itab1-header_text = wa_tlinetab-tdline.&lt;/P&gt;&lt;P&gt;            MODIFY t_itab1 FROM wa_itab1.&lt;/P&gt;&lt;P&gt;          ENDLOOP.&lt;/P&gt;&lt;P&gt;        ENDIF.                             " IF sy-subrc = 0.&lt;/P&gt;&lt;P&gt;        CLEAR : wa_itab1,&lt;/P&gt;&lt;P&gt;                hold_tabix,&lt;/P&gt;&lt;P&gt;                wa_name1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      ENDLOOP.&lt;/P&gt;&lt;P&gt;    ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  ENDIF.                                 "  IF NOT t_itab1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF t_itab1[] IS INITIAL.&lt;/P&gt;&lt;P&gt;    MESSAGE i000(zg) WITH text-008.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  SORT  : t_itab1 BY bukrs  lifnr ebeln ebelp.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " fetch_data&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_fieldcatalog                                       *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_fieldcatalog .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;COMPANY CODE&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fix_column    = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; VENDOR&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fix_column    = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PURCHASING DOCUMENT NUMBER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'EBELN'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'EBELN'.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt; lf_fieldcat-key           = 'X'.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fix_column    = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;ITEM NUMBER OF PURCHASING DOCUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'EBELP'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'EBELP'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;SHORT TEXT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'TXZ01'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'TXZ01'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;MATERIAL NUMBER&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PLANT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'WERKS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NAME&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'NAME1'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'T001W'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'NAME1'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;PURCHASE ORDER QUANTITY&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'MENGE'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'MENGE'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-qfieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;UNIT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'MEINS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NET PRICE IN PURCHASING DOCUMENT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'NETPR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'NETPR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-cfieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;NET ORDER VALUE IN PO CURRENCY&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'NETWR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKPO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'NETWR'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-cfieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-do_sum = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;CURRENCY&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_tabname = 'EKKO'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-ref_fieldname = 'WAERS'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;HEADER TEXT&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;  CLEAR lf_fieldcat.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-fieldname = 'HEADER_TEXT'.&lt;/P&gt;&lt;P&gt;  lf_fieldcat-seltext_m  = 'Header Text'.&lt;/P&gt;&lt;P&gt;  APPEND lf_fieldcat TO lt_fieldcat.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_fieldcatalog&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  display_grid                                             *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM display_grid.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;    i_callback_program                =   ws_repid&lt;/P&gt;&lt;P&gt;    i_callback_pf_status_set          =   'PF_STATUS'&lt;/P&gt;&lt;P&gt;    i_callback_user_command           =   'USER_COMMAND'&lt;/P&gt;&lt;P&gt;    is_layout                         =   l_layout&lt;/P&gt;&lt;P&gt;    it_fieldcat                       =   lt_fieldcat&lt;/P&gt;&lt;P&gt;    it_sort                           =   l_sort&lt;/P&gt;&lt;P&gt;    i_save                            =   'X'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;IMPORTING&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      t_outtab                        =   t_itab1&lt;/P&gt;&lt;P&gt; EXCEPTIONS&lt;/P&gt;&lt;P&gt;   program_error                     =   1&lt;/P&gt;&lt;P&gt;   OTHERS                            =   2.&lt;/P&gt;&lt;P&gt;  IF sy-subrc &amp;lt;&amp;gt; 0.&lt;/P&gt;&lt;P&gt;    MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno&lt;/P&gt;&lt;P&gt;         WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " display_grid&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  build_layout                                             *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM build_layout .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  l_layout-colwidth_optimize = 'X'.&lt;/P&gt;&lt;P&gt;  l_layout-zebra = 'X'.&lt;/P&gt;&lt;P&gt;  l_layout-box_fieldname = 'CHK'.&lt;/P&gt;&lt;P&gt;  l_layout-box_tabname = 'T_ITAB1' .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " build_layout&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  sort_layout                                              *&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM sort_layout .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR w_sort.&lt;/P&gt;&lt;P&gt;  w_sort-fieldname = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  w_sort-tabname = 'T_ITAB1'.&lt;/P&gt;&lt;P&gt;  w_sort-spos = 1.&lt;/P&gt;&lt;P&gt;  w_sort-up = 'X'.&lt;/P&gt;&lt;P&gt;  w_sort-subtot = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_sort TO l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CLEAR w_sort.&lt;/P&gt;&lt;P&gt;  w_sort-fieldname = 'EBELN'.&lt;/P&gt;&lt;P&gt;  w_sort-tabname = 'T_ITAB1'.&lt;/P&gt;&lt;P&gt;  w_sort-spos = 1.&lt;/P&gt;&lt;P&gt;  w_sort-up = 'X'.&lt;/P&gt;&lt;P&gt;  w_sort-subtot = 'X'.&lt;/P&gt;&lt;P&gt;  APPEND w_sort TO l_sort.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    " sort_layout&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  PF_STATUS&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM pf_status USING rt_extab TYPE slis_t_extab.&lt;/P&gt;&lt;P&gt;  SET PF-STATUS 'STANDARD1' EXCLUDING rt_extab.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " PF_STATUS&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*&amp;amp;      Form  user_command&lt;/P&gt;&lt;P&gt;&lt;STRONG&gt;&amp;amp;----&lt;/STRONG&gt;&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;FORM user_command USING s_ucomm TYPE sy-ucomm&lt;/P&gt;&lt;P&gt;                       rs_selfield  TYPE slis_selfield.&lt;/P&gt;&lt;P&gt;  CLEAR wa_itab1.&lt;/P&gt;&lt;P&gt;  READ TABLE t_itab1 INTO wa_itab1 INDEX rs_selfield-tabindex.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CASE s_ucomm.&lt;/P&gt;&lt;P&gt;    WHEN 'POD'.&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'BES' FIELD wa_itab1-ebeln.&lt;/P&gt;&lt;P&gt;      CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      CLEAR wa_itab1.&lt;/P&gt;&lt;P&gt;    WHEN 'MAT'.&lt;/P&gt;&lt;P&gt;      SET PARAMETER ID 'MAT' FIELD wa_itab1-matnr.&lt;/P&gt;&lt;P&gt;      CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;      IF rs_selfield-fieldname = 'MATNR'.&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'MAT' FIELD wa_itab1-matnr.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'MM03' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      ELSEIF  rs_selfield-fieldname = 'EBELN'.&lt;/P&gt;&lt;P&gt;        SET PARAMETER ID 'BES' FIELD wa_itab1-ebeln.&lt;/P&gt;&lt;P&gt;        CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.&lt;/P&gt;&lt;P&gt;      ENDIF.&lt;/P&gt;&lt;P&gt;    WHEN 'PRINT'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;      PERFORM multiple_sel.&lt;/P&gt;&lt;P&gt;      PERFORM call_form.&lt;/P&gt;&lt;P&gt;      CLEAR : f_itab1, f_itab2.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;    WHEN 'SMART'.&lt;/P&gt;&lt;P&gt;      PERFORM multiple_sel.&lt;/P&gt;&lt;P&gt;      PERFORM call_smartform.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Sep 2007 09:04:15 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851314#M668167</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-19T09:04:15Z</dc:date>
    </item>
    <item>
      <title>Re: function module</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851315#M668168</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;thanks for ur quick reply.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am exactly looking for giving the display after the LIST_DISPLAY but in other window.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 19 Sep 2007 09:05:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/function-module/m-p/2851315#M668168</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-09-19T09:05:53Z</dc:date>
    </item>
  </channel>
</rss>

