<?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: ALV report - User Command in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428819#M205230</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi pavan,&lt;/P&gt;&lt;P&gt;here is a good sample code in the link,heck it once:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-basis-abap.com/sapab033.htm" target="test_blank"&gt;http://www.sap-basis-abap.com/sapab033.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;reward if it helps.&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;keerthi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 27 Jun 2006 18:28:52 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2006-06-27T18:28:52Z</dc:date>
    <item>
      <title>ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428812#M205223</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;I am doing a alv report using user command, It is going to dump. It is giving me the error "Field symbol has not yet been assigned".  Below is my code.&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; Report  ZTEST07&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;&lt;/P&gt;&lt;P&gt;*&amp;amp;&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;REPORT  ZTEST07 NO STANDARD PAGE HEADING LINE-SIZE 650&lt;/P&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;TABLES : BSEG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF I_BSEG,&lt;/P&gt;&lt;P&gt;          BELNR LIKE BSEG-BELNR,&lt;/P&gt;&lt;P&gt;          BUKRS LIKE BSEG-BUKRS,&lt;/P&gt;&lt;P&gt;          GJAHR LIKE BSEG-GJAHR,&lt;/P&gt;&lt;P&gt;        END OF I_BSEG.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Internal table for bseg first primary alv report.&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA : IT_BSEG TYPE STANDARD TABLE OF I_BSEG INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;       WA_BSEG TYPE I_BSEG.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;TYPES : BEGIN OF I_BSEG1,&lt;/P&gt;&lt;P&gt;          BELNR LIKE BSEG-BELNR,&lt;/P&gt;&lt;P&gt;          DMBTR LIKE BSEG-DMBTR,&lt;/P&gt;&lt;P&gt;        END OF I_BSEG1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : IT_BSEG1 TYPE STANDARD TABLE OF I_BSEG1 INITIAL SIZE 0,&lt;/P&gt;&lt;P&gt;       WA_BSEG1 TYPE I_BSEG1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*variable for report Id.&lt;/P&gt;&lt;P&gt;DATA : V_REPID LIKE SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : I_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 : IT_LISTHEADER TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*declaration for events table where user command or set pf status will&lt;/P&gt;&lt;P&gt;*be defined.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA : V_EVENTS TYPE SLIS_T_EVENT,&lt;/P&gt;&lt;P&gt;       WA_EVENT TYPE SLIS_ALV_EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*declaration for layout.&lt;/P&gt;&lt;P&gt;DATA : ALV_LAYOUT TYPE SLIS_LAYOUT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*declaration for variant (type of display we want)&lt;/P&gt;&lt;P&gt;DATA : I_VARIANT TYPE DISVARIANT,&lt;/P&gt;&lt;P&gt;       I_VARIANT1 TYPE DISVARIANT,&lt;/P&gt;&lt;P&gt;       I_SAVE(1) TYPE C.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Title displayed when the alv list is displayed&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;DATA : I_TITLE_BSEG1 TYPE LVC_TITLE VALUE 'First List Displayed'.&lt;/P&gt;&lt;P&gt;DATA : I_TITLE_BSEG2 TYPE LVC_TITLE VALUE 'Second List Displayed'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;INITIALIZATION.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  V_REPID = SY-REPID.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  PERFORM BUILD_FIELDCATLOG.&lt;/P&gt;&lt;P&gt;  PERFORM EVENT_CALL.&lt;/P&gt;&lt;P&gt;  PERFORM POPULATE_EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;  PERFORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;  PERFORM BUILD_LISTHEADER USING IT_LISTHEADER.&lt;/P&gt;&lt;P&gt;  PERFORM DISPLAY_ALV_REPORT.&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_fieldcatlog&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;P&gt;FORM BUILD_FIELDCATLOG.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'it_bseg'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'belnr'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = 'Doc Number'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'it_bseg'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'bukrs'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = 'Company Code'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'it_bseg'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'gjahr'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = 'Fiscal Year'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "build_fieldcatlog&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  event_call&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;P&gt;FORM EVENT_CALL.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;     I_LIST_TYPE           = 0&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;P&gt;     ET_EVENTS             = V_EVENTS&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;  LIST_TYPE_WRONG       = 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;ENDFORM.                    "event_call&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  populate_event&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;P&gt;FORM POPULATE_EVENT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    WA_EVENT-FORM = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;    MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME = WA_EVENT-FORM.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'USER_COMMAND'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    WA_EVENT-FORM = 'USER_COMMAND'.&lt;/P&gt;&lt;P&gt;    MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME = WA_EVENT-NAME.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "populate_event&lt;/P&gt;&lt;P&gt;&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  data_retrieVAL&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;P&gt;FORM DATA_RETRIEVAL.&lt;/P&gt;&lt;P&gt;  SELECT BELNR BUKRS GJAHR UP TO 10 ROWS FROM BSEG INTO TABLE IT_BSEG.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "data_retrieVAL&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  BUILD_LISTHEADER&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;I_LISTHEADEtext&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 BUILD_LISTHEADER USING I_LISTHEADER TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt;  DATA HLINE TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;  HLINE-INFO = 'THIS IS MY FIRST ALV PRG'.&lt;/P&gt;&lt;P&gt;  HLINE-TYP = 'H'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BUILD_LISTHEADER&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  DISPLAY_ALV_REPORT&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;P&gt;FORM DISPLAY_ALV_REPORT.&lt;/P&gt;&lt;P&gt;  V_REPID = SY-REPID.&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                = V_REPID&lt;/P&gt;&lt;P&gt;     I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;     I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'&lt;/P&gt;&lt;P&gt;     I_GRID_TITLE                      = I_TITLE_BSEG1&lt;/P&gt;&lt;P&gt;     IT_FIELDCAT                       = I_FIELDCAT[]&lt;/P&gt;&lt;P&gt;     I_SAVE                            = 'A'&lt;/P&gt;&lt;P&gt;     IT_EVENTS                         = V_EVENTS&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                          = IT_BSEG&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;ENDFORM.                    "DISPLAY_ALV_REPORT&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  TOP_OF_PAGE&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;P&gt;FORM TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IT_LIST_COMMENTARY       = IT_LISTHEADER&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_LOGO                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_END_OF_LIST_GRID       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_ALV_FORM               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "TOP_OF_PAGE&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;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;R_UCOMM    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 USER_COMMAND USING R_UCOMM LIKE SY-UCOMM RS_SELFIELD TYPE SLIS_SELFIELD.&lt;/P&gt;&lt;P&gt;  CASE R_UCOMM.&lt;/P&gt;&lt;P&gt;    WHEN '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;      READ TABLE IT_BSEG INTO WA_BSEG INDEX RS_SELFIELD-TABINDEX.&lt;/P&gt;&lt;P&gt;      PERFORM BUILD_FIELDCATLOG_BSEG1.&lt;/P&gt;&lt;P&gt;      PERFORM EVENT_CALL_BSEG1.&lt;/P&gt;&lt;P&gt;      PERFORM POPULATE_EVENT_BSEG1.&lt;/P&gt;&lt;P&gt;      PERFORM DATA_RETRIEVAL_BSEG1.&lt;/P&gt;&lt;P&gt;      PERFORM BUILD_LISTHEADER_BSEG1 USING IT_LISTHEADER.&lt;/P&gt;&lt;P&gt;      PERFORM DISPLAY_ALV_BSEG1.&lt;/P&gt;&lt;P&gt;  ENDCASE.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "USER_COMMAND&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  BUILD_FIELDCATLOG_BSEG1&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;P&gt;FORM BUILD_FIELDCATLOG_BSEG1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'it_bseg1'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'belnr'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = 'Doc Number'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME = 'it_bseg1'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'belnr'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-SELTEXT_M = 'Doc Number'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BUILD_FIELDCATLOG_BSEG1&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  EVENT_CALL_BSEG1&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;P&gt;FORM EVENT_CALL_BSEG1.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'&lt;/P&gt;&lt;P&gt;   EXPORTING&lt;/P&gt;&lt;P&gt;     I_LIST_TYPE           = 0&lt;/P&gt;&lt;P&gt;   IMPORTING&lt;/P&gt;&lt;P&gt;     ET_EVENTS             = V_EVENTS&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;  LIST_TYPE_WRONG       = 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;ENDFORM.                    "EVENT_CALL_BSEG1&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  POPULATE_EVENT_BSEG1&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;P&gt;FORM POPULATE_EVENT_BSEG1.&lt;/P&gt;&lt;P&gt;  READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC EQ 0.&lt;/P&gt;&lt;P&gt;    WA_EVENT-FORM = 'TOP_OF_PAGE'.&lt;/P&gt;&lt;P&gt;    MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME = WA_EVENT-FORM.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "POPULATE_EVENT_BSEG1&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  F_TOP_OF_PAGE&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;P&gt;FORM F_TOP_OF_PAGE.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      IT_LIST_COMMENTARY       = IT_LISTHEADER&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_LOGO                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_END_OF_LIST_GRID       =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  I_ALV_FORM               =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;            .&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;ENDFORM.                    "F_TOP_OF_PAGE&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  DATA_RETRIEVAL_BSEG1&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;P&gt;FORM DATA_RETRIEVAL_BSEG1.&lt;/P&gt;&lt;P&gt;  SELECT BELNR DMBTR FROM BSEG INTO TABLE IT_BSEG1.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "DATA_RETRIEVAL_BSEG1&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  BUILD_LISTHEADER_BSEG1&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;I_LISTHEADEtext&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 BUILD_LISTHEADER_BSEG1 USING I_LISTHEADER TYPE SLIS_T_LISTHEADER.&lt;/P&gt;&lt;P&gt;  DATA : HLINE1 TYPE SLIS_LISTHEADER.&lt;/P&gt;&lt;P&gt;  HLINE1-TYP = 'H'.&lt;/P&gt;&lt;P&gt;  HLINE1-INFO = 'CHECKING PRG'.&lt;/P&gt;&lt;P&gt;ENDFORM.                    "BUILD_LISTHEADER_BSEG1&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  DISPLAY_ALV_BSEG1&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;P&gt;FORM DISPLAY_ALV_BSEG1.&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;/UL&gt;&lt;P&gt;     I_CALLBACK_PROGRAM                = V_REPID&lt;/P&gt;&lt;UL&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;/UL&gt;&lt;P&gt;     I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'&lt;/P&gt;&lt;UL&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;/UL&gt;&lt;P&gt;     I_GRID_TITLE                      = I_TITLE_BSEG2&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_GRID_SETTINGS                   =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IS_LAYOUT                         =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     IT_FIELDCAT                       = I_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;/UL&gt;&lt;P&gt;     I_SAVE                            = 'A'&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          IS_VARIANT                        =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;     IT_EVENTS                         = V_EVENTS&lt;/P&gt;&lt;UL&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;          I_HTML_HEIGHT_TOP                 = 0&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;          I_HTML_HEIGHT_END                 = 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;          IR_SALV_FULLSCREEN_ADAPTER        =&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                          = IT_BSEG1&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;ENDFORM.                    "DISPLAY_ALV_BSEG1&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please help me out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Pavan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 17:27:16 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428812#M205223</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-27T17:27:16Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428813#M205224</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi Pavan&lt;/P&gt;&lt;P&gt;Change the Bolded ones in to caps and give a try&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;WA_FIELDCAT-TABNAME = 'IT_BSEG'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'BELNR'.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;WA_FIELDCAT-SELTEXT_M = 'DOC NUMBER'.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;WA_FIELDCAT-TABNAME = 'IT_BSEG'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'BUKRS'.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;WA_FIELDCAT-SELTEXT_M = 'COMPANY CODE'.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;WA_FIELDCAT-TABNAME = 'IT_BSEG'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = 'GJAHR'.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;&amp;lt;b&amp;gt;WA_FIELDCAT-SELTEXT_M = 'FISCAL YEAR'.&amp;lt;/b&amp;gt;&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Santosh&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 17:30:37 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428813#M205224</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-27T17:30:37Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428814#M205225</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;When building your field catalog, please make sure to use upper case values for TABNAME and FIELDNAME.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;


