<?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: interactive alv report in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525648#M572131</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;check this code&lt;/P&gt;&lt;P&gt;*-----tables declaration&lt;/P&gt;&lt;P&gt;TABLES:EKKO.&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;*-----data declaration&lt;/P&gt;&lt;P&gt;TYPES:BEGIN OF X_EKKO,&lt;/P&gt;&lt;P&gt;        EBELN type EKKO-EBELN,           "PO Number&lt;/P&gt;&lt;P&gt;        BUKRS type EKKO-BUKRS,           "Company code&lt;/P&gt;&lt;P&gt;        BSART type EKKO-BSART,           "Purchasing Document type&lt;/P&gt;&lt;P&gt;        LIFNR type EKKO-LIFNR,           "Vendor&lt;/P&gt;&lt;P&gt;        SPRAS type EKKO-SPRAS,           "Language Key&lt;/P&gt;&lt;P&gt;        ZTERM type EKKO-ZTERM,           "Terms of payment key&lt;/P&gt;&lt;P&gt;      END OF X_EKKO,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     BEGIN OF X_EKPO,&lt;/P&gt;&lt;P&gt;       EBELN type EKPO-EBELN,&lt;/P&gt;&lt;P&gt;       EBELP type EKPO-EBELP,            "Item number&lt;/P&gt;&lt;P&gt;       WERKS type EKPO-WERKS,            "Plant&lt;/P&gt;&lt;P&gt;       MATNR type EKPO-MATNR,            "Material Number&lt;/P&gt;&lt;P&gt;       MATKL type EKPO-MATKL,            "Material Group&lt;/P&gt;&lt;P&gt;     END OF X_EKPO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:IT_EKKO TYPE STANDARD TABLE OF X_EKKO,&lt;/P&gt;&lt;P&gt;     IT_EKPO TYPE STANDARD TABLE OF X_EKPO,&lt;/P&gt;&lt;P&gt;     WA_EKKO TYPE X_EKKO,&lt;/P&gt;&lt;P&gt;     WA_EKPO TYPE X_EKPO,                       "#EC *&lt;/P&gt;&lt;P&gt;     IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     IT_FIELDCAT1 TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     WA_FIELDCAT1 TYPE SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Selection-screen design&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS:S_EBELN FOR EKKO-EBELN.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----SELECTION-SCREEN VALIDATION&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;  SELECT EBELN&lt;/P&gt;&lt;P&gt;  FROM EKKO&lt;/P&gt;&lt;P&gt;  INTO TABLE IT_EKKO&lt;/P&gt;&lt;P&gt;  WHERE EBELN IN S_EBELN.&lt;/P&gt;&lt;P&gt;*-----if there are no values display an error&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E009.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Data retrieval&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;*-----retrieving data from the PO header&lt;/P&gt;&lt;P&gt;  SELECT EBELN BUKRS BSART LIFNR SPRAS ZTERM&lt;/P&gt;&lt;P&gt;  FROM EKKO&lt;/P&gt;&lt;P&gt;  INTO TABLE IT_EKKO&lt;/P&gt;&lt;P&gt;  WHERE EBELN IN S_EBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----if there are no records display an error&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E003.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Field catalog for the PO Header&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT[].&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-COL_POS   = '1'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-KEY   = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-HOTSPOT   = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '2'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '3'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'BSART'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'BSART'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '4'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '5'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'SPRAS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'SPRAS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '6'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZTERM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'ZTERM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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;*-----to display the header details&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      = SY-REPID&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT             = IT_FIELDCAT[]&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                = IT_EKKO[].&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;UCOMM      text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;FIELD1     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 UCOMM LIKE SY-UCOMM FIELD1 TYPE      "#EC CALLED&lt;/P&gt;&lt;P&gt;SLIS_SELFIELD.                                               "#EC *&lt;/P&gt;&lt;P&gt;  READ TABLE IT_EKKO INTO WA_EKKO INDEX FIELD1-TABINDEX.&lt;/P&gt;&lt;P&gt;*-----retrieving item details from the PO Item table&lt;/P&gt;&lt;P&gt;  SELECT EBELN EBELP WERKS MATNR MATKL&lt;/P&gt;&lt;P&gt;  FROM EKPO&lt;/P&gt;&lt;P&gt;  INTO TABLE IT_EKPO&lt;/P&gt;&lt;P&gt;  WHERE EBELN = WA_EKKO-EBELN.&lt;/P&gt;&lt;P&gt;*-----to display an error if other than PO Number is clicked&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E001.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Fieldcatalog for the PO item details&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT1[].&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '1'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '2'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'EBELP'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'EBELP'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '3'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'WERKS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'WERKS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '4'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '5'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'MATKL'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'MATKL'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----to display the item details&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 = SY-REPID&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT        = IT_FIELDCAT1[]&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB           = IT_EKPO[].&lt;/P&gt;&lt;P&gt;ENDFORM.                    "user_command_form&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 18 Jul 2007 05:35:56 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2007-07-18T05:35:56Z</dc:date>
    <item>
      <title>interactive alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525646#M572129</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;how to do interactive alv report? &lt;/P&gt;&lt;P&gt;i have tried by keeping&lt;/P&gt;&lt;P&gt;layout1-f2code = '&amp;amp;IC1'. &lt;/P&gt;&lt;P&gt;and in the user command  in wrote syntax like&lt;/P&gt;&lt;P&gt;case sy-ucomm.&lt;/P&gt;&lt;P&gt;when '&amp;amp;IC1'.&lt;/P&gt;&lt;P&gt;select statement and&lt;/P&gt;&lt;P&gt;call function reuse_alvgrid.&lt;/P&gt;&lt;P&gt;endcase.&lt;/P&gt;&lt;P&gt;i could not get it. plz help me over this.&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Jul 2007 05:19:30 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525646#M572129</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-18T05:19:30Z</dc:date>
    </item>
    <item>
      <title>Re: interactive alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525647#M572130</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;here is the example program &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
