<?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 Intercative. in Application Development and Automation Discussions</title>
    <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049558#M1173735</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try this code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*****YOU NEED TO WRITE AN EVENT HANDER CLASS FOR YOUR ALV AND IMPLEMENT A ******METHODE TO HANDLE THE DOUBLE CLICK EVENT 

* type for output table

TYPES: BEGIN OF ty_mara,

matnr TYPE matnr, " Material

ersda TYPE ersda, " Creation date

ernam TYPE ernam, " Created by

END OF ty_mara. " Type declaration for table storing temp. data


* Internal table for storing data

DATA: i_mara TYPE STANDARD TABLE OF ty_mara INITIAL SIZE 0." Work area for final table

DATA: w_mara TYPE ty_mara.

* ALV grid object

DATA: oref1 TYPE REF TO cl_gui_alv_grid.

* class to handle double click

CLASS lcl_event_handler DEFINITION.

  PUBLIC SECTION.


    CLASS-METHODS:

    on_double_click FOR EVENT double_click OF cl_gui_alv_grid

    IMPORTING e_row e_column es_row_no.

ENDCLASS.                    "lcl_event_handler DEFINITION

* class imlimentation

CLASS lcl_event_handler IMPLEMENTATION.

  METHOD on_double_click.

*********HERE YOU CAN WRITE YOUR CODE TO CALL YOUR TRANSACTION VA01
********LIKE   SET FIELD 'XYZ' VALUE 'ABC'. 
*******            call transaction 'VA01'.   

  ENDMETHOD.                    "on_double_click



ENDCLASS.                    "lcl_event_handler IMPLEMENTATION



* Field catalog table for ALV grid

DATA: fieldcat TYPE lvc_t_fcat. " Workarea for field catalog table

DATA: w_field TYPE lvc_s_fcat. " Internal table for storing info. for ALV grid

START-OF-SELECTION.

* Fetch data

  SELECT matnr " Material

  ersda " Creation date

  ernam " Created by

  FROM mara

  INTO TABLE i_mara

  UP TO 100 ROWS.
  CHECK sy-subrc = 0.

* Calling the screen to display ALV

  CALL SCREEN 100.

  IF oref1 IS INITIAL.

* Create ALV grid object

    CREATE OBJECT oref1
      EXPORTING
        i_parent          = cl_gui_custom_container=&amp;gt;screen0
      EXCEPTIONS
        error_cntl_create = 1
        error_cntl_init   = 2
        error_cntl_link   = 3
        error_dp_create   = 4
        OTHERS            = 5.

    CHECK sy-subrc = 0.

* Preparing the field catalog

    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
      EXPORTING
        i_structure_name       = 'ZDEMO'
      CHANGING
        ct_fieldcat            = fieldcat
      EXCEPTIONS
        inconsistent_interface = 1
        program_error          = 2
        OTHERS                 = 3.

* Display the ALV grid

    CALL METHOD oref1-&amp;gt;set_table_for_first_display
      CHANGING
        it_outtab                     = i_mara[]
        it_fieldcatalog               = fieldcat
      EXCEPTIONS
        invalid_parameter_combination = 1
        program_error                 = 2
        too_many_lines                = 3
        OTHERS                        = 4.

  ENDIF.

* setting handler method for double click

  SET HANDLER lcl_event_handler=&amp;gt;on_double_click FOR oref1.