&amp;lt;b&amp;gt;*WA_FIELDCAT-TABNAME = 'it_bseg1'.
*WA_FIELDCAT-FIELDNAME = 'belnr'.
WA_FIELDCAT-TABNAME = 'IT_BSEG1'.
WA_FIELDCAT-FIELDNAME = 'BELNR'.&amp;lt;/b&amp;gt;
WA_FIELDCAT-SELTEXT_M = 'Doc Number'.
APPEND WA_FIELDCAT TO I_FIELDCAT.
CLEAR WA_FIELDCAT.

&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 17:31:33 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428814#M205225</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2006-06-27T17:31:33Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428815#M205226</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Pavan,&lt;/P&gt;&lt;P&gt;I have executed your program it is&lt;/P&gt;&lt;P&gt;working fine, but i think there is no data&lt;/P&gt;&lt;P&gt;in the server u r working&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;But check once build fieldcatalog_bseg1.&lt;/P&gt;&lt;P&gt;you are declaring in caps and giving it without caps.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;check it once,&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Laxmi.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Message was edited by: Laxmi&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 17:32:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428815#M205226</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-27T17:32:09Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428816#M205227</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;If i change the FORM like so,  i am now getting data.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;No need to push the TABNAME, but the FIELDNAMEs must be capitalized.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;