An Interactive ALV Report 
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; Report  ZZ_22038_22098_002                                          *
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp; This is an Interactive ALV report, where on line slection we can see
*&amp;amp;  the secondry list
*&amp;amp;
*&amp;amp;                                                                     *
*&amp;amp;---------------------------------------------------------------------*

REPORT  ZZ_22038_22098_002 NO STANDARD PAGE HEADING LINE-SIZE 650
MESSAGE-ID ZZ_9838                      .

TYPE-POOLS: SLIS.
*type declaration for values from ekko
TYPES: BEGIN OF I_EKKO,
       EBELN LIKE EKKO-EBELN,
       AEDAT LIKE EKKO-AEDAT,
       BUKRS LIKE EKKO-BUKRS,
       BSART LIKE EKKO-BSART,
       LIFNR LIKE EKKO-LIFNR,
       END OF I_EKKO.

DATA: IT_EKKO TYPE STANDARD TABLE OF I_EKKO INITIAL SIZE 0,
      WA_EKKO TYPE I_EKKO.

*type declaration for values from ekpo
TYPES: BEGIN OF I_EKPO,
       EBELN LIKE EKPO-EBELN,
       EBELP LIKE EKPO-EBELP,
       MATNR LIKE EKPO-MATNR,
       MENGE LIKE EKPO-MENGE,
       MEINS LIKE EKPO-MEINS,
       NETPR LIKE EKPO-NETPR,
       END OF I_EKPO.

DATA: IT_EKPO TYPE STANDARD TABLE OF I_EKPO INITIAL SIZE 0,
      WA_EKPO TYPE I_EKPO .

*variable for Report ID
DATA: V_REPID LIKE SY-REPID .

*declaration for fieldcatalog
DATA: I_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
      WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV.


DATA: IT_LISTHEADER TYPE SLIS_T_LISTHEADER.

* declaration for events table where user comand or set PF status will
* be defined
DATA: V_EVENTS TYPE SLIS_T_EVENT,
      WA_EVENT TYPE SLIS_ALV_EVENT.