ENDMODULE. " STATUS_0100 OUTPUT
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code Formatted by: Alvaro Tejada Galindo on Jan 7, 2009 12:10 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Mon, 05 Jan 2009 06:19:29 GMT</pubDate>
    <dc:creator>Former Member</dc:creator>
    <dc:date>2009-01-05T06:19:29Z</dc:date>
    <item>
      <title>ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049554#M1173731</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hello&lt;/P&gt;&lt;P&gt;experts&lt;/P&gt;&lt;P&gt;can anyone send me the code for alv interactive. my requirement is to click in any saled order from alv output and it will take to the sales order va03 .only this part of the code i need.&lt;/P&gt;&lt;P&gt;Thanks .&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:11:42 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049554#M1173731</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-05T06:11:42Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049555#M1173732</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;Refer to this link,,,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A href="https://www.sdn.sap.com/irj/scn/wiki?path=/display/snippets/abap" target="test_blank"&gt;https://www.sdn.sap.com/irj/scn/wiki?path=/display/snippets/abap&lt;/A&gt;&lt;EM&gt;Interactive&lt;/EM&gt;ALV+Program&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;A class="jive_macro jive_macro_message" href="https://community.sap.com/" __jive_macro_name="message" modifiedtitle="true" __default_attr="6338503"&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Check examples : BCALV_GRID_01 to BCALV_GRID_11 in package SLIS.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: avinash kodarapu on Jan 5, 2009 11:44 AM&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: avinash kodarapu on Jan 5, 2009 11:49 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:14:19 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049555#M1173732</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-05T06:14:19Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049556#M1173733</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;Gothrough the code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
REPORT  ZALV_INTERACTIVE.
TABLES:EKKO, EKPO.
*data declarations

*1 internal tables and work areas


TYPES: BEGIN OF TP_EKKO,
        EBELN TYPE EKKO-EBELN,
        BUKRS TYPE EKKO-BUKRS,
        BSTYP TYPE EKKO-BSTYP,
        BSART TYPE EKKO-BSART,
       END OF TP_EKKO,

       BEGIN OF TP_EKPO,
         EBELN TYPE EKPO-EBELN,
         EBELP TYPE EKPO-EBELP,
         AEDAT TYPE EKPO-AEDAT,
         TXZ01 TYPE EKPO-TXZ01,
         MATNR TYPE EKPO-MATNR,
       END OF TP_EKPO,

       BEGIN OF TP_MARA,
         MATNR TYPE MARA-MATNR,
         ERSDA TYPE MARA-ERSDA,
         ERNAM TYPE MARA-ERNAM,
         LAEDA TYPE MARA-LAEDA,
         AENAM TYPE MARA-AENAM,
       END OF TP_MARA.

DATA: IT_EKKO TYPE TABLE OF TP_EKKO,
      IT_EKPO TYPE TABLE OF TP_EKPO,
      WA_EKKO LIKE LINE OF IT_EKKO,
      WA_EKPO LIKE LINE OF IT_EKPO,
      IT_MARA TYPE TABLE OF TP_MARA,
      WA_MARA LIKE LINE OF IT_MARA.

*DATA: it_ekko TYPE TABLE OF ekko,
*      it_ekpo TYPE TABLE OF ekpo,
*      wa_ekko LIKE LINE OF it_ekko,
*      wa_ekpo LIKE LINE OF it_ekpo.
*
*2  alv grid and container definition

DATA: GRID_EKKO TYPE REF TO CL_GUI_ALV_GRID,
      GRID_EKPO TYPE REF TO CL_GUI_ALV_GRID,
      GRID_MARA TYPE REF TO CL_GUI_ALV_GRID,
      CONT_EKKO TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
      CONT_EKPO TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
      CONT_MARA TYPE REF TO CL_GUI_CUSTOM_CONTAINER.

*3  ebeln

DATA: V_EBELN TYPE EKKO-EBELN,
      V_MATNR TYPE MARA-MATNR.

*4  layout

DATA: WA_LAYOUT1 TYPE LVC_S_LAYO,
      WA_LAYOUT2 TYPE LVC_S_LAYO,
      WA_LAYOUT3 TYPE LVC_S_LAYO.

*adding field catalog

DATA: IT_FCAT TYPE LVC_T_FCAT,
      WA_FCAT TYPE LVC_S_FCAT,
      IT_FCAT2 TYPE LVC_T_FCAT,
      WA_FCAT2 TYPE LVC_S_FCAT,
      IT_FCAT3 TYPE LVC_T_FCAT,
      WA_FCAT3 TYPE LVC_S_FCAT.
.


*5  interface definition

INTERFACE INTF.
  CLASS-METHODS: HANDLE_HOTSPOT_CLICK FOR EVENT HOTSPOT_CLICK OF
                 CL_GUI_ALV_GRID
                        IMPORTING E_ROW_ID,
                 HANDLE_HOTSPOT_CLICK1 FOR EVENT HOTSPOT_CLICK OF
                 CL_GUI_ALV_GRID
                        IMPORTING E_ROW_ID.