form build_fieldcatlog.
&amp;lt;b&amp;gt;*  wa_fieldcat-tabname = 'it_bseg'.
  wa_fieldcat-fieldname = 'BELNR'.&amp;lt;/b&amp;gt;
  wa_fieldcat-seltext_m = 'Doc Number'.
  append wa_fieldcat to i_fieldcat.
  clear wa_fieldcat.

&amp;lt;b&amp;gt;*  wa_fieldcat-tabname = 'it_bseg'.
  wa_fieldcat-fieldname = 'BUKRS'.&amp;lt;/b&amp;gt;
  wa_fieldcat-seltext_m = 'Company Code'.
  append wa_fieldcat to i_fieldcat.
  clear wa_fieldcat.

&amp;lt;b&amp;gt;*  wa_fieldcat-tabname = 'it_bseg'.
  wa_fieldcat-fieldname = 'GJAHR'.&amp;lt;/b&amp;gt;
  wa_fieldcat-seltext_m = 'Fiscal Year'.
  append wa_fieldcat to i_fieldcat.
  clear wa_fieldcat.

endform. "build_fieldcatlog


&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;Rich Heilman&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 17:38:24 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428816#M205227</guid>
      <dc:creator>RichHeilman</dc:creator>
      <dc:date>2006-06-27T17:38:24Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428817#M205228</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;HI PAVAN,&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'it_bseg'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = &amp;lt;b&amp;gt;'BELNR'&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_M = 'Doc Number'.&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'it_bseg'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = &amp;lt;b&amp;gt;'BUKRS'&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_M = 'Company Code'.&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-TABNAME = 'it_bseg'.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-FIELDNAME = &amp;lt;b&amp;gt;'GJAHR'&amp;lt;/b&amp;gt;.&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-SELTEXT_M = 'Fiscal Year'.&lt;/P&gt;&lt;P&gt;APPEND WA_FIELDCAT TO I_FIELDCAT.&lt;/P&gt;&lt;P&gt;CLEAR WA_FIELDCAT.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 17:53:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428817#M205228</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-27T17:53:47Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428818#M205229</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi All,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks for your early response and works very fine.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please let me know how to keep hot spot in this program, because I need the amount for that particular document number, whereas is in my program it is giving all.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please help me out.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Pavan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 18:16:09 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428818#M205229</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-27T18:16:09Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428819#M205230</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi pavan,&lt;/P&gt;&lt;P&gt;here is a good sample code in the link,heck it once:&lt;/P&gt;&lt;P&gt;&lt;A href="http://www.sap-basis-abap.com/sapab033.htm" target="test_blank"&gt;http://www.sap-basis-abap.com/sapab033.htm&lt;/A&gt;&lt;/P&gt;&lt;P&gt;reward if it helps.&lt;/P&gt;&lt;P&gt;regards,&lt;/P&gt;&lt;P&gt;keerthi.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 27 Jun 2006 18:28:52 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428819#M205230</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-27T18:28:52Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428820#M205231</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 anyone tell me how to add the hot spot in the above code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Pavan.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Jun 2006 14:02:40 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428820#M205231</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-28T14:02:40Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428821#M205232</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;In the field catalog for the field&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;WA_FIELDCAT-HOTSPOT = 'X'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;You need to activate the events to handle the event.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;Ravi&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Jun 2006 14:05:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428821#M205232</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-28T14:05:38Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428822#M205233</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi pavan,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;report  ztest_alv_check     message-id zz           .