* declartion for layout
DATA: ALV_LAYOUT TYPE SLIS_LAYOUT_ALV.

* declaration for variant(type of display we want)
DATA: I_VARIANT TYPE DISVARIANT,
      I_VARIANT1 TYPE DISVARIANT,
      I_SAVE(1) TYPE C.

*PARAMETERS : p_var TYPE disvariant-variant.

*Title displayed when the alv list is displayed
DATA:  I_TITLE_EKKO TYPE LVC_TITLE VALUE 'FIRST LIST DISPLAYED'.
DATA:  I_TITLE_EKPO TYPE LVC_TITLE VALUE 'SECONDRY LIST DISPLAYED'.

INITIALIZATION.
  V_REPID = SY-REPID.
  PERFORM BUILD_FIELDCATLOG.
  PERFORM EVENT_CALL.
  PERFORM POPULATE_EVENT.

START-OF-SELECTION.
  PERFORM DATA_RETRIEVAL.
  PERFORM BUILD_LISTHEADER USING IT_LISTHEADER.
  PERFORM DISPLAY_ALV_REPORT.

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FIELDCATLOG
*&amp;amp;--------------------------------------------------------------------*
*       Fieldcatalog has all the field details from ekko
*---------------------------------------------------------------------*
FORM BUILD_FIELDCATLOG.
  WA_FIELDCAT-TABNAME = 'IT_EKKO'.
  WA_FIELDCAT-FIELDNAME = 'EBELN'.
  WA_FIELDCAT-SELTEXT_M = 'PO NO.'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-TABNAME = 'IT_EKKO'.
  WA_FIELDCAT-FIELDNAME = 'AEDAT'.
  WA_FIELDCAT-SELTEXT_M = 'DATE.'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.

  WA_FIELDCAT-TABNAME = 'IT_EKKO'.
  WA_FIELDCAT-FIELDNAME = 'BUKRS'.
  WA_FIELDCAT-SELTEXT_M = 'COMPANY CODE'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.

WA_FIELDCAT-TABNAME = 'IT_EKKO'.
  WA_FIELDCAT-FIELDNAME = 'BUKRS'.
  WA_FIELDCAT-SELTEXT_M = 'DOCMENT TYPE'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.

WA_FIELDCAT-TABNAME = 'IT_EKKO'.
  WA_FIELDCAT-FIELDNAME = 'LIFNR'.
  WA_FIELDCAT-NO_OUT    = 'X'.
  WA_FIELDCAT-SELTEXT_M = 'VENDOR CODE'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.


ENDFORM.                    "BUILD_FIELDCATLOG

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  EVENT_CALL
*&amp;amp;--------------------------------------------------------------------*
*   we get all events - TOP OF PAGE or USER COMMAND in table v_events
*---------------------------------------------------------------------*
FORM EVENT_CALL.
  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
   EXPORTING
     I_LIST_TYPE           = 0
   IMPORTING
     ET_EVENTS             = V_EVENTS
*  EXCEPTIONS
*    LIST_TYPE_WRONG       = 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.
ENDFORM.                    "EVENT_CALL

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  POPULATE_EVENT
*&amp;amp;--------------------------------------------------------------------*
*      Events populated for TOP OF PAGE &amp;amp; USER COMAND
*---------------------------------------------------------------------*
FORM POPULATE_EVENT.
  READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
  IF SY-SUBRC EQ 0.
    WA_EVENT-FORM = 'TOP_OF_PAGE'.
    MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME =
WA_EVENT-FORM.
  ENDIF.

  READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'USER_COMMAND'.
  IF SY-SUBRC EQ 0.
    WA_EVENT-FORM = 'USER_COMMAND'.
    MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME =
WA_EVENT-NAME.
  ENDIF.
ENDFORM.                    "POPULATE_EVENT


*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  data_retrieval
*&amp;amp;--------------------------------------------------------------------*
*   retreiving values from the database table ekko
*---------------------------------------------------------------------*
FORM DATA_RETRIEVAL.
  SELECT EBELN AEDAT BUKRS BSART LIFNR FROM EKKO INTO TABLE IT_EKKO.