ENDINTERFACE.                    "intf

*----------------------------------------------------------------------*
*       CLASS class1 DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS CLASS1 DEFINITION.
  PUBLIC SECTION.
    INTERFACES: INTF.
    ALIASES HANDLER1 FOR INTF~HANDLE_HOTSPOT_CLICK.
ENDCLASS.                    "class1 DEFINITION

*----------------------------------------------------------------------*
*       CLASS class1 IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS CLASS1 IMPLEMENTATION.

  METHOD INTF~HANDLE_HOTSPOT_CLICK.
*    break developer.
    IF NOT E_ROW_ID IS INITIAL.
      CLEAR WA_EKKO.
      READ TABLE IT_EKKO INTO WA_EKKO INDEX E_ROW_ID-INDEX.
      IF SY-SUBRC EQ 0.
        V_EBELN = WA_EKKO-EBELN.
      ENDIF.
      IF NOT V_EBELN IS INITIAL.
        PERFORM GET_DETAILED_DATA.
        IF NOT IT_EKPO[] IS INITIAL.
          CALL SCREEN 200.
        ENDIF.
      ENDIF.
    ENDIF.
  ENDMETHOD.                    "intf~handle_hotspot_click

  METHOD INTF~HANDLE_HOTSPOT_CLICK1.
    BREAK DEVELOPER.
    IF NOT E_ROW_ID IS INITIAL.
      CLEAR WA_MARA.
      READ TABLE IT_EKPO INTO WA_EKPO INDEX E_ROW_ID-INDEX.
      IF SY-SUBRC EQ 0.
        V_MATNR = WA_EKPO-MATNR.
      ENDIF.
      IF NOT V_MATNR IS INITIAL.
        PERFORM GET_DETAILED_DATA2.
        IF NOT IT_MARA[] IS INITIAL.
          CALL SCREEN 300.
        ENDIF.
      ENDIF.
    ENDIF.

  ENDMETHOD.                    "intf~handle_double_click
ENDCLASS.                    "class1 IMPLEMENTATION

START-OF-SELECTION.

  SET SCREEN 100.

  SELECT-OPTIONS: S_EBELN FOR EKKO-EBELN.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE STATUS_0100 OUTPUT.

  IF SY-INDEX EQ 0.
    SET PF-STATUS 'PF_100'.
    SET TITLEBAR 'TITLE_100'.

    IF CONT_EKKO IS INITIAL.

      PERFORM GET_DATA.
      PERFORM BUILD_FCAT.

      CREATE OBJECT CONT_EKKO
        EXPORTING
          CONTAINER_NAME = 'CONTAINER1'.



      CREATE OBJECT GRID_EKKO
        EXPORTING
          I_PARENT = CONT_EKKO.
      WA_LAYOUT1-GRID_TITLE = 'Master data Display'.
      WA_LAYOUT1-KEYHOT = 'X'.

      CALL METHOD GRID_EKKO-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
        EXPORTING
          I_STRUCTURE_NAME              = 'IT_EKKO'
          IS_LAYOUT                     = WA_LAYOUT1
        CHANGING
          IT_OUTTAB                     = IT_EKKO
          IT_FIELDCATALOG               = IT_FCAT
        EXCEPTIONS
          INVALID_PARAMETER_COMBINATION = 1
          PROGRAM_ERROR                 = 2
          TOO_MANY_LINES                = 3
          OTHERS                        = 4.
      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.
*
      SET HANDLER CLASS1=&amp;gt;INTF~HANDLE_HOTSPOT_CLICK FOR ALL INSTANCES.
      CALL METHOD GRID_EKKO-&amp;gt;SET_TOOLBAR_INTERACTIVE.
    ELSE.
      CALL METHOD GRID_EKKO-&amp;gt;REFRESH_TABLE_DISPLAY.
    ENDIF.

    CALL METHOD CL_GUI_CONTROL=&amp;gt;SET_FOCUS
      EXPORTING
        CONTROL = GRID_EKKO.
  ELSE.
    IF SY-INDEX EQ 1.
    ENDIF.
  ENDIF.