type-pools: slis.
data: x_fieldcat type slis_fieldcat_alv,
      it_fieldcat type slis_t_fieldcat_alv,
      l_layout type slis_layout_alv,
      x_events type slis_alv_event,
      it_events type slis_t_event.

data: begin of itab occurs 0,
      vbeln like vbak-vbeln,
      posnr like vbap-posnr,
      chk(1),
     end of itab.

select vbeln
       posnr
       from vbap
       up to 20 rows
       into table itab.

x_fieldcat-fieldname = 'CHK'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-col_pos = 1.
x_fieldcat-input = 'X'.
x_fieldcat-edit = 'X'.
x_fieldcat-checkbox = 'X'.
append x_fieldcat to it_fieldcat.
clear x_fieldcat.

x_fieldcat-fieldname = 'VBELN'.
x_fieldcat-seltext_l = 'VBELN'.
&amp;lt;b&amp;gt;x_fieldcat-hotspot = 'X'.&amp;lt;/b&amp;gt;
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-col_pos = 2.
append x_fieldcat to it_fieldcat.
clear x_fieldcat.

x_fieldcat-fieldname = 'POSNR'.
x_fieldcat-seltext_l = 'POSNR'.
x_fieldcat-tabname = 'ITAB'.
x_fieldcat-col_pos = 3.
append x_fieldcat to it_fieldcat.
clear x_fieldcat.