ENDFORM.                    "data_retrieval
*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  bUild_listheader
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
*      --&amp;gt;I_LISTHEADEtext
*---------------------------------------------------------------------*
FORM BUILD_LISTHEADER USING I_LISTHEADER TYPE SLIS_T_LISTHEADER.
  DATA HLINE TYPE SLIS_LISTHEADER.
  HLINE-INFO = 'this is my first alv pgm'.
  HLINE-TYP = 'H'.
ENDFORM.                    "build_listheader

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  display_alv_report
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM DISPLAY_ALV_REPORT.
  V_REPID = SY-REPID.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
   EXPORTING
     I_CALLBACK_PROGRAM                = V_REPID
*   I_CALLBACK_PF_STATUS_SET          = ' '
     I_CALLBACK_USER_COMMAND           = 'USER_COMMAND'
     I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'
     I_GRID_TITLE                      = I_TITLE_EKKO
*   I_GRID_SETTINGS                   =
*   IS_LAYOUT                         = ALV_LAYOUT
     IT_FIELDCAT                       = I_FIELDCAT[]
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
*     i_default                         = 'ZLAY1'
     I_SAVE                            = 'A'
*     is_variant                        = i_variant
     IT_EVENTS                         = V_EVENTS
    TABLES
      T_OUTTAB                          = IT_EKKO
* 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.
ENDFORM.                    "display_alv_report




*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  TOP_OF_PAGE
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM TOP_OF_PAGE.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      IT_LIST_COMMENTARY       = IT_LISTHEADER
*    i_logo                   =
*    I_END_OF_LIST_GRID       =
            .

ENDFORM.                    "TOP_OF_PAGE

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  USER_COMMAND
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
*      --&amp;gt;R_UCOMM    text
*      --&amp;gt;,          text
*      --&amp;gt;RS_SLEFIELDtext
*---------------------------------------------------------------------*
FORM USER_COMMAND USING R_UCOMM LIKE SY-UCOMM
RS_SELFIELD TYPE SLIS_SELFIELD.
  CASE R_UCOMM.
    WHEN '&amp;amp;IC1'.
      READ TABLE IT_EKKO INTO WA_EKKO INDEX RS_SELFIELD-TABINDEX.
      PERFORM BUILD_FIELDCATLOG_EKPO.
      PERFORM EVENT_CALL_EKPO.
      PERFORM POPULATE_EVENT_EKPO.
      PERFORM DATA_RETRIEVAL_EKPO.
      PERFORM BUILD_LISTHEADER_EKPO USING IT_LISTHEADER.
      PERFORM DISPLAY_ALV_EKPO.
  ENDCASE.
ENDFORM.                    "user_command
*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FIELDCATLOG_EKPO
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM BUILD_FIELDCATLOG_EKPO.

  WA_FIELDCAT-TABNAME = 'IT_EKPO'.
  WA_FIELDCAT-FIELDNAME = 'EBELN'.
  WA_FIELDCAT-SELTEXT_M = 'PO NO.'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.
  WA_FIELDCAT-TABNAME = 'IT_EKPO'.
  WA_FIELDCAT-FIELDNAME = 'EBELP'.
  WA_FIELDCAT-SELTEXT_M = 'LINE NO'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.
  WA_FIELDCAT-TABNAME = 'I_EKPO'.
  WA_FIELDCAT-FIELDNAME = 'MATNR'.
  WA_FIELDCAT-SELTEXT_M = 'MATERIAL NO.'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.
WA_FIELDCAT-TABNAME = 'I_EKPO'.
  WA_FIELDCAT-FIELDNAME = 'MENGE'.
  WA_FIELDCAT-SELTEXT_M = 'QUANTITY'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.

WA_FIELDCAT-TABNAME = 'I_EKPO'.
  WA_FIELDCAT-FIELDNAME = 'MEINS'.
  WA_FIELDCAT-SELTEXT_M = 'UOM'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.