ENDMODULE.                 " STATUS_0100  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  GET_DATA
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM GET_DATA .
  SELECT EBELN
         BUKRS
         BSTYP
         BSART
         FROM EKKO
         INTO CORRESPONDING FIELDS OF TABLE IT_EKKO
         WHERE EBELN IN S_EBELN.
ENDFORM.                    " GET_DATA
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  USER_COMMAND_0100  INPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0100 INPUT.
*  break developer.
  CASE SY-UCOMM.
    WHEN 'BACK'.
      PERFORM EXIT_PROGRAM.
    WHEN 'CANCEL'.
      PERFORM EXIT_PROGRAM.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0100  INPUT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  EXIT_PROGRAM
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM EXIT_PROGRAM .
  CALL METHOD CONT_EKKO-&amp;gt;FREE.
  IF NOT CONT_EKPO IS INITIAL.
    CALL METHOD CONT_EKPO-&amp;gt;FREE.
  ENDIF.
  CALL METHOD CL_GUI_CFW=&amp;gt;FLUSH.
  IF SY-SUBRC NE 0.
    CALL FUNCTION 'POPUP_TO_INFORM'
      EXPORTING
        TITEL = SY-REPID
        TXT1  = 'Flush Failed'
        TXT2  = SY-SUBRC.
  ENDIF.
  LEAVE PROGRAM.
ENDFORM.                    " EXIT_PROGRAM
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  GET_DETAILED_DATA
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM GET_DETAILED_DATA .
  BREAK DEVELOPER.
  SELECT EBELN
         EBELP
         AEDAT
         TXZ01
         MATNR
  FROM EKPO
  INTO CORRESPONDING FIELDS OF TABLE IT_EKPO
  WHERE EBELN EQ V_EBELN.
ENDFORM.                    " GET_DETAILED_DATA
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0200  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE STATUS_0200 OUTPUT.
  SET PF-STATUS 'PF_200'.
  SET TITLEBAR 'TITLE_200'.

  IF CONT_EKPO IS INITIAL.

    CREATE OBJECT CONT_EKPO
      EXPORTING
        CONTAINER_NAME = 'CONTAINER2'.

    CREATE OBJECT GRID_EKPO
      EXPORTING
        I_PARENT = CONT_EKPO.

    WA_LAYOUT2-GRID_TITLE = 'Detailed Display'.

    PERFORM BUILD_FIELDCAT_DETAILED.

    CALL METHOD GRID_EKPO-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
      EXPORTING
        I_STRUCTURE_NAME              = 'IT_EKPO'
        IS_LAYOUT                     = WA_LAYOUT2
      CHANGING
        IT_OUTTAB                     = IT_EKPO
        IT_FIELDCATALOG               = IT_FCAT2
      EXCEPTIONS
        INVALID_PARAMETER_COMBINATION = 1
        PROGRAM_ERROR                 = 2
        TOO_MANY_LINES                = 3
        OTHERS                        = 4.
    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.
    SET HANDLER CLASS1=&amp;gt;INTF~HANDLE_HOTSPOT_CLICK1 FOR GRID_EKPO.
    CALL METHOD GRID_EKPO-&amp;gt;SET_TOOLBAR_INTERACTIVE.
  ELSE.
    CALL METHOD GRID_EKPO-&amp;gt;REFRESH_TABLE_DISPLAY.
  ENDIF.

ENDMODULE.                 " STATUS_0200  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  USER_COMMAND_0200  INPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0200 INPUT.
  CASE SY-UCOMM.
    WHEN 'BACK'.
      LEAVE TO SCREEN 100.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0200  INPUT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FCAT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM BUILD_FCAT .
  WA_FCAT-FIELDNAME = 'EBELN'.
  WA_FCAT-TABNAME = 'EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-001.
  WA_FCAT-HOTSPOT = 'X'.
  APPEND WA_FCAT TO IT_FCAT.
  CLEAR WA_FCAT.

  WA_FCAT-FIELDNAME = 'BUKRS'.
  WA_FCAT-TABNAME = 'EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-002.
  APPEND WA_FCAT TO IT_FCAT.
  CLEAR WA_FCAT.

  WA_FCAT-FIELDNAME = 'BSTYP'.
  WA_FCAT-TABNAME = 'EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-003.
  APPEND WA_FCAT TO IT_FCAT.
  CLEAR WA_FCAT.

  WA_FCAT-FIELDNAME = 'BSART'.
  WA_FCAT-TABNAME = 'EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-004.
  APPEND WA_FCAT TO IT_FCAT.
  CLEAR WA_FCAT.