call function 'REUSE_ALV_GRID_DISPLAY'
  exporting
    i_callback_program       = sy-repid
    is_layout                = l_layout
&amp;lt;b&amp;gt;    i_callback_pf_status_set = 'STATUS'
    i_callback_user_command  = 'USER_COMMAND'&amp;lt;/b&amp;gt;
    it_fieldcat              = it_fieldcat
  tables
    t_outtab                 = itab
  exceptions
    program_error            = 1
    others                   = 2.
if sy-subrc &amp;lt;&amp;gt; 0.

  message id sy-msgid type sy-msgty number sy-msgno
          with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
endif.

&amp;lt;b&amp;gt;form status using p_extab type slis_t_extab.
*- Pf status
  set pf-status 'STATUS'. "enable F2 key ,give okcode &amp;amp;IC1
endform.                 " STATUS

form user_command using r_ucomm     like sy-ucomm
                               rs_selfield type slis_selfield.

  case r_ucomm.

    when 'BACK' or 'CANC' or 'EXIT'.
      leave to screen 0.
    when '&amp;amp;IC1'.
      if rs_selfield-fieldname = 'VBELN'.
        set parameter id 'AUN' field rs_selfield-value.
        call transaction 'VA03' and skip first screen.
      endif.
  endcase.
endform.                    "USER_COMMAND&amp;lt;/b&amp;gt;&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt;vijay&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Jun 2006 14:24:01 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428822#M205233</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2006-06-28T14:24:01Z</dc:date>
    </item>
    <item>
      <title>Re: ALV report - User Command</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428823#M205234</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Pavan and all other ALVers,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;what about 2 smart form routines to create a valid and useful fieldcatalog for an internal table of any structure, just pass the table to be displayed and get back the field catalog:&lt;/P&gt;&lt;P&gt;(If you need it for grid control, just use FUNCTION 'LVC_TRANSFER_FROM_SLIS' to get the field catalog in OO LVC format)&lt;/P&gt;&lt;P&gt;&amp;lt;pre&amp;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  ALV_FIELDCAT_FOR_ITAB&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;      Feldkatalog from (arbitrary) internal Table (c) Clemens Li&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      * build field catalog from        type description&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 alv_fieldcat_for_itab                                  "#EC *&lt;/P&gt;&lt;P&gt;  TABLES   pt_outtab                      TYPE table        "#EC *&lt;/P&gt;&lt;P&gt;  CHANGING pt_alv_fieldcat                TYPE slis_t_fieldcat_alv."#EC *&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    l_desc                                TYPE sydes_desc,&lt;/P&gt;&lt;P&gt;    l_alv_fieldcat                        TYPE slis_fieldcat_alv,&lt;/P&gt;&lt;P&gt;    l_longfield                           TYPE fname.&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS:&lt;/P&gt;&lt;P&gt;    &amp;lt;typeinfo&amp;gt;                            TYPE sydes_typeinfo,&lt;/P&gt;&lt;P&gt;    &amp;lt;nameinfo&amp;gt;                            TYPE sydes_nameinfo.&lt;/P&gt;&lt;P&gt;  DESCRIBE FIELD pt_outtab INTO l_desc.                     "#EC *&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  LOOP AT l_desc-types&lt;/P&gt;&lt;P&gt;      ASSIGNING &amp;lt;typeinfo&amp;gt;&lt;/P&gt;&lt;P&gt;      WHERE NOT idx_name IS INITIAL&lt;/P&gt;&lt;P&gt;        AND table_kind IS INITIAL "no entries for deep table like color&lt;/P&gt;&lt;P&gt;        AND back                          = 1. "top-level-entries only.&lt;/P&gt;&lt;P&gt;    READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_name&lt;/P&gt;&lt;P&gt;      ASSIGNING &amp;lt;nameinfo&amp;gt;.&lt;/P&gt;&lt;P&gt;    CHECK &amp;lt;nameinfo&amp;gt;-name                 &amp;lt;&amp;gt; 'INCLUDE'.&lt;/P&gt;&lt;P&gt;    l_alv_fieldcat-fieldname              = &amp;lt;nameinfo&amp;gt;-name.&lt;/P&gt;&lt;P&gt;    WHILE NOT &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.&lt;/P&gt;&lt;P&gt;      ADD 1 TO &amp;lt;typeinfo&amp;gt;-idx_name.&lt;/P&gt;&lt;P&gt;      READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_name&lt;/P&gt;&lt;P&gt;        ASSIGNING &amp;lt;nameinfo&amp;gt;.&lt;/P&gt;&lt;P&gt;      CONCATENATE&lt;/P&gt;&lt;P&gt;        l_alv_fieldcat-fieldname&lt;/P&gt;&lt;P&gt;        &amp;lt;nameinfo&amp;gt;-name&lt;/P&gt;&lt;P&gt;        INTO l_alv_fieldcat-fieldname.&lt;/P&gt;&lt;P&gt;    ENDWHILE." not &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.&lt;/P&gt;&lt;P&gt;    READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_help_id&lt;/P&gt;&lt;P&gt;      ASSIGNING &amp;lt;nameinfo&amp;gt;.&lt;/P&gt;&lt;P&gt;    IF sy-subrc                           = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Caution: Help-ID may be Tablename-Fieldname and thus longer&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;than 30 Chars; l_alv_fieldcat-rollname is 30 Chars only&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      l_alv_fieldcat-rollname             = &amp;lt;nameinfo&amp;gt;-name.&lt;/P&gt;&lt;P&gt;      l_longfield                         = &amp;lt;nameinfo&amp;gt;-name.&lt;/P&gt;&lt;P&gt;      WHILE NOT &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.&lt;/P&gt;&lt;P&gt;        ADD 1 TO &amp;lt;typeinfo&amp;gt;-idx_help_id.&lt;/P&gt;&lt;P&gt;        READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_help_id&lt;/P&gt;&lt;P&gt;          ASSIGNING &amp;lt;nameinfo&amp;gt;.&lt;/P&gt;&lt;P&gt;        CONCATENATE&lt;/P&gt;&lt;P&gt;          l_longfield&lt;/P&gt;&lt;P&gt;          &amp;lt;nameinfo&amp;gt;-name&lt;/P&gt;&lt;P&gt;          INTO l_longfield.&lt;/P&gt;&lt;P&gt;      ENDWHILE." not l_desc-continue is initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;help id may be data element or &amp;lt;table&amp;gt;-&amp;lt;field&amp;gt;&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      IF l_longfield CA '-'.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;get data                                type for table field&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;        PERFORM get_rollname_4_tabfield&lt;/P&gt;&lt;P&gt;          USING l_longfield CHANGING l_alv_fieldcat.&lt;/P&gt;&lt;P&gt;      ENDIF." l_longfield ca '-'.&lt;/P&gt;&lt;P&gt;    ELSE.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;No Help-ID: Use Fieldname as text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      l_alv_fieldcat-seltext_s            =&lt;/P&gt;&lt;P&gt;      l_alv_fieldcat-seltext_m            =&lt;/P&gt;&lt;P&gt;      l_alv_fieldcat-seltext_l            =&lt;/P&gt;&lt;P&gt;      l_alv_fieldcat-reptext_ddic         =&lt;/P&gt;&lt;P&gt;      &amp;lt;nameinfo&amp;gt;-name.&lt;/P&gt;&lt;P&gt;    ENDIF." sy-subrc                      = 0.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Starting 4.7: get edit mask&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF NOT &amp;lt;typeinfo&amp;gt;-idx_edit_mask IS INITIAL.&lt;/P&gt;&lt;P&gt;      READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_edit_mask&lt;/P&gt;&lt;P&gt;        ASSIGNING &amp;lt;nameinfo&amp;gt;.&lt;/P&gt;&lt;P&gt;      l_alv_fieldcat-edit_mask            = &amp;lt;nameinfo&amp;gt;-name.&lt;/P&gt;&lt;P&gt;      IF NOT &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.&lt;/P&gt;&lt;P&gt;        ADD 1 TO &amp;lt;typeinfo&amp;gt;-idx_edit_mask.&lt;/P&gt;&lt;P&gt;        READ TABLE l_desc-names INDEX &amp;lt;typeinfo&amp;gt;-idx_edit_mask&lt;/P&gt;&lt;P&gt;          ASSIGNING &amp;lt;nameinfo&amp;gt;.&lt;/P&gt;&lt;P&gt;        CONCATENATE&lt;/P&gt;&lt;P&gt;          l_alv_fieldcat-edit_mask&lt;/P&gt;&lt;P&gt;          &amp;lt;nameinfo&amp;gt;-name&lt;/P&gt;&lt;P&gt;          INTO l_alv_fieldcat-edit_mask.&lt;/P&gt;&lt;P&gt;      ENDIF." not &amp;lt;nameinfo&amp;gt;-continue IS INITIAL.&lt;/P&gt;&lt;P&gt;    ENDIF." not &amp;lt;typeinfo&amp;gt;-IDX_EDIT_MASK is initial.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;assign length, output length and decimals&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    l_alv_fieldcat-intlen                 = &amp;lt;typeinfo&amp;gt;-length.&lt;/P&gt;&lt;P&gt;    l_alv_fieldcat-outputlen              = &amp;lt;typeinfo&amp;gt;-output_length.&lt;/P&gt;&lt;P&gt;    l_alv_fieldcat-decimals_out           = &amp;lt;typeinfo&amp;gt;-decimals.&lt;/P&gt;&lt;P&gt;    l_alv_fieldcat-inttype                = &amp;lt;typeinfo&amp;gt;-type.&lt;/P&gt;&lt;P&gt;    APPEND l_alv_fieldcat TO pt_alv_fieldcat.&lt;/P&gt;&lt;P&gt;    CLEAR:  "prevent anything 2 B  taken for subsequent fields&lt;/P&gt;&lt;P&gt;      l_alv_fieldcat.&lt;/P&gt;&lt;P&gt;  ENDLOOP." at l_desc-types where not IDX_NAME is in initial.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " ALV_FIELDCAT_FOR_ITAB&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;P&gt;*&amp;amp;      Form  get_rollname_4_tabfield&lt;/P&gt;&lt;P&gt;*&amp;amp;----&lt;/P&gt;&lt;HR originaltext="----------------------------------------------------------------" /&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;      Get Data                          type for Table field&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;*----&lt;/P&gt;&lt;HR originaltext="-----------------------------------------------------------------" /&gt;&lt;P&gt;FORM get_rollname_4_tabfield&lt;/P&gt;&lt;P&gt;  USING    p_fname                        TYPE fname&lt;/P&gt;&lt;P&gt;  CHANGING p_alv_fieldcat                 TYPE slis_fieldcat_alv.&lt;/P&gt;&lt;P&gt;  FIELD-SYMBOLS:&lt;/P&gt;&lt;P&gt;    &amp;lt;dfies&amp;gt;                               TYPE dfies.&lt;/P&gt;&lt;P&gt;  DATA:&lt;/P&gt;&lt;P&gt;    l_tabname                             TYPE tabname,&lt;/P&gt;&lt;P&gt;     lt_dfies                             TYPE TABLE OF dfies,&lt;/P&gt;&lt;P&gt;    l_fieldname                           TYPE fieldname.&lt;/P&gt;&lt;P&gt;  SPLIT p_fname AT '-'&lt;/P&gt;&lt;P&gt;    INTO l_tabname l_fieldname.&lt;/P&gt;&lt;P&gt;  CLEAR p_alv_fieldcat-rollname.&lt;/P&gt;&lt;P&gt;  CALL FUNCTION 'DDIF_FIELDINFO_GET'&lt;/P&gt;&lt;P&gt;    EXPORTING&lt;/P&gt;&lt;P&gt;      tabname                             = l_tabname&lt;/P&gt;&lt;P&gt;      fieldname                           = l_fieldname&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  LANGU                                 = SY-LANGU&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  LFIELDNAME                            = ' '&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  ALL_TYPES                             = ' '&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;  X030L_WA                              =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DDOBJTYPE                             =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  DFIES_WA                              =&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  LINES_DESCR                           =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   TABLES&lt;/P&gt;&lt;P&gt;     dfies_tab                            =  lt_dfies&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;  FIXED_VALUES                          =&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;   EXCEPTIONS&lt;/P&gt;&lt;P&gt;     not_found                            = 1&lt;/P&gt;&lt;P&gt;     internal_error                       = 2&lt;/P&gt;&lt;P&gt;     OTHERS                               = 3&lt;/P&gt;&lt;P&gt;            .&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;  ELSE.&lt;/P&gt;&lt;P&gt;    READ TABLE   lt_dfies ASSIGNING &amp;lt;dfies&amp;gt; INDEX 1.&lt;/P&gt;&lt;P&gt;    p_alv_fieldcat-rollname               = &amp;lt;dfies&amp;gt;-rollname.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;Und wenn keinerlei Twexte gepflegt sind?&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;    IF &amp;lt;dfies&amp;gt;-reptext IS INITIAL AND&lt;/P&gt;&lt;P&gt;       &amp;lt;dfies&amp;gt;-scrtext_s IS INITIAL AND&lt;/P&gt;&lt;P&gt;       &amp;lt;dfies&amp;gt;-scrtext_m IS INITIAL AND&lt;/P&gt;&lt;P&gt;       &amp;lt;dfies&amp;gt;-scrtext_l IS INITIAL.&lt;/P&gt;&lt;UL&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;No Text: Use Fieldname as text&lt;/P&gt;&lt;/LI&gt;&lt;/UL&gt;&lt;P&gt;      p_alv_fieldcat-seltext_s            =&lt;/P&gt;&lt;P&gt;      p_alv_fieldcat-seltext_m            =&lt;/P&gt;&lt;P&gt;      p_alv_fieldcat-seltext_l            =&lt;/P&gt;&lt;P&gt;      p_alv_fieldcat-reptext_ddic         =&lt;/P&gt;&lt;P&gt;      p_alv_fieldcat-fieldname.&lt;/P&gt;&lt;P&gt;    ENDIF." &amp;lt;dfies&amp;gt;-reptext IS INITIAL AND&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;ENDFORM.                    " get_rollname_4_tabfield&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;lt;/pre&amp;gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Clemens&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 28 Jun 2006 16:08:08 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-report-user-command/m-p/1428823#M205234</guid>
      <dc:creator>Clemenss</dc:creator>
      <dc:date>2006-06-28T16:08:08Z</dc:date>
    </item>
  </channel>
</rss>