WA_FIELDCAT-TABNAME = 'I_EKPO'.
  WA_FIELDCAT-FIELDNAME = 'NETPR'.
  WA_FIELDCAT-SELTEXT_M = 'PRICE'.
  APPEND WA_FIELDCAT TO I_FIELDCAT.
  CLEAR WA_FIELDCAT.


ENDFORM.                    "BUILD_FIELDCATLOG_EKPO

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  event_call_ekpo
*&amp;amp;--------------------------------------------------------------------*
*   we get all events - TOP OF PAGE or USER COMMAND in table v_events
*---------------------------------------------------------------------*
FORM EVENT_CALL_EKPO.
  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
   EXPORTING
     I_LIST_TYPE           = 0
   IMPORTING
     ET_EVENTS             = V_EVENTS
* EXCEPTIONS
*   LIST_TYPE_WRONG       = 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.
ENDFORM.                    "event_call_ekpo


*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  POPULATE_EVENT
*&amp;amp;--------------------------------------------------------------------*
*        Events populated for TOP OF PAGE &amp;amp; USER COMAND
*---------------------------------------------------------------------*
FORM POPULATE_EVENT_EKPO.
  READ TABLE V_EVENTS INTO WA_EVENT WITH KEY NAME = 'TOP_OF_PAGE'.
  IF SY-SUBRC EQ 0.
    WA_EVENT-FORM = 'TOP_OF_PAGE'.
    MODIFY V_EVENTS FROM WA_EVENT TRANSPORTING FORM WHERE NAME =
WA_EVENT-FORM.
  ENDIF.

  ENDFORM.                    "POPULATE_EVENT

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  TOP_OF_PAGE
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
FORM F_TOP_OF_PAGE.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      IT_LIST_COMMENTARY       = IT_LISTHEADER
*    i_logo                   =
*    I_END_OF_LIST_GRID       =
            .

ENDFORM.                    "TOP_OF_PAGE

*&amp;amp;--------------------------------------------------------------------*
*&amp;amp;      Form  USER_COMMAND
*&amp;amp;--------------------------------------------------------------------*
*       text
*---------------------------------------------------------------------*
*      --&amp;gt;R_UCOMM    text
*      --&amp;gt;,          text
*      --&amp;gt;RS_SLEFIELDtext
*---------------------------------------------------------------------*

*retreiving values from the database table ekko
FORM DATA_RETRIEVAL_EKPO.
SELECT EBELN EBELP MATNR MENGE MEINS NETPR FROM EKPO INTO TABLE IT_EKPO.
ENDFORM.

FORM BUILD_LISTHEADER_EKPO USING I_LISTHEADER TYPE SLIS_T_LISTHEADER.
DATA: HLINE1 TYPE SLIS_LISTHEADER.
HLINE1-TYP = 'H'.
HLINE1-INFO = 'CHECKING PGM'.
ENDFORM.


FORM DISPLAY_ALV_EKPO.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
 EXPORTING
*   I_INTERFACE_CHECK                 = ' '
*   I_BYPASSING_BUFFER                = ' '
*   I_BUFFER_ACTIVE                   = ' '
   I_CALLBACK_PROGRAM                = V_REPID
*   I_CALLBACK_PF_STATUS_SET          = ' '
*   I_CALLBACK_USER_COMMAND           = 'F_USER_COMMAND'
   I_CALLBACK_TOP_OF_PAGE            = 'TOP_OF_PAGE'
*   I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*   I_CALLBACK_HTML_END_OF_LIST       = ' '
*   I_STRUCTURE_NAME                  =
*   I_BACKGROUND_ID                   = ' '
   I_GRID_TITLE                      = I_TITLE_EKPO
*   I_GRID_SETTINGS                   =
*   IS_LAYOUT                         =
   IT_FIELDCAT                       = I_FIELDCAT[]
*   IT_EXCLUDING                      =
*   IT_SPECIAL_GROUPS                 =
*   IT_SORT                           =
*   IT_FILTER                         =
*   IS_SEL_HIDE                       =
*   I_DEFAULT                         =
   I_SAVE                            = 'A'