ENDFORM.                    " BUILD_FCAT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FIELDCAT_DETAILED
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM BUILD_FIELDCAT_DETAILED .

  WA_FCAT2-FIELDNAME = 'EBELN'.
  WA_FCAT2-TABNAME = 'IT_EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-005.
  APPEND WA_FCAT2 TO IT_FCAT2.
  CLEAR WA_FCAT2.

  WA_FCAT2-FIELDNAME = 'EBELP'.
  WA_FCAT2-TABNAME = 'IT_EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-006.
  APPEND WA_FCAT2 TO IT_FCAT2.
  CLEAR WA_FCAT2.

  WA_FCAT2-FIELDNAME = 'AEDAT'.
  WA_FCAT2-TABNAME = 'IT_EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-007.
  APPEND WA_FCAT2 TO IT_FCAT2.
  CLEAR WA_FCAT2.

  WA_FCAT2-FIELDNAME = 'TXZ01'.
  WA_FCAT2-TABNAME = 'IT_EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-008.
  APPEND WA_FCAT2 TO IT_FCAT2.
  CLEAR WA_FCAT2.

  WA_FCAT2-FIELDNAME = 'MATNR'.
  WA_FCAT2-TABNAME = 'IT_EKKO'.
  WA_FCAT-SCRTEXT_M = TEXT-009.
  WA_FCAT2-HOTSPOT = 'X'.
  APPEND WA_FCAT2 TO IT_FCAT2.
  CLEAR WA_FCAT2.

ENDFORM.                    " BUILD_FIELDCAT_DETAILED
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  GET_DETAILED_DATA2
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM GET_DETAILED_DATA2 .
  BREAK DEVELOPER.
  SELECT MATNR
         ERSDA
         ERNAM
         LAEDA
         AENAM
         FROM MARA
         INTO CORRESPONDING FIELDS OF TABLE IT_MARA
         WHERE MATNR EQ V_MATNR.

ENDFORM.                    " GET_DETAILED_DATA2
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  STATUS_0300  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE STATUS_0300 OUTPUT.
  SET PF-STATUS 'PF_300'.
  SET TITLEBAR 'TITLE_300'.
  IF CONT_MARA IS INITIAL.

    CREATE OBJECT CONT_MARA
      EXPORTING
        CONTAINER_NAME = 'CONTAINER3'.

    CREATE OBJECT GRID_MARA
      EXPORTING
        I_PARENT = CONT_MARA.

    WA_LAYOUT3-GRID_TITLE = 'Second secondary list'.

    PERFORM BUILD_FCAT_SECOND.

    CALL METHOD GRID_MARA-&amp;gt;SET_TABLE_FOR_FIRST_DISPLAY
      EXPORTING
        I_STRUCTURE_NAME              = 'IT_MARA'
        IS_LAYOUT                     = WA_LAYOUT3
      CHANGING
        IT_OUTTAB                     = IT_MARA
        IT_FIELDCATALOG               = IT_FCAT3
      EXCEPTIONS
        INVALID_PARAMETER_COMBINATION = 1
        PROGRAM_ERROR                 = 2
        TOO_MANY_LINES                = 3
        OTHERS                        = 4.
    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.

  ELSE.

    CALL METHOD GRID_MARA-&amp;gt;REFRESH_TABLE_DISPLAY.
  ENDIF.

ENDMODULE.                 " STATUS_0300  OUTPUT
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  BUILD_FCAT_SECOND
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*  --&amp;gt;  p1        text
*  &amp;lt;--  p2        text
*----------------------------------------------------------------------*
FORM BUILD_FCAT_SECOND .

  WA_FCAT3-FIELDNAME = 'MATNR'.
  WA_FCAT3-TABNAME = 'IT_MARA'.
  APPEND WA_FCAT3 TO IT_FCAT3.
  CLEAR WA_FCAT3.

  WA_FCAT3-FIELDNAME = 'ERSDA'.
  WA_FCAT3-TABNAME = 'IT_EKKO'.
  APPEND WA_FCAT3 TO IT_FCAT3.
  CLEAR WA_FCAT3.

  WA_FCAT3-FIELDNAME = 'ERNAM'.
  WA_FCAT3-TABNAME = 'IT_MARA'.
  APPEND WA_FCAT3 TO IT_FCAT3.
  CLEAR WA_FCAT3.

  WA_FCAT3-FIELDNAME = 'LAEDA'.
  WA_FCAT3-TABNAME = 'IT_MARA'.
  APPEND WA_FCAT3 TO IT_FCAT3.
  CLEAR WA_FCAT3.

  WA_FCAT3-FIELDNAME = 'AENAM'.
  WA_FCAT3-TABNAME = 'IT_MARA'.
  APPEND WA_FCAT3 TO IT_FCAT3.
  CLEAR WA_FCAT3.


ENDFORM.                    " BUILD_FCAT_SECOND
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Module  USER_COMMAND_0300  INPUT
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0300 INPUT.
  CASE SY-UCOMM.
    WHEN 'BACK'.
      LEAVE TO SCREEN 200.
    WHEN OTHERS.
  ENDCASE.
ENDMODULE.                 " USER_COMMAND_0300  INPUT
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code Formatted by: Alvaro Tejada Galindo on Jan 7, 2009 12:09 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:17:35 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049556#M1173733</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-05T06:17:35Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049557#M1173734</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;Here iam giving some sample code ....&lt;/P&gt;&lt;P&gt;Try to work out...&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
 CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program       = sy-repid
      i_callback_user_command  = 'USER_COMMAND'-----------------&amp;gt; write form for action 
      i_callback_pf_status_set = 'PFSTATUS'---------&amp;gt; create set_status name PFSTATUS
      it_fieldcat              = it_fieldcat
      is_layout                = it_layout
      it_event_exit            = it_eventexit
      i_screen_start_column    = 10
      i_screen_start_line      = 20
      i_screen_end_column      = 70
      i_screen_end_line        = 45
      i_grid_title             = 'Call Tcode Refresh ALV'
    TABLES
      t_outtab                 = it_tstc.ENDFORM.                    "alv_display
*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  user_command
*&amp;amp;---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*User actions on ALV
FORM user_command USING r_ucomm TYPE sy-ucomm
                        rs_selfield TYPE slis_selfield.  
CASE r_ucomm.
*User clicks a transaction code and that tcode is called from ALV
    WHEN '&amp;amp;IC1'.
      READ TABLE it_tstc INDEX rs_selfield-tabindex INTO wa_tstc.
      IF sy-subrc = 0.
        CALL TRANSACTION wa_tstc-tcode.
      ENDIF.
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code Formatted by: Alvaro Tejada Galindo on Jan 7, 2009 12:10 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:17:38 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049557#M1173734</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-05T06:17:38Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049558#M1173735</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;try this code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
*****YOU NEED TO WRITE AN EVENT HANDER CLASS FOR YOUR ALV AND IMPLEMENT A ******METHODE TO HANDLE THE DOUBLE CLICK EVENT 

* type for output table

TYPES: BEGIN OF ty_mara,

matnr TYPE matnr, " Material

ersda TYPE ersda, " Creation date

ernam TYPE ernam, " Created by

END OF ty_mara. " Type declaration for table storing temp. data


* Internal table for storing data

DATA: i_mara TYPE STANDARD TABLE OF ty_mara INITIAL SIZE 0." Work area for final table

DATA: w_mara TYPE ty_mara.

* ALV grid object

DATA: oref1 TYPE REF TO cl_gui_alv_grid.

* class to handle double click