*   IS_VARIANT                        =
   IT_EVENTS                         = V_EVENTS
  TABLES
    T_OUTTAB                          = IT_EKPO
 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.
ENDFORM.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards&lt;/P&gt;&lt;P&gt; Sudheer&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Jul 2007 05:23:45 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525647#M572130</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-18T05:23:45Z</dc:date>
    </item>
    <item>
      <title>Re: interactive alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525648#M572131</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi,&lt;/P&gt;&lt;P&gt;check this code&lt;/P&gt;&lt;P&gt;*-----tables declaration&lt;/P&gt;&lt;P&gt;TABLES:EKKO.&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;*-----data declaration&lt;/P&gt;&lt;P&gt;TYPES:BEGIN OF X_EKKO,&lt;/P&gt;&lt;P&gt;        EBELN type EKKO-EBELN,           "PO Number&lt;/P&gt;&lt;P&gt;        BUKRS type EKKO-BUKRS,           "Company code&lt;/P&gt;&lt;P&gt;        BSART type EKKO-BSART,           "Purchasing Document type&lt;/P&gt;&lt;P&gt;        LIFNR type EKKO-LIFNR,           "Vendor&lt;/P&gt;&lt;P&gt;        SPRAS type EKKO-SPRAS,           "Language Key&lt;/P&gt;&lt;P&gt;        ZTERM type EKKO-ZTERM,           "Terms of payment key&lt;/P&gt;&lt;P&gt;      END OF X_EKKO,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;     BEGIN OF X_EKPO,&lt;/P&gt;&lt;P&gt;       EBELN type EKPO-EBELN,&lt;/P&gt;&lt;P&gt;       EBELP type EKPO-EBELP,            "Item number&lt;/P&gt;&lt;P&gt;       WERKS type EKPO-WERKS,            "Plant&lt;/P&gt;&lt;P&gt;       MATNR type EKPO-MATNR,            "Material Number&lt;/P&gt;&lt;P&gt;       MATKL type EKPO-MATKL,            "Material Group&lt;/P&gt;&lt;P&gt;     END OF X_EKPO.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;DATA:IT_EKKO TYPE STANDARD TABLE OF X_EKKO,&lt;/P&gt;&lt;P&gt;     IT_EKPO TYPE STANDARD TABLE OF X_EKPO,&lt;/P&gt;&lt;P&gt;     WA_EKKO TYPE X_EKKO,&lt;/P&gt;&lt;P&gt;     WA_EKPO TYPE X_EKPO,                       "#EC *&lt;/P&gt;&lt;P&gt;     IT_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     IT_FIELDCAT1 TYPE SLIS_T_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,&lt;/P&gt;&lt;P&gt;     WA_FIELDCAT1 TYPE SLIS_FIELDCAT_ALV.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Selection-screen design&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN BEGIN OF BLOCK B1.&lt;/P&gt;&lt;P&gt;SELECT-OPTIONS:S_EBELN FOR EKKO-EBELN.&lt;/P&gt;&lt;P&gt;SELECTION-SCREEN END OF BLOCK B1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----SELECTION-SCREEN VALIDATION&lt;/P&gt;&lt;P&gt;AT SELECTION-SCREEN.&lt;/P&gt;&lt;P&gt;  SELECT EBELN&lt;/P&gt;&lt;P&gt;  FROM EKKO&lt;/P&gt;&lt;P&gt;  INTO TABLE IT_EKKO&lt;/P&gt;&lt;P&gt;  WHERE EBELN IN S_EBELN.&lt;/P&gt;&lt;P&gt;*-----if there are no values display an error&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E009.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Data retrieval&lt;/P&gt;&lt;P&gt;START-OF-SELECTION.&lt;/P&gt;&lt;P&gt;*-----retrieving data from the PO header&lt;/P&gt;&lt;P&gt;  SELECT EBELN BUKRS BSART LIFNR SPRAS ZTERM&lt;/P&gt;&lt;P&gt;  FROM EKKO&lt;/P&gt;&lt;P&gt;  INTO TABLE IT_EKKO&lt;/P&gt;&lt;P&gt;  WHERE EBELN IN S_EBELN.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----if there are no records display an error&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E003.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Field catalog for the PO Header&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT[].&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-COL_POS   = '1'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-KEY   = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-HOTSPOT   = 'X'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '2'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'BUKRS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '3'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'BSART'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'BSART'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '4'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'LIFNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '5'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'SPRAS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'SPRAS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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_FIELDCAT-COL_POS   = '6'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-FIELDNAME = 'ZTERM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-TABNAME   = 'IT_EKKO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_FIELDNAME = 'ZTERM'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT-REF_TABNAME = 'EKKO'.&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;*-----to display the header details&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      = SY-REPID&lt;/P&gt;&lt;P&gt;      I_CALLBACK_USER_COMMAND = 'USER_COMMAND'&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT             = IT_FIELDCAT[]&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB                = IT_EKKO[].&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;UCOMM      text&lt;/P&gt;&lt;/LI&gt;&lt;LI level="1" type="ul"&gt;&lt;P&gt;     --&amp;gt;FIELD1     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 UCOMM LIKE SY-UCOMM FIELD1 TYPE      "#EC CALLED&lt;/P&gt;&lt;P&gt;SLIS_SELFIELD.                                               "#EC *&lt;/P&gt;&lt;P&gt;  READ TABLE IT_EKKO INTO WA_EKKO INDEX FIELD1-TABINDEX.&lt;/P&gt;&lt;P&gt;*-----retrieving item details from the PO Item table&lt;/P&gt;&lt;P&gt;  SELECT EBELN EBELP WERKS MATNR MATKL&lt;/P&gt;&lt;P&gt;  FROM EKPO&lt;/P&gt;&lt;P&gt;  INTO TABLE IT_EKPO&lt;/P&gt;&lt;P&gt;  WHERE EBELN = WA_EKKO-EBELN.&lt;/P&gt;&lt;P&gt;*-----to display an error if other than PO Number is clicked&lt;/P&gt;&lt;P&gt;  IF SY-SUBRC NE 0.&lt;/P&gt;&lt;P&gt;    MESSAGE E001.&lt;/P&gt;&lt;P&gt;  ENDIF.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----Fieldcatalog for the PO item details&lt;/P&gt;&lt;P&gt;  REFRESH IT_FIELDCAT1[].&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '1'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'EBELN'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '2'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'EBELP'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'EBELP'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '3'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'WERKS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'WERKS'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '4'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'MATNR'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-COL_POS   = '5'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-FIELDNAME = 'MATKL'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-TABNAME   = 'IT_EKPO'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_FIELDNAME = 'MATKL'.&lt;/P&gt;&lt;P&gt;  WA_FIELDCAT1-REF_TABNAME = 'EKPO'.&lt;/P&gt;&lt;P&gt;  APPEND WA_FIELDCAT1 TO IT_FIELDCAT1.&lt;/P&gt;&lt;P&gt;  CLEAR WA_FIELDCAT1.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;*-----to display the item details&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 = SY-REPID&lt;/P&gt;&lt;P&gt;      IT_FIELDCAT        = IT_FIELDCAT1[]&lt;/P&gt;&lt;P&gt;    TABLES&lt;/P&gt;&lt;P&gt;      T_OUTTAB           = IT_EKPO[].&lt;/P&gt;&lt;P&gt;ENDFORM.                    "user_command_form&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Jul 2007 05:35:56 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525648#M572131</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-18T05:35:56Z</dc:date>
    </item>
    <item>
      <title>Re: interactive alv report</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525649#M572132</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hi &lt;/P&gt;&lt;P&gt;u forgot  to keep case endcase commmand inside the usercommand formroutine which is mandatory.ur code doesnt work as there is no logic for double click . thanx for reply&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 18 Jul 2007 05:43:47 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/interactive-alv-report/m-p/2525649#M572132</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2007-07-18T05:43:47Z</dc:date>
    </item>
  </channel>
</rss>