CLASS lcl_event_handler DEFINITION.

  PUBLIC SECTION.


    CLASS-METHODS:

    on_double_click FOR EVENT double_click OF cl_gui_alv_grid

    IMPORTING e_row e_column es_row_no.

ENDCLASS.                    "lcl_event_handler DEFINITION

* class imlimentation

CLASS lcl_event_handler IMPLEMENTATION.

  METHOD on_double_click.

*********HERE YOU CAN WRITE YOUR CODE TO CALL YOUR TRANSACTION VA01
********LIKE   SET FIELD 'XYZ' VALUE 'ABC'. 
*******            call transaction 'VA01'.   

  ENDMETHOD.                    "on_double_click



ENDCLASS.                    "lcl_event_handler IMPLEMENTATION



* Field catalog table for ALV grid

DATA: fieldcat TYPE lvc_t_fcat. " Workarea for field catalog table

DATA: w_field TYPE lvc_s_fcat. " Internal table for storing info. for ALV grid

START-OF-SELECTION.

* Fetch data

  SELECT matnr " Material

  ersda " Creation date

  ernam " Created by

  FROM mara

  INTO TABLE i_mara

  UP TO 100 ROWS.
  CHECK sy-subrc = 0.

* Calling the screen to display ALV

  CALL SCREEN 100.

  IF oref1 IS INITIAL.

* Create ALV grid object

    CREATE OBJECT oref1
      EXPORTING
        i_parent          = cl_gui_custom_container=&amp;gt;screen0
      EXCEPTIONS
        error_cntl_create = 1
        error_cntl_init   = 2
        error_cntl_link   = 3
        error_dp_create   = 4
        OTHERS            = 5.

    CHECK sy-subrc = 0.

* Preparing the field catalog

    CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
      EXPORTING
        i_structure_name       = 'ZDEMO'
      CHANGING
        ct_fieldcat            = fieldcat
      EXCEPTIONS
        inconsistent_interface = 1
        program_error          = 2
        OTHERS                 = 3.

* Display the ALV grid

    CALL METHOD oref1-&amp;gt;set_table_for_first_display
      CHANGING
        it_outtab                     = i_mara[]
        it_fieldcatalog               = fieldcat
      EXCEPTIONS
        invalid_parameter_combination = 1
        program_error                 = 2
        too_many_lines                = 3
        OTHERS                        = 4.

  ENDIF.

* setting handler method for double click

  SET HANDLER lcl_event_handler=&amp;gt;on_double_click FOR oref1.

ENDMODULE. " STATUS_0100 OUTPUT
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code Formatted by: Alvaro Tejada Galindo on Jan 7, 2009 12:10 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:19:29 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049558#M1173735</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-05T06:19:29Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049559#M1173736</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Plz try the code below:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
  CONSTANTS: l_c_pfstatus  TYPE slis_formname VALUE 'F_PF_STATUS',
             l_c_user_comm TYPE slis_formname VALUE 'F_USER_COMMAND',
             l_c_st_name   TYPE tabname       VALUE 'IT_FINAL'.

*Calling 'REUSE_ALV_LIST_DISPLAY' function to display the ALV
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      i_callback_program       = syst-cprog
      i_callback_pf_status_set = l_c_pfstatus
      i_callback_user_command  = l_c_user_comm
      i_structure_name         = l_c_st_name
      i_grid_title             = text-011
      is_layout                = fp_st_layout
      it_fieldcat              = fp_it_fieldcat
      it_events                = fp_it_events[]
    TABLES
      t_outtab                 = fp_it_final
    EXCEPTIONS
      program_error            = 1
      OTHERS                   = 2.

  IF sy-subrc &amp;lt;&amp;gt; 0.
*   Error Occured in ALV Function Module
    MESSAGE i131.
    LEAVE LIST-PROCESSING.
  ENDIF.

*&amp;amp;---------------------------------------------------------------------*
*&amp;amp;      Form  f_user_command
*&amp;amp;---------------------------------------------------------------------*
*       Double click event: Call transaction 'VA03' when we double
*       click on the ALV line item
*----------------------------------------------------------------------*
*      --&amp;gt;FP_V_UCOMM   user command
*      --&amp;gt;fp_selfield  selected-field
*----------------------------------------------------------------------*
* Since ALV FM calls this subroutine; no perform calls required.
FORM f_user_command  USING   fp_v_ucomm   TYPE syucomm
                             fp_selfield  TYPE slis_selfield."#EC CALLED

  CONSTANTS:
          l_c_ic1           TYPE char4 VALUE '&amp;amp;IC1',
          l_c_aun          TYPE char2 VALUE 'AUN',
          l_c_va03          TYPE char5 VALUE 'VA03'.

  CASE fp_v_ucomm.

* Ok code for double code
    WHEN l_c_ic1.

      IF fp_selfield-tabindex NE space.
        READ TABLE it_final INTO wa_final
                               INDEX fp_selfield-tabindex.
        SET PARAMETER ID l_c_vl FIELD wa_final-vbeln.
        CALL TRANSACTION l_c_va03 AND SKIP FIRST SCREEN.
      ENDIF.

  ENDCASE.

ENDFORM.                    "f_user_command
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Edited by: Suhas Saha on Jan 5, 2009 7:21 AM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:20:21 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049559#M1173736</guid>
      <dc:creator>SuhaSaha</dc:creator>
      <dc:date>2009-01-05T06:20:21Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049560#M1173737</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;Refer this code.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;
Data:     c_user_command type slis_formname value 'USER_COMMAND',

Pass value to FM as follows.

  call function 'REUSE_ALV_GRID_DISPLAY'
    exporting
      is_variant              = v_variant
      i_callback_program      = v_alv_repid
      is_layout               = layout
      it_fieldcat             = it_fieldcat
      i_callback_user_command = c_user_command
      i_save                  = 'A'

    tables
      t_outtab                = it_report3[]
    exceptions
      program_error           = 1.

form user_command using ucomm type sy-ucomm
                    selfield type slis_selfield.
  case ucomm.
**To call the CO03 transaction
    when '&amp;amp;IC1'.
      if selfield-fieldname = 'VBELN'.
        set parameter id 'AUN'  field selfield-value.
        call transaction 'VA03' and skip first screen.
      endif.
  endcase.
endform.                    "user_command
&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards.&lt;/P&gt;&lt;P&gt;Jay&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Code Formatted by: Alvaro Tejada Galindo on Jan 7, 2009 12:11 PM&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:36:55 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049560#M1173737</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-05T06:36:55Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049561#M1173738</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;the following is the code&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;PRE&gt;&lt;CODE&gt;READ TABLE&amp;lt;internaltable&amp;gt; into &amp;lt;work area&amp;gt;INDEX  slis_selfield-tabindex.

  SET PARAMETER ID 'AUN'  FIELD  workarea-vbeln.
  CALL TRANSACTION 'VA03' AND SKIP FIRST SCREEN.&lt;/CODE&gt;&lt;/PRE&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks &amp;amp; Regards&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 05 Jan 2009 06:39:54 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049561#M1173738</guid>
      <dc:creator>Mohamed_Mukhtar</dc:creator>
      <dc:date>2009-01-05T06:39:54Z</dc:date>
    </item>
    <item>
      <title>Re: ALV Intercative.</title>
      <link>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049562#M1173739</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;&lt;/P&gt;&lt;P&gt;get cursor field f2 value gv_matnr .&lt;/P&gt;&lt;P&gt;  if  f2  = 'WA_FINAL-MATNR'.&lt;/P&gt;&lt;P&gt;    set parameter id 'MAT' field gv_matnr .&lt;/P&gt;&lt;P&gt;    call transaction 'MM03 ' and skip first screen.&lt;/P&gt;&lt;P&gt;  else .&lt;/P&gt;&lt;P&gt;  MESSAGE I112 .&lt;/P&gt;&lt;P&gt;  endif.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards ,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;venkat p&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 07 Jan 2009 12:06:53 GMT</pubDate>
      <guid>https://community.sap.com/t5/application-development-and-automation-discussions/alv-intercative/m-p/5049562#M1173739</guid>
      <dc:creator>Former Member</dc:creator>
      <dc:date>2009-01-07T12:06:53Z</dc:date>
    </item>
  </channel>
</rss>

