End_of_page is not triggering in ALV

hi mates
         the code below is not triggering end-of-page event, can anyone help me. reply asap
TABLES:VBAP.
TYPE-POOLS:SLIS.
DATA: BEGIN OF VBAP_TYPE OCCURS 0,
      VBELN TYPE VBAP-VBELN,
      POSNR TYPE VBAP-POSNR,
      MATKL TYPE VBAP-MATKL,
      MATNR TYPE VBAP-MATNR,
      END OF VBAP_TYPE.
DATA:GET_FIELDCAT TYPE SLIS_T_FIELDCAT_ALV,
     WA_FIELDCAT  TYPE SLIS_FIELDCAT_ALV,
     HT_EVENT    TYPE SLIS_T_EVENT,
     WA_EVENT     TYPE SLIS_ALV_EVENT,
     HT_HEADER   TYPE SLIS_T_LISTHEADER,
     WA_HEADER   TYPE SLIS_LISTHEADER.
START-OF-SELECTION.
  PERFORM GET_DATA.
  PERFORM GET_FIELDCATALOG.
  PERFORM FIELD_EVENT.
  PERFORM FIELD_DISPLAY.
*&      Form  get_data
      text
FORM GET_DATA.
  SELECT VBELN
         POSNR
         MATKL
         MATNR
       FROM VBAP
       INTO TABLE VBAP_TYPE.
ENDFORM.                    "get_data
*&      Form  get_fieldcatalog
      text
FORM GET_FIELDCATALOG.
  CLEAR WA_FIELDCAT.
  WA_FIELDCAT-COL_POS = 1.
  WA_FIELDCAT-FIELDNAME = 'VBELN'.
  WA_FIELDCAT-SELTEXT_L = 'sales doc'.
  APPEND WA_FIELDCAT TO GET_FIELDCAT.
  CLEAR WA_FIELDCAT.
clear wa_fieldcat.
wa_fieldcat-col_pos = 1.
wa_fieldcat-fieldname = 'VBELN'.
wa_fieldcat-seltext_l = 'sales doc'.
append wa_fieldcat to get_fieldcat.
clear wa_fieldcat.
  WA_FIELDCAT-COL_POS = 2.
  WA_FIELDCAT-FIELDNAME = 'POSNR'.
  WA_FIELDCAT-SELTEXT_L = 'sales doc item'.
  APPEND WA_FIELDCAT TO GET_FIELDCAT.
  CLEAR WA_FIELDCAT.
  WA_FIELDCAT-COL_POS = 3.
  WA_FIELDCAT-FIELDNAME = 'MATKL'.
  WA_FIELDCAT-SELTEXT_L = 'Material Group'.
  APPEND WA_FIELDCAT TO GET_FIELDCAT.
  CLEAR WA_FIELDCAT.
  WA_FIELDCAT-COL_POS = 4.
  WA_FIELDCAT-FIELDNAME = 'MATNR'.
  WA_FIELDCAT-SELTEXT_L = 'Material No'.
  APPEND WA_FIELDCAT TO GET_FIELDCAT.
  CLEAR WA_FIELDCAT.
ENDFORM.                    "get_fieldcatalog
*&      Form  field_display
      text
FORM FIELD_DISPLAY.
  CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
  EXPORTING
   I_INTERFACE_CHECK              = ' '
   I_BYPASSING_BUFFER             =
   I_BUFFER_ACTIVE                = ' '
      I_CALLBACK_PROGRAM             = SY-CPROG
   I_CALLBACK_PF_STATUS_SET       = ' '
   I_CALLBACK_USER_COMMAND        = ' '
   I_STRUCTURE_NAME               =
   IS_LAYOUT                      =
      IT_FIELDCAT                    = GET_FIELDCAT[]
   IT_EXCLUDING                   =
   IT_SPECIAL_GROUPS              =
   IT_SORT                        =
   IT_FILTER                      =
   IS_SEL_HIDE                    =
   I_DEFAULT                      = 'X'
   I_SAVE                         = ' '
   IS_VARIANT                     =
      IT_EVENTS                      = HT_EVENT
   IT_EVENT_EXIT                  =
   IS_PRINT                       =
   IS_REPREP_ID                   =
   I_SCREEN_START_COLUMN          = 0
   I_SCREEN_START_LINE            = 0
   I_SCREEN_END_COLUMN            = 0
   I_SCREEN_END_LINE              = 0
   IR_SALV_LIST_ADAPTER           =
   IT_EXCEPT_QINFO                =
   I_SUPPRESS_EMPTY_DATA          = ABAP_FALSE
IMPORTING
   E_EXIT_CAUSED_BY_CALLER        =
   ES_EXIT_CAUSED_BY_USER         =
    TABLES
      T_OUTTAB                       = VBAP_TYPE
   EXCEPTIONS
     PROGRAM_ERROR                  = 1
     OTHERS                         = 2
  IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM.                    "field_display
*&      Form  field_event
      text
FORM FIELD_EVENT.
  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
   I_LIST_TYPE           = 0
   IMPORTING
     ET_EVENTS             = HT_EVENT.
WA_EVENT-NAME = SLIS_EV_TOP_OF_PAGE .
WA_EVENT-FORM = 'TOP_OF_PAGE'.
APPEND WA_EVENT TO HT_EVENT.
CLEAR WA_EVENT.
  WA_EVENT-NAME = SLIS_EV_END_OF_PAGE .
  WA_EVENT-FORM = 'END_OF_PAGE'.
APPEND WA_EVENT TO HT_EVENT.
CLEAR WA_EVENT.
READ TABLE ht_event INTO wa_event
                     WITH KEY name = slis_ev_top_of_page .
EXCEPTIONS
   LIST_TYPE_WRONG       = 1
   OTHERS                = 2
IF sy-subrc = 0.
   wa_event-form = 'TOP-OF-PAGE'.
   wa_event-form = 'END_OF_PAGE'.
   MODIFY ht_event FROM wa_event INDEX sy-tabix.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM.                    "field_event
*&      Form  top_of_page
      text
FORM TOP_OF_PAGE.
  CLEAR WA_HEADER.
  WA_HEADER-TYP = 'H'.
  WA_HEADER-INFO = ' this is the sales document data'.
  APPEND WA_HEADER TO HT_HEADER.
  CLEAR WA_HEADER.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      IT_LIST_COMMENTARY       = HT_HEADER
  I_LOGO                   =
  I_END_OF_LIST_GRID       =
  I_ALV_FORM               =
ENDFORM.                    "top_of_page
*&      Form  END_OF_Page
      text
FORM END_OF_PAGE.
  WA_HEADER-TYP = 'H'.
  WA_HEADER-INFO = ' this is the end of page'.
  APPEND WA_HEADER TO HT_HEADER.
  CLEAR WA_HEADER.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
  EXPORTING
    IT_LIST_COMMENTARY       = HT_HEADER
  I_LOGO                   =
  I_END_OF_LIST_GRID       =
  I_ALV_FORM               =
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
  EXPORTING
     it_list_commentary       = ht_header
  I_LOGO                   =
  I_END_OF_LIST_GRID       =
  I_ALV_FORM               =
endform.

Hi,
Try this code for end_of_page is not triggering in ALV
TYPE-POOLS : slis.
TABLES : mara,
         makt,
         marc.
DATA : BEGIN OF itab OCCURS 0,
        matnr LIKE mara-matnr,
        maktx LIKE makt-maktx,
        werks LIKE marc-werks,
       END OF itab.
DATA : t_fcat TYPE slis_t_fieldcat_alv,
       t_eve TYPE slis_t_event,
       st_line TYPE slis_listheader,
       t_list_top_page TYPE slis_t_listheader,
       t_list_end_page TYPE slis_t_listheader.
DATA : t_mat LIKE mara-matnr.
SELECTION-SCREEN : BEGIN OF BLOCK blk1 WITH FRAME TITLE text-001.
SELECT-OPTIONS : mat FOR mara-matnr.
SELECTION-SCREEN : END OF BLOCK blk1.
INITIALIZATION.
  PERFORM build_cat USING t_fcat.
  PERFORM build_eve.
START-OF-SELECTION.
  PERFORM get_data.
  PERFORM build_header USING t_list_top_page[].
  PERFORM build_footer USING t_list_end_page[].
  PERFORM dis_data.
*&      Form  buils_cat
      text
     -->TEMP_FCAT  text
FORM build_cat USING temp_fcat TYPE slis_t_fieldcat_alv.
  DATA : wa_fcat TYPE slis_fieldcat_alv.
  wa_fcat-tabname = 'ITAB'.
  wa_fcat-fieldname = 'MATNR'.
  wa_fcat-seltext_m = 'Material'.
  APPEND wa_fcat TO temp_fcat.
  CLEAR wa_fcat.
  wa_fcat-tabname = 'ITAB'.
  wa_fcat-fieldname = 'MAKTX'.
  wa_fcat-seltext_m = 'Material Description'.
  APPEND wa_fcat TO temp_fcat.
  CLEAR wa_fcat.
  wa_fcat-tabname = 'ITAB'.
  wa_fcat-fieldname = 'WERKS'.
  wa_fcat-seltext_m = 'Plant'.
wa_fcat-row_pos = 2.
  APPEND wa_fcat TO temp_fcat.
  CLEAR wa_fcat.
ENDFORM.                    "build_cat
*&      Form  build_eve
      text
FORM build_eve.
  DATA : wa_eve TYPE slis_alv_event.
  CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
   EXPORTING
     i_list_type           = 0
   IMPORTING
     et_events             = t_eve
EXCEPTIONS
  LIST_TYPE_WRONG       = 1
  OTHERS                = 2
  IF sy-subrc  0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
  READ TABLE t_eve INTO wa_eve WITH KEY name = 'END_OF_LIST'.
  IF sy-subrc = 0.
    wa_eve-form = 'END_OF_PAGE'.
    MODIFY t_eve FROM wa_eve INDEX sy-tabix.
  ENDIF.
ENDFORM.                    "build_eve
*&      Form  get_data
      text
FORM get_data.
  SELECT maramatnr maktmaktx marc~werks INTO CORRESPONDING FIELDS OF TABLE itab
  FROM mara INNER JOIN makt ON
  maramatnr = maktmatnr
  INNER JOIN marc ON
  maramatnr = marcmatnr
  WHERE mara~matnr IN mat.
ENDFORM.                    "get_data
*&      Form  dis_data
      text
FORM dis_data.
  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
   EXPORTING
     i_callback_program                = 'ZALV_PRDS'
     i_callback_top_of_page            = 'TOP_OF_PAGE'
     it_fieldcat                       = t_fcat
     i_save                            = 'A'
     it_events                         = t_eve
   TABLES
      t_outtab                          = itab
EXCEPTIONS
  PROGRAM_ERROR                     = 1
  OTHERS                            = 2
  IF sy-subrc  0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
        WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.
ENDFORM.                    "dis_data
*&      Form  build_header
      text
     -->TEMP_LIST          text
     -->TTYPE              text
     -->SLIS_T_LISTHEADER  text
FORM build_header USING temp_list TYPE slis_t_listheader.
  CLEAR st_line.
  st_line-typ = 'H'.
  st_line-info = 'Material Info'.
  APPEND st_line TO temp_list.
ENDFORM.                    "build_header
*&      Form  build_footer
      text
     -->TEMP_LIST  text
FORM build_footer USING temp_list TYPE slis_t_listheader.
  CLEAR st_line.
  st_line-typ = 'H'.
  st_line-info = 'Dhwani Shah'.
  APPEND st_line TO temp_list.
ENDFORM.                    "build_header
*&      Form  top_Of_page
      text
FORM top_of_page.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      it_list_commentary = t_list_top_page.
ENDFORM.                    "top_Of_page
*&      Form  end_of_page
      text
FORM end_of_page.
  CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
    EXPORTING
      it_list_commentary = t_list_end_page.
ENDFORM.                    "end_of_page
Reward Points if usefull
Regards
Fareedas

Similar Messages

  • End of Page event not triggering in ALV report

    Hello,
    I am developing an ALV report using REUSE_ALV_LIST_DISPLAY. Whatever I write in top_of_page, it will be displayed in the header portion of the output.
    But I want to display some footer text at the end of the page. The problem I am facing is, the WRITE statements within end_of_page are not displayed when the report is run.
    I have populated the i_events as follows :
    FORM f_events CHANGING p_i_events TYPE slis_t_event.
    CONSTANTS : l_c_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE',
                l_c_end_of_page TYPE slis_formname VALUE 'END_OF_PAGE'.
    DATA : l_wa_event TYPE slis_alv_event.
    Returns table of possible events
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type = 0
        IMPORTING
          et_events   = p_i_events.
    To append internal table holding event names with event 'TOP OF PAGE'
      READ TABLE  p_i_events INTO l_wa_event
      WITH KEY name = slis_ev_top_of_page.
      IF sy-subrc = 0.
          MOVE   l_c_top_of_page TO l_wa_event-form.
          APPEND l_wa_event      TO p_i_events.
      ENDIF.
    To append internal table holding event names with event 'END OF PAGE'
      READ TABLE  p_i_events INTO l_wa_event
      WITH KEY name = slis_ev_end_of_page.
      IF sy-subrc = 0.
          MOVE   l_c_end_of_page TO l_wa_event-form.
          APPEND l_wa_event      TO p_i_events.
      ENDIF.
    ENDFORM.                               "f_events
    Regds
    Rajesh

    Hi have a look at the following code, and change ur code for end of page accordingly. this will resolve ur problem.
    This is a basic ALV with the followings:-
    - Page Heading
    - Page No
    - Sub-Total
    - Grand Total
    REPORT ZALV.
    TYPE-POOLS: SLIS.
    DATA: G_REPID LIKE SY-REPID,
    GS_PRINT            TYPE SLIS_PRINT_ALV,
    GT_LIST_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER,
    GT_EVENTS           TYPE SLIS_T_EVENT,
    GT_SORT             TYPE SLIS_T_SORTINFO_ALV,
    GS_LAYOUT           TYPE SLIS_LAYOUT_ALV,
    GT_FIELDCAT         TYPE SLIS_T_FIELDCAT_ALV,
    FIELDCAT_LN LIKE LINE OF GT_FIELDCAT,
    COL_POS TYPE I.
    DATA: BEGIN OF ITAB,
      FIELD1(5) TYPE C,
      FIELD2(5) TYPE C,
      FIELD3(5) TYPE P DECIMALS 2,
    END OF ITAB.
    DATA: BEGIN OF ITAB1 OCCURS 0.
      INCLUDE STRUCTURE ITAB.
    DATA: END OF ITAB1.
    DATA: BEGIN OF ITAB_FIELDCAT OCCURS 0.
      INCLUDE STRUCTURE ITAB.
    DATA: END OF ITAB_FIELDCAT.
    Print Parameters
    PARAMETERS:
                P_PRINT  AS CHECKBOX DEFAULT ' ', "PRINT IMMEDIATE
                P_NOSINF AS CHECKBOX DEFAULT 'X', "NO SELECTION INFO
                P_NOCOVE AS CHECKBOX DEFAULT ' ', "NO COVER PAGE
                P_NONEWP AS CHECKBOX DEFAULT ' ', "NO NEW PAGE
                P_NOLINF AS CHECKBOX DEFAULT 'X', "NO PRINT LIST INFO
                P_RESERV TYPE I.                  "NO OF FOOTER LINE
    INITIALIZATION.
    G_REPID = SY-REPID.
    PERFORM PRINT_BUILD    USING GS_PRINT.      "Print PARAMETERS
    START-OF-SELECTION.
    TEST DATA
    MOVE 'TEST1' TO ITAB1-FIELD1.
    MOVE 'TEST1' TO ITAB1-FIELD2.
    MOVE '10.00' TO ITAB1-FIELD3.
    APPEND ITAB1.
    MOVE 'TEST2' TO ITAB1-FIELD1.
    MOVE 'TEST2' TO ITAB1-FIELD2.
    MOVE '20.00' TO ITAB1-FIELD3.
    APPEND ITAB1.
    DO 50 TIMES.
      APPEND ITAB1.
    ENDDO.
    END-OF-SELECTION.
    PERFORM BUILD.
    PERFORM EVENTTAB_BUILD CHANGING GT_EVENTS.
    PERFORM COMMENT_BUILD  CHANGING GT_LIST_TOP_OF_PAGE.
    PERFORM CALL_ALV.
    FORM BUILD.
    DATA FIELD CATALOG
    Explain Field Description to ALV
    DATA: FIELDCAT_IN TYPE SLIS_FIELDCAT_ALV.
    CLEAR FIELDCAT_IN.
    FIELDCAT_LN-FIELDNAME = 'FIELD1'.
    FIELDCAT_LN-TABNAME   = 'ITAB1'.
    *FIELDCAT_LN-NO_OUT    = 'X'.  "FIELD NOT DISPLAY, CHOOSE FROM LAYOUT
    FIELDCAT_LN-KEY       = ' '.   "SUBTOTAL KEY
    FIELDCAT_LN-NO_OUT    = ' '.
    FIELDCAT_LN-SELTEXT_L = 'HEAD1'.
    APPEND FIELDCAT_LN TO GT_FIELDCAT.
    CLEAR FIELDCAT_IN.
    FIELDCAT_LN-FIELDNAME = 'FIELD2'.
    FIELDCAT_LN-TABNAME   = 'ITAB1'.
    FIELDCAT_LN-NO_OUT    = 'X'.
    FIELDCAT_LN-SELTEXT_L = 'HEAD2'.
    APPEND FIELDCAT_LN TO GT_FIELDCAT.
    CLEAR FIELDCAT_IN.
    FIELDCAT_LN-FIELDNAME     = 'FIELD3'.
    FIELDCAT_LN-TABNAME       = 'ITAB1'.
    FIELDCAT_LN-REF_FIELDNAME = 'MENGE'. "<- REF FIELD IN THE DICTIONNARY
    FIELDCAT_LN-REF_TABNAME   = 'MSEG'.  "<- REF TABLE IN THE DICTIONNARY
    FIELDCAT_LN-NO_OUT        = ' '.
    FIELDCAT_LN-DO_SUM        = 'X'.   "SUM UPON DISPLAY
    APPEND FIELDCAT_LN TO GT_FIELDCAT.
    DATA SORTING AND SUBTOTAL
    DATA: GS_SORT TYPE SLIS_SORTINFO_ALV.
    CLEAR GS_SORT.
    GS_SORT-FIELDNAME = 'FIELD1'.
    GS_SORT-SPOS      = 1.
    GS_SORT-UP        = 'X'.
    GS_SORT-SUBTOT    = 'X'.
    APPEND GS_SORT TO GT_SORT.
    CLEAR GS_SORT.
    GS_SORT-FIELDNAME = 'FIELD2'.
    GS_SORT-SPOS      = 2.
    GS_SORT-UP        = 'X'.
    *GS_SORT-SUBTOT    = 'X'.
    APPEND GS_SORT TO GT_SORT.
    ENDFORM.
    FORM CALL_ALV.
    ABAP List Viewer
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    I_INTERFACE_CHECK = ' '
    I_BYPASSING_BUFFER =
    I_BUFFER_ACTIVE = ' '
    I_CALLBACK_PROGRAM = G_REPID
    I_CALLBACK_PF_STATUS_SET = ' '
    I_CALLBACK_USER_COMMAND = ' '
    I_STRUCTURE_NAME = 'ITAB1'
    IS_LAYOUT =  GS_LAYOUT
    IT_FIELDCAT = GT_FIELDCAT[]
    IT_EXCLUDING =
    IT_SPECIAL_GROUPS =
      IT_SORT = GT_SORT[]
    IT_FILTER =
    IS_SEL_HIDE =
    I_DEFAULT = 'X'
    I_SAVE = ' '
    IS_VARIANT =
      IT_EVENTS = GT_EVENTS[]
    IT_EVENT_EXIT =
      IS_PRINT = GS_PRINT
    IS_REPREP_ID =
    I_SCREEN_START_COLUMN = 0
    I_SCREEN_START_LINE = 0
    I_SCREEN_END_COLUMN = 0
    I_SCREEN_END_LINE = 0
    IMPORTING
    E_EXIT_CAUSED_BY_CALLER =
    ES_EXIT_CAUSED_BY_USER =
    TABLES
    T_OUTTAB = ITAB1
    EXCEPTIONS
    PROGRAM_ERROR = 1
    OTHERS = 2.
    ENDFORM.
    HEADER FORM
    FORM EVENTTAB_BUILD CHANGING LT_EVENTS TYPE SLIS_T_EVENT.
    CONSTANTS:
    GC_FORMNAME_TOP_OF_PAGE TYPE SLIS_FORMNAME VALUE 'TOP_OF_PAGE'.
    *GC_FORMNAME_END_OF_PAGE TYPE SLIS_FORMNAME VALUE 'END_OF_PAGE'.
      DATA: LS_EVENT TYPE SLIS_ALV_EVENT.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
           EXPORTING
                I_LIST_TYPE = 0
           IMPORTING
                ET_EVENTS   = LT_EVENTS.
      READ TABLE LT_EVENTS WITH KEY NAME =  SLIS_EV_TOP_OF_PAGE
                               INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE GC_FORMNAME_TOP_OF_PAGE TO LS_EVENT-FORM.
        APPEND LS_EVENT TO LT_EVENTS.
      ENDIF.
    define END_OF_PAGE event
    READ TABLE LT_EVENTS WITH KEY NAME =  SLIS_EV_END_OF_PAGE
                             INTO LS_EVENT.
    IF SY-SUBRC = 0.
      MOVE GC_FORMNAME_END_OF_PAGE TO LS_EVENT-FORM.
      APPEND LS_EVENT TO LT_EVENTS.
    ENDIF.
    ENDFORM.
    FORM COMMENT_BUILD CHANGING GT_TOP_OF_PAGE TYPE SLIS_T_LISTHEADER.
      DATA: GS_LINE TYPE SLIS_LISTHEADER.
      CLEAR GS_LINE.
      GS_LINE-TYP  = 'H'.
      GS_LINE-INFO = 'HEADER 1'.
      APPEND GS_LINE TO GT_TOP_OF_PAGE.
      CLEAR GS_LINE.
      GS_LINE-TYP  = 'S'.
      GS_LINE-KEY  = 'STATUS 1'.
      GS_LINE-INFO = 'INFO 1'.
      APPEND GS_LINE TO GT_TOP_OF_PAGE.
      GS_LINE-KEY  = 'STATUS 2'.
      GS_LINE-INFO = 'INFO 2'.
      APPEND GS_LINE TO GT_TOP_OF_PAGE.
    CLEAR GS_LINE.
    GS_LINE-TYP  = 'A'.
    GS_LINE-INFO = 'ACTION'.
    APPEND GS_LINE TO  GT_TOP_OF_PAGE.
    ENDFORM.
    FORM TOP_OF_PAGE.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
           EXPORTING
                IT_LIST_COMMENTARY = GT_LIST_TOP_OF_PAGE.
      WRITE: SY-DATUM, 'Page No', SY-PAGNO LEFT-JUSTIFIED.
    ENDFORM.
    FORM END_OF_PAGE.
      WRITE at (sy-linsz) sy-pagno CENTERED.
    ENDFORM.
    PRINT SETTINGS
    FORM PRINT_BUILD USING LS_PRINT TYPE SLIS_PRINT_ALV.
      LS_PRINT-PRINT              = P_PRINT.  "PRINT IMMEDIATE
      LS_PRINT-NO_PRINT_SELINFOS  = P_NOSINF. "NO SELECTION INFO
      LS_PRINT-NO_COVERPAGE       = P_NOCOVE. "NO COVER PAGE
      LS_PRINT-NO_NEW_PAGE        = P_NONEWP.
      LS_PRINT-NO_PRINT_LISTINFOS = P_NOLINF. "NO PRINT LIST INFO
      LS_PRINT-RESERVE_LINES      = P_RESERV.
    ENDFORM.
    *END OF ZALV PROGRAM
    Satish

  • Event not triggering in ALV

    Hi All,
    I am using ALV GRID in object oriented with editing option.If user made any changes in the Grid ,then i will captured the changes by the event DATA_CHANGED and i will display the error message inside the DATA_CHANGED event method using Method ADD_PROTOCOL_ENTRY and DISPLAY_PROTOCOL(which displayed a message in popup window with the field name ,row etc.).
    The Method CHECK_CHANGED_DATA in PAI will trigger DATA_CHANGE event.It is some time triggering DATA_CHANGED and some time it is not triggering DATA_CHANGED event..Why it is not triggering DATA_CHANGED event?
    Can any one give me solution for this.....
    Thanks in Advance..

    Hi,
    i have to register an ENTER  event:
    that is
    CALL METHOD alv->register_edit_event
    EXPORTING
    i_event_id = cl_gui_alv_grid=>mc_evt_enter.
    For this also it is not triggering...

  • Events not triggering in alv list, point will be given

    Hi friends,
          I am using reuse_alv_list_display fm to display data.
    and i am using reuse_alv_events_get fm to trigger events.
    but, top_of_page, event is not triggering,
    more precisely , the subroutine is not getting recognized by system.  how to rectify this.
    Check my code.
    *& Report  ZSEN_SERVICETAX_GTA
    REPORT  zsen_servicetax_gta NO STANDARD PAGE HEADING LINE-COUNT 100.
    *****************************************TABLES USED**********************************************************************
    *TABLES: BSIS,  "Accounting: Secondary Index for G/L Accounts
           BSAS,  "Accounting: Secondary Index for G/L Accounts (Cleared Items)
           LFA1.  "Vendor Master (General Section).
    *****************************************WORK AREA / INTERNAL TABLE DECLARATION******************************************
    TYPE-POOLS: slis.
    TYPES: BEGIN OF ty_main,
           hkont    TYPE bsis-hkont,
           belnr    TYPE bsis-belnr,
           budat    TYPE bsis-budat,
           blart    TYPE bsis-blart,
           dmbtr    TYPE bsis-dmbtr,
           xblnr    TYPE bsis-xblnr,
           shkzg    TYPE bsis-shkzg,
           augbl TYPE bsis-augbl,
           kz_dmbtr TYPE bsis-dmbtr,
           kz_xblnr TYPE bsis-xblnr,
           kz_blart TYPE bsis-blart,
           kz_belnr TYPE bsis-belnr,
           kz_budat TYPE bsis-budat,
           kz_zuonr TYPE bsis-zuonr,
           name1    TYPE lfa1-name1,
           slno     TYPE i,
           END OF ty_main,
           BEGIN OF ty_bsas,
           belnr TYPE bsas-hkont,
           budat TYPE bsas-budat,
           xblnr TYPE bsas-xblnr,
           augbl TYPE bsas-augbl,
           dmbtr TYPE bsas-dmbtr,
           blart TYPE bsas-blart,
           zuonr TYPE bsas-zuonr,
           END OF ty_bsas.
    DATA: it_main TYPE TABLE OF ty_main,
          wa_main LIKE LINE OF it_main,
          it_bsas TYPE TABLE OF ty_bsas,
          wa_bsas LIKE LINE OF it_bsas.
    DATA: it_sort       TYPE slis_t_sortinfo_alv,
          fieldcatalog  TYPE slis_t_fieldcat_alv WITH HEADER LINE,
          gd_layout     TYPE slis_layout_alv,
          gt_events     TYPE slis_t_event,
          int_fcat      TYPE slis_fieldcat_alv,
          it_header     TYPE slis_t_listheader,
          wa_header     TYPE slis_listheader.
    ************************************************work variables***********************************************************************
    DATA: ven_name   TYPE lfa1-name1,
          post_date  TYPE bsis-budat,
          t_tabix    TYPE sy-tabix,
          i_prg      LIKE sy-repid.
    ***********************************************selection screen***********************************************************************
    SELECTION-SCREEN: BEGIN OF BLOCK gtn WITH FRAME TITLE text-001 .
    SELECT-OPTIONS: date FOR post_date OBLIGATORY.
    SELECTION-SCREEN: END OF BLOCK gtn.
    ************************************************data selection**************************************************************************
    START-OF-SELECTION.
      PERFORM data_retreval.
      PERFORM build_catalog.
      PERFORM layout.
      PERFORM build_events.
      PERFORM sortinfo.
      IF it_main[] IS NOT INITIAL.
        PERFORM display_alv.
      ELSE.
        MESSAGE 'No Records Matching For This Selection' TYPE 'E'.
      ENDIF.
    ******************************data display*********************************************************************************************
    *&      Form  data_retreval
          text
    -->  p1        text
    <--  p2        text
    FORM data_retreval .
      CLEAR:it_main[], wa_main, fieldcatalog[].
    ***********************************************selecting data from bsis table for the given date range**********************************
      SELECT ahkont abelnr abudat ablart admbtr axblnr a~shkzg
             b~augbl
             INTO CORRESPONDING FIELDS OF TABLE it_main
             FROM bsis AS a LEFT OUTER JOIN bsas AS b
             ON abelnr = bbelnr
             WHERE a~budat IN date
             AND   a~blart = 'KR'
             AND   a~shkzg = 'S'
             AND   a~hkont = '0002200530'.
    ***********************************************selecting data from bsas table using bsis-belnr*******************************************
      LOOP AT it_main INTO wa_main.
        SELECT belnr budat dmbtr xblnr zuonr  augbl blart
               INTO CORRESPONDING FIELDS OF wa_bsas
               FROM bsas
               WHERE belnr = wa_main-augbl
               AND   blart = 'KZ'.
        ENDSELECT.
        APPEND wa_bsas TO it_bsas.
      ENDLOOP.
    ********************************************combining two tables data******************************************************************
      LOOP AT it_main INTO wa_main.
        t_tabix = sy-tabix.
           wa_main-slno     = t_tabix.
        READ TABLE it_bsas INTO wa_bsas WITH KEY augbl = wa_main-augbl.
        IF sy-subrc = 0.
          SELECT SINGLE name1
                 FROM lfa1
                 INTO ven_name
                 WHERE lifnr = wa_bsas-zuonr.
          wa_main-kz_dmbtr = wa_bsas-dmbtr.
          wa_main-kz_belnr = wa_bsas-belnr.
          wa_main-kz_blart = wa_bsas-blart.
          wa_main-kz_budat = wa_bsas-budat.
          wa_main-kz_xblnr = wa_bsas-xblnr.
          wa_main-kz_zuonr = wa_bsas-zuonr.
          wa_main-name1    = ven_name.
        ENDIF.
        MODIFY it_main FROM wa_main INDEX t_tabix TRANSPORTING kz_dmbtr kz_belnr kz_budat kz_blart kz_xblnr kz_zuonr name1 .
      ENDLOOP.
      SORT it_main BY kz_blart kz_zuonr.
      LOOP AT it_main INTO wa_main.
        wa_main-slno = sy-tabix.
        MODIFY it_main FROM wa_main INDEX sy-tabix TRANSPORTING slno.
      ENDLOOP.
    ENDFORM.                    " data_retreval
    *&      Form  build_catalog
          text
    -->  p1        text
    <--  p2        text
    FORM build_catalog .
      DATA: col_pos TYPE i.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'SLNO'.
      fieldcatalog-seltext_m = 'Serial No'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'KZ_ZUONR'.
      fieldcatalog-seltext_m = 'Vendor Num'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'NAME1'.
      fieldcatalog-seltext_m = 'Vendor Name'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'BLART'.
      fieldcatalog-seltext_m = 'BillDoc.Type'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'BELNR'.
      fieldcatalog-seltext_m = 'BillDoc.Num.'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'BUDAT'.
      fieldcatalog-seltext_m = 'BillPosting Date'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'XBLNR'.
      fieldcatalog-seltext_m = 'BillReference Num'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'DMBTR'.
      fieldcatalog-seltext_m = 'Bill Amount'.
      fieldcatalog-col_pos   = col_pos.
      fieldcatalog-do_sum    = 'X'.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'KZ_BLART'.
      fieldcatalog-seltext_m = 'Pay_Doc.type'.
      fieldcatalog-col_pos   = col_pos.
       fieldcatalog-do_sum    = 'X'.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'KZ_BELNR'.
      fieldcatalog-seltext_m = 'Pay_Document No'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'KZ_DMBTR'.
      fieldcatalog-seltext_m = 'Payment Amount'.
      fieldcatalog-col_pos   = col_pos.
      fieldcatalog-do_sum    = 'X'.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'KZ_XBLNR'.
      fieldcatalog-seltext_m = 'Pay_Reference Num'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'KZ_BUDAT'.
      fieldcatalog-seltext_m = 'Pay_Posting Date'.
      fieldcatalog-col_pos   = col_pos.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
      col_pos = col_pos + 1.
      fieldcatalog-fieldname = 'AUGBL'.
      fieldcatalog-seltext_m = 'Clr.Doc.Num'.
      fieldcatalog-col_pos   = col_pos.
       fieldcatalog-row_pos   = 2.
      APPEND fieldcatalog TO fieldcatalog.
      CLEAR: fieldcatalog.
    ENDFORM.                    " build_catalog
    *&      Form  sortinfo
          text
    -->  p1        text
    <--  p2        text
    FORM sortinfo .
      DATA: is_sort TYPE slis_sortinfo_alv.
      CLEAR:is_sort.
      is_sort-spos       = 2.
      is_sort-fieldname  = 'KZ_ZUONR'.
      is_sort-up         = 'X'.
      APPEND is_sort TO it_sort.
      CLEAR: is_sort.
      is_sort-spos       = 1.
      is_sort-fieldname  = 'KZ_BLART'.
      is_sort-up         = 'X'.
      is_sort-subtot     = 'X'.
      APPEND is_sort TO it_sort.
    ENDFORM.                    " sortinfo
    *&      Form  layout
          text
    -->  p1        text
    <--  p2        text
    FORM layout .
      gd_layout-no_input          = 'X'.
      gd_layout-colwidth_optimize = 'X'.
      gd_layout-zebra             = 'X'.
    *gd_layout-totals_text       = 'Grand Total'.
    *gd_layout-subtotals_text    = 'BillBooked Not Paid'.
    ENDFORM.                    " layout
    *&      Form  display_alv
          text
    -->  p1        text
    <--  p2        text
    FORM display_alv .
      i_prg = sy-repid.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
       EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
         i_callback_program                = 'I_PRG'
      I_CALLBACK_PF_STATUS_SET          = ' '
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            = 'TOP-OF-PAGE'
      I_CALLBACK_HTML_TOP_OF_PAGE       = 'TOP-OF-PAGE'
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = ' '
      I_GRID_TITLE                      =
      I_GRID_SETTINGS                   =
         is_layout                         = gd_layout
         it_fieldcat                       = fieldcatalog[]
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
         it_sort                           = it_sort
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
      I_SAVE                            = ' '
      IS_VARIANT                        =
         it_events                         = gt_events
      IT_EVENT_EXIT                     =
      IS_PRINT                          =
      IS_REPREP_ID                      =
      I_SCREEN_START_COLUMN             = 0
      I_SCREEN_START_LINE               = 0
      I_SCREEN_END_COLUMN               = 0
      I_SCREEN_END_LINE                 = 0
      I_HTML_HEIGHT_TOP                 = 0
      I_HTML_HEIGHT_END                 = 0
      IT_ALV_GRAPHICS                   =
      IT_HYPERLINK                      =
      IT_ADD_FIELDCAT                   =
      IT_EXCEPT_QINFO                   =
      IR_SALV_FULLSCREEN_ADAPTER        =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
        TABLES
          t_outtab                          = it_main
    EXCEPTIONS
      PROGRAM_ERROR                     = 1
      OTHERS                            = 2
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
    ENDFORM.                    " display_alv
    *&      Form  build_events
          text
    -->  p1        text
    <--  p2        text
    FORM build_events .
      DATA: is_event TYPE slis_alv_event.
    break-point.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
       EXPORTING
         i_list_type           = 0
       IMPORTING
         et_events             = gt_events[]
      EXCEPTIONS
        LIST_TYPE_WRONG       = 1
        OTHERS                = 2
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      READ TABLE gt_events WITH KEY name = slis_ev_top_of_page INTO is_event.
      IF sy-subrc = 0.
        MOVE 'TOP_OF_PAGE' TO is_event-form.
       MODIFY gt_events from is_event TRANSPORTING form WHERE name = slis_ev_top_of_page.
      ENDIF.
    ENDFORM.                    " build_events
    *&      Form  top_of_page
          text
    -->  p1        text
    <--  p2        text
    form top_of_page .
        BREAK-POINT.
        SKIP 3.
        WRITE:/20 'BILLING DETAILS', 40 'PAYMENT DETAILS'.
    endform.                    " top_of_page
    Regards.
    s.senthil kumar

    hi i modified ur program , check this and let me know
    REPORT zsen_servicetax_gta NO STANDARD PAGE HEADING LINE-COUNT 100.
    *****************************************TABLES USED**********************************************************************
    TABLES: BSIS, "Accounting: Secondary Index for G/L Accounts
    BSAS, "Accounting: Secondary Index for G/L Accounts (Cleared Items)
    LFA1. "Vendor Master (General Section).
    *****************************************WORK AREA / INTERNAL TABLE DECLARATION******************************************
    TYPE-POOLS: slis.
    TYPES: BEGIN OF ty_main,
    hkont TYPE bsis-hkont,
    belnr TYPE bsis-belnr,
    budat TYPE bsis-budat,
    blart TYPE bsis-blart,
    dmbtr TYPE bsis-dmbtr,
    xblnr TYPE bsis-xblnr,
    shkzg TYPE bsis-shkzg,
    augbl TYPE bsis-augbl,
    kz_dmbtr TYPE bsis-dmbtr,
    kz_xblnr TYPE bsis-xblnr,
    kz_blart TYPE bsis-blart,
    kz_belnr TYPE bsis-belnr,
    kz_budat TYPE bsis-budat,
    kz_zuonr TYPE bsis-zuonr,
    name1 TYPE lfa1-name1,
    slno TYPE i,
    END OF ty_main,
    BEGIN OF ty_bsas,
    belnr TYPE bsas-hkont,
    budat TYPE bsas-budat,
    xblnr TYPE bsas-xblnr,
    augbl TYPE bsas-augbl,
    dmbtr TYPE bsas-dmbtr,
    blart TYPE bsas-blart,
    zuonr TYPE bsas-zuonr,
    END OF ty_bsas.
    DATA: it_main TYPE TABLE OF ty_main,
    wa_main LIKE LINE OF it_main,
    it_bsas TYPE TABLE OF ty_bsas,
    wa_bsas LIKE LINE OF it_bsas.
    DATA: it_sort TYPE slis_t_sortinfo_alv,
    IT_fieldcatalog TYPE slis_t_fieldcat_alv ,
    WA_fieldcatalog TYPE slis_fieldcat_alv,
    gd_layout TYPE slis_layout_alv,
    gt_events TYPE slis_t_event,
    WA_EVENTS TYPE SLIS_T_EVENT,
    int_fcat TYPE slis_fieldcat_alv,
    it_header TYPE slis_t_listheader,
    wa_header TYPE slis_listheader.
    ************************************************work variables***********************************************************************
    DATA: ven_name TYPE lfa1-name1,
    post_date TYPE bsis-budat,
    t_tabix TYPE sy-tabix,
    i_prg LIKE sy-repid.
    ***********************************************selection screen***********************************************************************
    SELECTION-SCREEN: BEGIN OF BLOCK gtn WITH FRAME TITLE text-001 .
    SELECT-OPTIONS: date FOR BSIS-BUDAT .
    SELECTION-SCREEN: END OF BLOCK gtn.
    ************************************************data selection**************************************************************************
    START-OF-SELECTION.
    PERFORM data_retreval.
    PERFORM build_catalog.
    PERFORM layout.
    PERFORM build_events.
    PERFORM sortinfo.
    IF it_main[] IS NOT INITIAL.
    PERFORM display_alv.
    ELSE.
    MESSAGE 'No Records Matching For This Selection' TYPE 'E'.
    ENDIF.
    ******************************data display*********************************************************************************************
    **& Form data_retreval
    *text
    *--> p1 text
    *<-- p2 text
    FORM data_retreval .
    CLEAR:it_main[], wa_main.
    ***********************************************selecting data from bsis table for the given date range**********************************
    SELECT ahkont abelnr abudat ablart admbtr axblnr a~shkzg
    b~augbl
    INTO CORRESPONDING FIELDS OF TABLE it_main
    FROM bsis AS a LEFT OUTER JOIN bsas AS b
    ON abelnr = bbelnr
    WHERE a~budat IN date.
    *AND a~blart = 'KR'
    *AND a~shkzg = 'S'
    *AND a~hkont = '0002200530'.
    ***********************************************selecting data from bsas table using bsis-belnr*******************************************
    LOOP AT it_main INTO wa_main.
    SELECT belnr budat dmbtr xblnr zuonr augbl blart
    INTO CORRESPONDING FIELDS OF wa_bsas
    FROM bsas
    WHERE belnr = wa_main-augbl
    AND blart = 'KZ'.
    ENDSELECT.
    APPEND wa_bsas TO it_bsas.
    ENDLOOP.
    ********************************************combining two tables data******************************************************************
    LOOP AT it_main INTO wa_main.
    t_tabix = sy-tabix.
    wa_main-slno = t_tabix.
    READ TABLE it_bsas INTO wa_bsas WITH KEY augbl = wa_main-augbl.
    IF sy-subrc = 0.
    SELECT SINGLE name1
    FROM lfa1
    INTO ven_name
    WHERE lifnr = wa_bsas-zuonr.
    wa_main-kz_dmbtr = wa_bsas-dmbtr.
    wa_main-kz_belnr = wa_bsas-belnr.
    wa_main-kz_blart = wa_bsas-blart.
    wa_main-kz_budat = wa_bsas-budat.
    wa_main-kz_xblnr = wa_bsas-xblnr.
    wa_main-kz_zuonr = wa_bsas-zuonr.
    wa_main-name1 = ven_name.
    ENDIF.
    MODIFY it_main FROM wa_main INDEX t_tabix TRANSPORTING kz_dmbtr kz_belnr kz_budat kz_blart kz_xblnr kz_zuonr name1 .
    ENDLOOP.
    SORT it_main BY kz_blart kz_zuonr.
    LOOP AT it_main INTO wa_main.
    wa_main-slno = sy-tabix.
    MODIFY it_main FROM wa_main INDEX sy-tabix TRANSPORTING slno.
    ENDLOOP.
    ENDFORM. " data_retreval
    **& Form build_catalog
    *text
    *--> p1 text
    *<-- p2 text
    FORM build_catalog .
    DATA: col_pos TYPE i.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'SLNO'.
    WA_fieldcatalog-seltext_m = 'Serial No'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'KZ_ZUONR'.
    WA_fieldcatalog-seltext_m = 'Vendor Num'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'NAME1'.
    WA_fieldcatalog-seltext_m = 'Vendor Name'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'BLART'.
    WA_fieldcatalog-seltext_m = 'BillDoc.Type'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'BELNR'.
    WA_fieldcatalog-seltext_m = 'BillDoc.Num.'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'BUDAT'.
    WA_fieldcatalog-seltext_m = 'BillPosting Date'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'XBLNR'.
    WA_fieldcatalog-seltext_m = 'BillReference Num'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'DMBTR'.
    WA_fieldcatalog-seltext_m = 'Bill Amount'.
    WA_fieldcatalog-col_pos = col_pos.
    WA_fieldcatalog-do_sum = 'X'.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'KZ_BLART'.
    WA_fieldcatalog-seltext_m = 'Pay_Doc.type'.
    WA_fieldcatalog-col_pos = col_pos.
    WA_fieldcatalog-do_sum = 'X'.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'KZ_BELNR'.
    WA_fieldcatalog-seltext_m = 'Pay_Document No'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'KZ_DMBTR'.
    WA_fieldcatalog-seltext_m = 'Payment Amount'.
    WA_fieldcatalog-col_pos = col_pos.
    WA_fieldcatalog-do_sum = 'X'.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'KZ_XBLNR'.
    WA_fieldcatalog-seltext_m = 'Pay_Reference Num'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'KZ_BUDAT'.
    WA_fieldcatalog-seltext_m = 'Pay_Posting Date'.
    WA_fieldcatalog-col_pos = col_pos.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    col_pos = col_pos + 1.
    WA_fieldcatalog-fieldname = 'AUGBL'.
    WA_fieldcatalog-seltext_m = 'Clr.Doc.Num'.
    WA_fieldcatalog-col_pos = col_pos.
    WA_fieldcatalog-row_pos = 2.
    APPEND WA_fieldcatalog TO IT_fieldcatalog.
    CLEAR: WA_fieldcatalog.
    ENDFORM. " build_catalog
    **& Form sortinfo
    *text
    *--> p1 text
    *<-- p2 text
    FORM sortinfo .
    DATA: is_sort TYPE slis_sortinfo_alv.
    CLEAR:is_sort.
    is_sort-spos = 2.
    is_sort-fieldname = 'KZ_ZUONR'.
    is_sort-up = 'X'.
    APPEND is_sort TO it_sort.
    CLEAR: is_sort.
    is_sort-spos = 1.
    is_sort-fieldname = 'KZ_BLART'.
    is_sort-up = 'X'.
    is_sort-subtot = 'X'.
    APPEND is_sort TO it_sort.
    ENDFORM. " sortinfo
    **& Form layout
    *text
    *--> p1 text
    *<-- p2 text
    FORM layout .
    gd_layout-no_input = 'X'.
    gd_layout-colwidth_optimize = 'X'.
    gd_layout-zebra = 'X'.
    *gd_layout-totals_text = 'Grand Total'.
    *gd_layout-subtotals_text = 'BillBooked Not Paid'.
    ENDFORM. " layout
    **& Form display_alv
    *text
    *--> p1 text
    *<-- p2 text
    FORM display_alv .
    i_prg = sy-repid.
    DATA:it_events TYPE slis_t_event,
           wa_events TYPE slis_alv_event.
    WA_events-name = 'TOP_OF_PAGE'.
      WA_events-form = 'TOP_OF_PAGE'.
      APPEND  wa_events TO it_events.
    CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
    EXPORTING
    *I_INTERFACE_CHECK = ' '
    *I_BYPASSING_BUFFER = ' '
    *I_BUFFER_ACTIVE = ' '
    i_callback_program = 'I_PRG'
    *I_CALLBACK_PF_STATUS_SET = ' '
    *I_CALLBACK_USER_COMMAND = ' '
    I_CALLBACK_TOP_OF_PAGE = 'TOP-OF-PAGE'
    *I_CALLBACK_HTML_TOP_OF_PAGE = 'TOP-OF-PAGE'
    *I_CALLBACK_HTML_END_OF_LIST = ' '
    *I_STRUCTURE_NAME =
    *I_BACKGROUND_ID = ' '
    *I_GRID_TITLE =
    *I_GRID_SETTINGS =
    is_layout = gd_layout
    it_fieldcat = IT_fieldcatalog[]
    *IT_EXCLUDING =
    *IT_SPECIAL_GROUPS =
    *it_sort = it_sort
    *IT_FILTER =
    *IS_SEL_HIDE =
    *I_DEFAULT = 'X'
    *I_SAVE = ' '
    *IS_VARIANT =
    it_events = It_events.
    *IT_EVENT_EXIT =
    *IS_PRINT =
    *IS_REPREP_ID =
    *I_SCREEN_START_COLUMN = 0
    *I_SCREEN_START_LINE = 0
    *I_SCREEN_END_COLUMN = 0
    *I_SCREEN_END_LINE = 0
    *I_HTML_HEIGHT_TOP = 0
    *I_HTML_HEIGHT_END = 0
    *IT_ALV_GRAPHICS =
    *IT_HYPERLINK =
    *IT_ADD_FIELDCAT =
    *IT_EXCEPT_QINFO =
    *IR_SALV_FULLSCREEN_ADAPTER =
    *IMPORTING
    *E_EXIT_CAUSED_BY_CALLER =
    *ES_EXIT_CAUSED_BY_USER =
    *TABLES
    *t_outtab = it_main
    *EXCEPTIONS
    *PROGRAM_ERROR = 1
    *OTHERS = 2
    *IF sy-subrc <> 0.
    *MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    *ENDIF.
    ENDFORM. " display_alv
    **& Form build_events
    *text
    *--> p1 text
    *<-- p2 text
    FORM build_events .
    DATA: is_event TYPE slis_alv_event.
    CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
    EXPORTING
    i_list_type = 0
    IMPORTING
    et_events = gt_events[]
    EXCEPTIONS
    LIST_TYPE_WRONG = 1
    OTHERS = 2
    IF sy-subrc NE 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    READ TABLE gt_events WITH KEY name = slis_ev_top_of_page INTO is_event.
    IF sy-subrc = 0.
    MOVE 'TOP_OF_PAGE' TO is_event-form.
    MODIFY gt_events from is_event TRANSPORTING form WHERE name = slis_ev_top_of_page.
    ENDIF.
    ENDFORM. " build_events
    **& Form top_of_page
    *text
    *--> p1 text
    *<-- p2 text
    form top_of_page .
    SKIP 3.
    WRITE:/20 'BILLING DETAILS', 40 'PAYMENT DETAILS'.
    ENDFORM.
    reward points if useful,
    venkat.

  • Top Of Page not triggering in ALV

    Hi
    I am using ALV List Disaply. I have a itab that has 2000 Rows. When i scoll down, the header appears at the top always. Now i added the following code to trigger a Top of Page Event.
    FORM xevents.
      CLEAR xs_event.
      xs_event-name = slis_ev_top_of_page.
      xs_event-form = 'XTOP_OF_PAGE'.
      APPEND xs_event TO gt_xevents.
      CLEAR xs_event.
    ENDFORM.
    FORM xtop_of_page.
    BREAK-POINT.
      WRITE: / 'X_TOP_OF_PAGE'.
    ENDFORM.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
       EXPORTING
        I_INTERFACE_CHECK              = ' '
        I_BYPASSING_BUFFER             =
        I_BUFFER_ACTIVE                = ' '
         i_callback_program             = sy-repid
        I_CALLBACK_PF_STATUS_SET       = ' '
        I_CALLBACK_USER_COMMAND        = ' '
        I_STRUCTURE_NAME               =
         is_layout                      = st_layout
         it_fieldcat                    = fieldcat[]
        IT_EXCLUDING                   =
        IT_SPECIAL_GROUPS              =
        IT_SORT                        =
         it_filter                      = filttab[]
        IS_SEL_HIDE                    =
        I_DEFAULT                      = 'X'
        I_SAVE                         = ' '
        IS_VARIANT                     =
          it_events                      = gt_xevents
        IT_EVENT_EXIT                  =
        IS_PRINT                       =
        IS_REPREP_ID                   =
        I_SCREEN_START_COLUMN          = 0
        I_SCREEN_START_LINE            = 0
        I_SCREEN_END_COLUMN            = 0
        I_SCREEN_END_LINE              = 0
      IMPORTING
        E_EXIT_CAUSED_BY_CALLER        =
        ES_EXIT_CAUSED_BY_USER         =
        TABLES
          t_outtab                       = alv_tab[]
      EXCEPTIONS
        PROGRAM_ERROR                  = 1
        OTHERS                         = 2
      IF sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.

    this  may  be help u ....
    t_gt_events type slis_t_event,
    form display_alv.
      v_repid = sy-repid.
      sort vit_final by flag vbeln .
    perform get_top_of_page using t_gt_events[].
          gs_keyinfo-header01 = 'DISPO'.
          gs_keyinfo-item01 = 'DISPO'.
      call function 'REUSE_ALV_LIST_DISPLAY'
        exporting
            I_INTERFACE_CHECK        = ' '
             i_callback_program        = v_repid
            I_CALLBACK_PF_STATUS_SET = ' '
            I_CALLBACK_USER_COMMAND  = ' '
            I_STRUCTURE_NAME         =
             is_layout                = vfl_layout
             it_fieldcat               = vit_fieldcat
            IT_EXCLUDING             =
              it_special_groups       =
             it_sort                  = vit_sort
            IT_FILTER                =
            IS_SEL_HIDE              =
            I_DEFAULT                = 'X'
            I_SAVE                   = ' '
            IS_VARIANT               = ' '
             IT_EVENTS                = t_gt_events[]
            IT_EVENT_EXIT            =
            IS_PRINT                 =
            IS_REPREP_ID             =
            I_SCREEN_START_COLUMN    = 0
            I_SCREEN_START_LINE      = 0
            I_SCREEN_END_COLUMN      = 0
            I_SCREEN_END_LINE        = 0
            I_BYPASSING_BUFFER       =
            I_BUFFER_ACTIVE          =
       IMPORTING
        tables
                t_outtab               = vit_final
        exceptions
             program_error            = 1
             others                   = 2.
      if sy-subrc <> 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      endif.
    endform.                      " DISPLAY_ALV
    *&      Form  get_top_of_page
          text
    -->  p1        text
    <--  p2        text
    form get_top_of_page using t_gt_events type slis_t_event.
    data: ls_event type slis_alv_event.
      call function 'REUSE_ALV_EVENTS_GET'
           exporting
                i_list_type = 0
           importing
                et_events   = t_gt_events.
      read table t_gt_events with key name = slis_ev_top_of_page
                               into ls_event.
      move c_formtop  to ls_event-form.
      append ls_event to t_gt_events.
    endform.                    " get_top_of_page

  • Not triggering PBO in OOABAP ALV grid

    Hi all.
    I want to create drop down for Document type BSART.for that iam using OOABAP but my program is not triggering PBO module itself.I have seen so many examples but iam unable to fetch data.what are the changes i have to do here.i have reduced some code here.i have written my final internal table select query before this stataement.
    loop at it_git_final into wa_git_final.
    APPEND wa_git_final TO it_git_final.
    ENDLOOP.
    *Call to ALV
      CALL SCREEN 600.
    MODULE status_0600 OUTPUT.
    SET PF-STATUS 'DISP'.
    SET TITLEBAR 'ALVF4'.
    ENDMODULE.                 " STATUS_0600  OUTPUT
    calling the PBO module ALV_GRID.
    MODULE pbo OUTPUT.
    *Creating objects of the container
      *  SET field for ALV
      if g_custom_container is initial.
      perform create_and_init_alv changing it_git_final
                                             gt_fieldcat.
    PERFORM alv_build_fieldcat.
      endif.
      * Set ALV attributes FOR LAYOUT
    PERFORM alv_report_layout.
       CHECK NOT c_alvgd IS INITIAL.
    Call ALV GRID
       CALL METHOD c_alvgd->set_table_for_first_display
        EXPORTING
          is_layout                     = it_layout
          i_save                        = 'A'
        CHANGING
          it_outtab                     = it_git_final
          it_fieldcatalog               = it_fcat
        EXCEPTIONS
          invalid_parameter_combination = 1
          program_error                 = 2
          too_many_lines                = 3
          OTHERS                        = 4.
      IF sy-subrc <> 0.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
                   WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      ENDIF.
       ENDMODULE.                 " PBO  OUTPUT
          MODULE PAI INPUT                                              *
    MODULE pai INPUT.
       ENDMODULE.                    "pai INPUT
    *subroutine to build fieldcat
    FORM alv_build_fieldcat changing pt_fieldcat type lvc_t_fcat..
       DATA lx_fcat TYPE lvc_s_fcat.
      CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
        EXPORTING
          i_structure_name = 'IT_GIT_FINAL'
        CHANGING
          ct_fieldcat      = gt_fieldcat.
    * To assign dropdown in the fieldcataogue
    LOOP AT gt_fieldcat INTO lx_fcat.
       DATA : lx_fcat TYPE lvc_s_fcat.
      lx_fcat-row_pos   = '1'.
      lx_fcat-col_pos   = '1'.
    lx_fcat-fieldname = 'CHECK1'.
    lx_fcat-ref_field = 'CHECK1'
      lx_fcat-EDIT = 'X'.
      lx_fcat-coltext = 'Check Box'.
    lx_fcat-seltext = text-c01.
    APPEND lx_fcat TO Gt_fieldcat.
    CLEAR lx_fcat.
    lx_fcat-row_pos   = '1'.
      lx_fcat-col_pos   = '15'.
      lx_fcat-fieldname = 'BSART'.
      lx_fcat-ref_field = 'BSART'.
      lx_fcat-ref_table = 'T161P'.
      lx_fcat-coltext = 'Document Type'.
    lx_fcat-drdn_hndl = '1'.
      lx_fcat-outputlen = 15.
      lx_fcat-edit = 'X'.
      append  lx_fcat to gt_fieldcat.
      CLEAR lx_fcat.
       DATA: lt_dropdown TYPE lvc_t_drop,
            ls_dropdown TYPE lvc_s_drop.
      ls_dropdown-handle = '1'.
      ls_dropdown-value = '01 ZFC Vesselchart Contract'.
      APPEND ls_dropdown TO lt_dropdown.
      ls_dropdown-handle = '1'.
      ls_dropdown-value = '02 ZQTY QTY Contract(SESA)'.
      APPEND ls_dropdown TO lt_dropdown.   ls_dropdown-handle = '1'.
    *method to display the dropdown in ALV
      CALL METHOD g_grid->set_drop_down_table
        EXPORTING
          it_drop_down = lt_dropdown.
    LOOP AT it_fcat INTO lx_fcat.
        CASE lx_fcat-fieldname.
    To assign dropdown in the fieldcataogue
          WHEN 'BSART'.
            lx_fcat-drdn_hndl = '1'.
            lx_fcat-outputlen = 15.
            MODIFY it_fcat FROM lx_fcat.
        ENDCASE.
      ENDLOOP.
          endform.
    form ALV_OUTPUT .
    *Create object for container
    CREATE OBJECT g_custom_container
            EXPORTING container_name = 'CCONT'.
    *create object for grid
    CREATE OBJECT g_grid
            EXPORTING i_parent = g_custom_container.
      CALL METHOD g_grid->set_table_for_first_display
        EXPORTING
          is_layout       = it_layout
        CHANGING
          it_fieldcatalog = gt_fieldcat
          it_outtab       = it_git_final.
    endform.                    " ALV_OUTPUT
    form ALV_REPORT_LAYOUT .
      it_layout-cwidth_opt = 'X'.
      it_layout-col_opt = 'X'.
      it_layout-zebra = 'X'.
    endform.                    " ALV_REPORT_LAYOUT
    form CREATE_AND_INIT_ALV  changing p_it_git_final
                                       p_gt_fieldcat.
      create object g_custom_container
             exporting container_name = g_container.
      create object g_grid
             exporting i_parent = g_custom_container.
    endform.

    Hello Raj
      Actually all the code is described in PBO module, so you need to invoke this module in PBO when defining the screen.
    For example, access transaction SE51, start in Change mode and inser line
        MODULE PBO.
    Then activate the object
    Best regards
    Carlos Machad o

  • DATA_CHANGED event handler is not triggered after input.(OO ALV)

    Dear Experts,
    What I did:
    I register Enter as the trigger event for data_changed event, and I put my checking logic in data_changed_handler which is a method of a local class. When the checking fails, I put messages using er_data_changed->add_protocal_entry to show messages.
    My checking is simple, if the cell is empty, error messages pops up tells that this cell can not be blank for this row.
    My problem:
    When there is no entry in the alv list(Only this situation), I insert a new entry, the cell which is required is empty, I press Enter, data_changed event is triggered, the message pops up saying that the cell is required. Then close the pop up message window, I input something in the cell, and press enter. The data_changed event is not triggered.
    Is there any1 has any ideas on this problem?
    Vicnent
    Edited by: Changjiu Tan on Sep 7, 2009 1:33 PM

      METHOD HANDLE_DATA_CHANGED.                               "#EC NEEDED
    *<<<  BEGIN MODIFY EXAMPLE CODE
    *   u4FDDu5B58u30C7u30FCu30BFu3092u7DE8u96C6u3059u308Bu3000START
        DATA: LW_INS      TYPE LVC_S_MOCE,
              LV_FNAME    TYPE LVC_FNAME,
              LW_MOD      TYPE LVC_S_MODI,
              LV_MAX      TYPE I,
              LV_RES(12)  TYPE C,
              LW_LIST     TYPE ZTSRE012,
              LV_ROWID    TYPE LVC_S_ROID,
              LT_MOD      TYPE LVC_T_MODI,
              LV_COLID    TYPE LVC_S_COL,
              LV_ROW_ID    TYPE LVC_S_ROW,
              LV_COL_ID    TYPE LVC_S_COL.
    *   u73FEu5728u306Eu30D5u30A9u30FCu30ABu30B9u4F4Du7F6Eu3092u53D6u5F97
        CALL METHOD GO_ALV_GRID7->GET_CURRENT_CELL
          IMPORTING
            ES_ROW_ID = LV_ROW_ID
            ES_COL_ID = LV_COL_ID.
        LOOP AT GT_LIST INTO LW_LIST.
          IF LW_LIST-ID > LV_MAX.
            LV_MAX = LW_LIST-ID.
          ENDIF.
        ENDLOOP.
    *   u30B0u30EBu30FCu30D7ID
        LV_FNAME = CNS_ID.
        LOOP AT ER_DATA_CHANGED->MT_INSERTED_ROWS INTO LW_INS.
          LV_MAX = LV_MAX + 1.
          CALL METHOD ER_DATA_CHANGED->MODIFY_CELL
            EXPORTING
              I_ROW_ID    = LW_INS-ROW_ID
              I_FIELDNAME = LV_FNAME
              I_VALUE     = LV_MAX.
        ENDLOOP.
        CLEAR: LV_FNAME.
        LT_MOD[] = ER_DATA_CHANGED->MT_GOOD_CELLS[].
    *   u30C7u30FCu30BFu30C1u30A7u30C3u30AF
        LOOP AT LT_MOD INTO LW_MOD.
          IF LW_MOD-FIELDNAME = CNS_ZZTTSN.
            LV_COLID-FIELDNAME = LW_MOD-FIELDNAME.
            LV_ROWID-ROW_ID    = LW_MOD-ROW_ID.
            CALL METHOD GO_ALV_GRID7->SET_CURRENT_CELL_VIA_ID
              EXPORTING
                IS_COLUMN_ID = LV_COLID
                IS_ROW_NO    = LV_ROWID.
            CALL METHOD GO_ALV_GRID7->GET_CURRENT_CELL
              IMPORTING
                E_VALUE = LV_RES.
            IF LV_RES IS INITIAL.
              CALL METHOD ER_DATA_CHANGED->ADD_PROTOCOL_ENTRY
                EXPORTING
                  I_MSGID     = CNS_MSGID
                  I_MSGTY     = CNS_MSGTY
                  I_MSGNO     = CNS_MSGNO
                  I_FIELDNAME = LW_MOD-FIELDNAME
                  I_ROW_ID    = LW_MOD-ROW_ID.
            ENDIF.
            CALL METHOD ER_DATA_CHANGED->MODIFY_CELL
              EXPORTING
                I_ROW_ID    = LW_MOD-ROW_ID
                I_FIELDNAME = LW_MOD-FIELDNAME
                I_VALUE     = LV_RES.
           ENDIF.
          CLEAR:  LV_RES,
                  LV_COLID,
                  LV_ROWID.
        ENDLOOP.
        CALL METHOD GO_ALV_GRID7->SET_CURRENT_CELL_VIA_ID
          EXPORTING
            IS_ROW_ID    = LV_ROW_ID
            IS_COLUMN_ID = LV_COL_ID.
      ENDMETHOD.                    "handle_data_changed
    Edited by: Changjiu Tan on Sep 7, 2009 1:31 PM
    Edited by: Changjiu Tan on Sep 7, 2009 1:32 PM

  • Top-of-page event is not triggered

    Hi,
    I have a problem with top-of-page event. I have a report that shows the results in ALV grid display. But I use "REUSE_ALV_GRID_DISPLAY" not OO alv and there is only one screen with number 1000. On the menu toolbar there is a button that prints the data of ALV in a list using "write" statement. While writing , "top of page" event is not triggered. I expect that it is triggered at the first "write" statement but isn't. Is there anyone who knows the cause of this problem?
    The code is below.
    Thanks.
    Tables ...
    TABLES : mara , makt , ekko , ekpo , zzith_yukh , lfa1 , t001w  , lips ,
             eket .
    global variables
    DATA : BEGIN OF list OCCURS 1,
           zztahsk LIKE ekko-zztahsk ,
           zterm LIKE ekko-zterm ,
           txz01 LIKE ekpo-txz01 ,
           name1 LIKE lfa1-name1 ,
           menge LIKE ekpo-menge ,
           meins LIKE ekpo-meins ,
           fyukl LIKE zzith_yukh-zzdel_flag ,
                             " Yüklenmi&#351; miktar var göstergesi ...
           inco1 LIKE ekko-inco1 ,
           netwr LIKE ekpo-netwr ,
           waers LIKE ekko-waers ,
           bedat LIKE ekko-bedat ,
           zzontar LIKE ekko-zzontar ,
           slfdt LIKE eket-slfdt ,
           tname1 LIKE t001w-name1 ,
           banfn LIKE ekpo-banfn ,
           ebeln LIKE ekko-ebeln ,
           ebelp LIKE ekpo-ebelp ,
           lifnr LIKE ekko-lifnr ,
           mtart LIKE mara-mtart ,
           matkl LIKE mara-matkl ,
           ekgrp LIKE ekko-ekgrp ,
           matnr LIKE mara-matnr ,
           eknam  LIKE t024-eknam,
           bukrs  LIKE ekko-bukrs,
           zzbltur LIKE ekko-zzbltur,
           END   OF list         .
    DATA temp  LIKE list OCCURS 1 WITH HEADER LINE .
    DATA total LIKE list OCCURS 1 WITH HEADER LINE .
    ALV fields
    TYPE-POOLS : slis.
    DATA : gt_fields TYPE  slis_fieldcat_alv OCCURS 1 WITH HEADER LINE .
    DATA : gt_events TYPE  slis_t_event.
    DATA : gs_layout TYPE  slis_layout_alv.
    DATA : gv_title  TYPE lvc_title VALUE 'Günlük Depo Say&#305;m Miktarlar&#305;'.
    DATA : gt_top_of_page TYPE slis_t_listheader.
    selection screen
    SELECTION-SCREEN BEGIN OF BLOCK a WITH FRAME TITLE text-001 .
    *Sat&#305;nalma organizasyonu
    *Sat&#305;nalma grubu
    *Sat&#305;c&#305;
    *Tarih
    *SAS no
    *Dosya no
    SELECT-OPTIONS:
    s_bukrs FOR ekko-bukrs .
    SELECTION-SCREEN SKIP .
    SELECT-OPTIONS:
    s_ekorg FOR  ekko-ekorg OBLIGATORY MEMORY ID eko ,
    s_ekgrp FOR  ekko-ekgrp ,
    s_lifnr FOR  ekko-lifnr ,
    s_ebeln FOR  ekko-ebeln .
    SELECTION-SCREEN END  OF BLOCK a        .
    Define Katalog
    DEFINE fill_catalog .
      gt_fields-fieldname  = &1.
      gt_fields-tabname    = &2.
      gt_fields-seltext_l  = &3.
      gt_fields-seltext_m  = &3.
      gt_fields-seltext_s  = &3.
      gt_fields-checkbox   = &4.
      gt_fields-cfieldname = &5.
      gt_fields-ref_tabname  = &6.
      gt_fields-ref_fieldname  = &7.
      gt_fields-edit       = &8.
      append gt_fields .
      clear gt_fields .
    END-OF-DEFINITION.
    Modify Catalog
    DEFINE modify_catalog .
      gt_fields-seltext_m = &1 .
      modify gt_fields  transporting seltext_m where fieldname = &2 .
    END-OF-DEFINITION     .
    TOP-OF-PAGE.
      write 'top of page'.
      PERFORM top-of-page.
    start-of-selection
    START-OF-SELECTION .
      PERFORM get_data.
      PERFORM listele .
    *&      Form  listele .
    FORM listele .
      PERFORM get_events .
      PERFORM alv_list_header.
      PERFORM get_field_catalog USING 'LIST' .
      PERFORM display_alv    .
    ENDFORM.                    " listele.
    *&      Form  getfield_Catalog
    FORM get_field_catalog  USING p_tabname .
      fill_catalog :
    'EBELN'   'LIST' '' '' '' 'EKPO' 'EBELN'   '' ,
    'ZZTAHSK' 'LIST' '' '' '' 'EKKO' 'ZZTAHSK' '' ,
    'ZZBLTUR' 'LIST' '' '' '' 'EKKO' 'ZZBLTUR' '' ,
    'MATNR'   'LIST' '' '' '' 'MARA' 'MATNR'   '' ,
    'MATKL'   'LIST' '' '' '' 'MARA' 'MATKL'   '' ,
    'TXZ01'   'LIST' '' '' '' 'EKPO' 'TXZ01'   '' ,
    'NAME1'   'LIST' '' '' '' 'LFA1' 'NAME1'   '' ,
    'MENGE'   'LIST' '' '' '' 'EKPO' 'MENGE'   '' ,
    'MEINS'   'LIST' '' '' '' 'EKPO' 'MENGE'   '' ,
    'FYUKL'   'LIST' '' '' '' 'ZZITH_YUKH' 'ZZDEL_FLAG'   '' ,
    'INCO1'   'LIST' '' '' '' 'EKKO' 'INCO1'   '' ,
    'NETWR'   'LIST' '' '' '' 'EKPO' 'NETWR'   '' ,
    'WAERS'   'LIST' '' '' '' 'EKKO' 'WAERS'   '' ,
    'BEDAT'   'LIST' '' '' '' 'EKKO' 'BEDAT'   '' ,
    'ZZONTAR' 'LIST' '' '' '' 'EKKO' 'ZZONTAR' '' ,
    'SLFDT'   'LIST' '' '' '' 'EKET' 'SLFDT'   '' ,
    'TNAME1'  'LIST' '' '' '' 'T001W' 'NAME1'  '' ,
    'BANFN'   'LIST' '' '' '' 'EKPO' 'BANFN'   '' ,
    'EKNAM'   'LIST' '' '' '' 'T024' 'EKNAM'   '' .
      gt_fields-ddictxt = 'M' .
      MODIFY gt_fields  TRANSPORTING ddictxt WHERE fieldname NE space.
      modify_catalog 'Yükleme No'            'VBELN'   .
      modify_catalog 'Malzeme Türü'          'ZZBLTUR' .
      modify_catalog 'Malzeme Tan&#305;m&#305;'        'TXZ01'   .
      modify_catalog 'Sat&#305;c&#305;'                'NAME1'   .
      modify_catalog 'Teslim &#350;ekli'          'INCO1'   .
      modify_catalog 'Döviz Tutar&#305;'          'ZZTOPLAM'.
      modify_catalog 'Döviz Kodu'            'WAERS'   .
      modify_catalog 'Sipari&#351;i Veren'        'TNAME1'  .
      modify_catalog 'Tahmini &#304;thalat Trh.'  'SLFDT'   .
      modify_catalog '&#304;thalata &#304;ntikal Trh.' 'BEDAT'   .
      modify_catalog 'Dosya Onay Tarihi'     'ZZONTAR' .
      modify_catalog 'Talep No'              'BANFN'   .
      modify_catalog 'Dosya Sorumlusu'       'EKNAM'   .
      modify_catalog 'Yük.Göstergesi'        'FYUKL'   .
    ENDFORM.                    " getfield_Catalog
    *&      Form  display_alv
          text
    -->  p1        text
    <--  p2        text
    FORM display_alv .
      DATA lv_repid LIKE sy-repid .
      lv_repid = sy-repid .
      CLEAR gs_layout.
      gs_layout-zebra                 = 'X'.
      gs_layout-colwidth_optimize     = 'X'.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program       = lv_repid
          i_callback_pf_status_set = 'SET_PF_STATUS'
          i_callback_user_command  = 'USER_COMMAND'
          is_layout                = gs_layout
          it_fieldcat              = gt_fields[]
          it_events                = gt_events[]
        TABLES
          t_outtab                 = list[].
    ENDFORM.                    " display_alv
    FORM set_pf_status USING  iv_nodisplay TYPE slis_t_extab.
      SET PF-STATUS 'STANDARD' ."excluding iv_nodisplay.
    ENDFORM.                    " SET_PF_STATUS
    FORM user_command  USING iv_ucomm LIKE sy-ucomm
                      rs_selfield TYPE slis_selfield.
      CASE iv_ucomm .
        WHEN 'PRINT'  . PERFORM print_data .
      ENDCASE       .
    ENDFORM.                    "USER_COMMAND
    FORM get_events .
      DATA: ls_event TYPE slis_alv_event.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type = 0
        IMPORTING
          et_events   = gt_events.
      READ TABLE gt_events WITH KEY name = slis_ev_top_of_page
                               INTO ls_event.
      IF sy-subrc = 0.
        MOVE 'ALV_TOP_OF_PAGE' TO ls_event-form.
        APPEND ls_event TO gt_events.
      ENDIF.
    ENDFORM.                    " getevents
    FORM alv_list_header .
      DATA: ls_line TYPE slis_listheader.
      CLEAR ls_line.
      ls_line-typ  = 'S'.
      ls_line-key  = 'Sat&#305;nalma Org.:'.
      CONCATENATE s_ekorg-low s_ekorg-high
      INTO ls_line-info SEPARATED BY '/'.
      APPEND ls_line TO gt_top_of_page.
      ls_line-key  = 'Sat&#305;nalma Grubu.:'.
      CONCATENATE s_ekgrp-low s_ekgrp-high
      INTO ls_line-info SEPARATED BY '/'.
      APPEND ls_line TO gt_top_of_page.
      ls_line-key  = 'Sat&#305;c&#305;.:'.
      CONCATENATE s_lifnr-low s_lifnr-high
      INTO ls_line-info SEPARATED BY '/'.
      APPEND ls_line TO gt_top_of_page.
      ls_line-key  = 'SAS No.:'.
      CONCATENATE s_ebeln-low s_ebeln-high
      INTO ls_line-info SEPARATED BY '/'.
      APPEND ls_line TO gt_top_of_page.
    ENDFORM.                    " alv_list_header
    FORM alv_top_of_page.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = gt_top_of_page.
    ENDFORM.                    "TOP_OF_PAGE
    FORM get_data .
      DATA : BEGIN OF tr ,
              menge LIKE eket-menge ,
              dabmg LIKE eket-dabmg ,
             END OF tr ,
             zzfiilytar LIKE zzith_yukh-zzfiilytar  .
    *- Get data ...
      SELECT *
        INTO CORRESPONDING FIELDS OF TABLE list
        FROM ekpo AS a
       INNER JOIN ekko AS b ON bebeln = aebeln
      WHERE b~ebeln IN s_ebeln AND
            b~bukrs IN s_bukrs AND
            b~loekz EQ space   AND
            b~lifnr IN s_lifnr AND
            b~ekorg IN s_ekorg AND
            b~ekgrp IN s_ekgrp AND
            a~loekz EQ space   AND
            a~elikz EQ space .
      LOOP AT list .
        CLEAR tr .
        SELECT menge dabmg
          INTO tr
          FROM eket
         WHERE ebeln = list-ebeln AND
               ebelp = list-ebelp.
          tr-menge = tr-menge - tr-dabmg .
        ENDSELECT.
        IF tr-menge LE 0 .
          DELETE list .
        ELSE .
          list-menge = tr-menge .
          IF tr-dabmg GT 0 .
            list-fyukl = '*' .
          ENDIF .
          SELECT SINGLE butxt INTO list-tname1 FROM t001
            WHERE bukrs = list-bukrs .
          SELECT SINGLE slfdt INTO list-slfdt FROM eket
          WHERE ebeln = list-ebeln AND
                ebelp = list-ebelp .
          SELECT SINGLE name1 INTO list-name1 FROM lfa1 WHERE lifnr = list-lifnr.
          SELECT SINGLE mtart matkl INTO (list-mtart,list-matkl)
          FROM mara WHERE matnr = list-matnr .
          SELECT SINGLE eknam INTO list-eknam FROM t024 WHERE ekgrp = list-ekgrp .
          MODIFY list .
        ENDIF .
      ENDLOOP      .
    ENDFORM.                    " get_data
    FORM print_data .
      LEAVE TO LIST-PROCESSING .
      NEW-PAGE NO-HEADING NO-TITLE LINE-SIZE 229 .
      SET PF-STATUS SPACE .
    PERFORM top-of-page .
    malzeme türü 1005 ler yazd&#305;r&#305;l&#305;r
      PERFORM yazdir_1005 .
    malzeme türü 1005 olmayanlar yazd&#305;r&#305;l&#305;r
      PERFORM yazdir_ne_1005 .
    Sat&#305;nalama gruplar&#305; bilgisi yazd&#305;r&#305;l&#305;r
      PERFORM yazdir_ekgrp .
    ENDFORM.                    " print_data
    FORM top-of-page .
      WRITE : 'ÜLKER GRUBU KONSOL&#304;DE' .
      WRITE AT 40 'Sevkiyat Bekleyen Malzemeler' COLOR COL_HEADING .
      WRITE :  180 sy-uname , sy-datum , sy-uzeit.
      NEW-LINE .
      ULINE 0(229) .
      WRITE :/2 'Rapor Kodu..............:' , (10) sy-tcode .
      WRITE :/2 'Sat&#305;nalma Organizasyonu.:' , (10) s_ekorg-low, '/', (10) s_ekorg-high .
      WRITE :/2 'Sat&#305;nalma Grubu.........:' , (10) s_ekgrp-low, '/', (10) s_ekgrp-high .
      WRITE :/2 'Sat&#305;c&#305;..................:' , (10) s_lifnr-low, '/', (10) s_lifnr-high .
      WRITE :/2 'Sat&#305;nalma Sipari&#351; No....:' , (10) s_ebeln-low, '/', (10) s_ebeln-high .
      NEW-LINE .
      ULINE 0(229) .
    Ba&#351;l&#305;klar yaz&#305;l&#305;r
      FORMAT COLOR COL_HEADING .
      WRITE :
      /(10) 'SAS NO.' CENTERED,
      (6)  'TAHS&#304;S'  CENTERED,
      (5)  'ÖDEME'   CENTERED,
      (5)  'Bel.T'   CENTERED,
      (25) 'MALZEME' CENTERED,
      (25) 'SATICI' CENTERED,
      (12) 'M&#304;KTAR' CENTERED,
      (3)  'BRM' CENTERED,
      (3)  'G' ,
      (7) 'TES.&#350;K.' CENTERED,
      (16) 'DÖV&#304;Z TUTARI' CENTERED,
      (3)  'DB.' CENTERED,
      (13) '&#304;TH.&#304;NTK.TRH.' CENTERED,
      (13) 'DOSYA ON.TRH.' CENTERED,
      (10) 'TAHM&#304;N.&#304;TH.TRH.' CENTERED,
      (20) 'S&#304;PAR&#304;&#350; VEREN' CENTERED,
      (10) 'TALEP NO.' CENTERED,
      (18) 'DOSYA SORUMLUSU' CENTERED.
      ULINE 0(229) .
      FORMAT RESET .
    ENDFORM.                    " top-of-page
    FORM yazdir_1005 .
      DATA ebeln LIKE list-ebeln  .
      SORT list BY zzbltur matnr .
      temp[] = list[] .
      DELETE temp WHERE mtart <> '1005' .
      LOOP AT list WHERE mtart = '1005' .
        CLEAR list-netwr .
        IF ebeln NE list-ebeln OR ebeln EQ space .
          REFRESH total . CLEAR total .
          ebeln = list-ebeln .
          LOOP AT temp WHERE ebeln = list-ebeln .
            list-netwr = list-netwr + temp-netwr  .
            CLEAR total .
            total-txz01 = '*** TKNK.MLZ. TOPLAMI ****' .
            total-meins = temp-meins .
            total-menge = temp-menge .
            COLLECT total .
          ENDLOOP                               .
          PERFORM write_list USING '1'  .
          LOOP AT total .
            PERFORM write_list USING '2'  .
          ENDLOOP .
          AT END OF zzbltur .
            ULINE 0(229) .
          ENDAT .
        ENDIF .
      ENDLOOP .
    ENDFORM.                    " yazdir_1005
    FORM write_list  USING    flag .
    flag 1 1005 için yazd&#305;rma
    flag 2 ise ara toplam
      IF flag = '1' .
       FORMAT COLOR COL_NORMAL .
        WRITE :
        /(10) list-ebeln ,
         (6)  list-zztahsk,
         (5)  list-zterm,
         (5)  list-zzbltur ,
         (25) list-txz01,
         (25) list-name1,
         (12) list-menge,
         (3)  list-meins,
         (3)  list-fyukl,
         (7)  list-inco1,
         (16) list-netwr,
         (3)  list-waers,
         (13) list-bedat,
         (13) list-zzontar,
         (10) list-slfdt ,
         (20) list-tname1,
         (10) list-banfn ,
         (18) list-eknam .
        FORMAT RESET .
      ELSEIF flag = '2'  .
       FORMAT COLOR COL_TOTAL .
        WRITE :
        /(10) '' ,
         (6)  '' ,
         (5)  '' ,
         (5)  '' ,
         (25) total-txz01,
         (25) '' ,
         (12) total-menge,
         (3)  total-meins,
         (3)  '' ,
         (7)  '' ,
         (16) '' ,
         (3)  '' ,
         (13) '' ,
         (13) '' ,
         (10) '' ,
         (20) '' ,
         (10) '' ,
         (18) '' .
        FORMAT RESET .
      ELSEIF flag = '3'  .
       FORMAT COLOR COL_TOTAL .
        WRITE :
       /(10) '' ,
        (6)  '' ,
        (5)  '' ,
        (5)  '' ,
        (25) total-txz01,
        (25) '' ,
        (12) total-menge,
        (3)  '' ,
        (3)  '' ,
        (7)  '' ,
        (16) total-netwr ,
        (3)  '' ,
        (13) '' ,
        (13) '' ,
        (10) '' ,
        (20) '' ,
        (10) '' ,
        (18) '' .
        FORMAT RESET .
      ENDIF .
    ENDFORM.                    " write_list
    FORM yazdir_ne_1005 .
      DATA matnr LIKE list-matnr .
      SORT list BY zzbltur matkl matnr .
      temp[] = list[] .
      DELETE temp WHERE mtart = '1005' .
      LOOP AT list WHERE mtart <> '1005' .
    Her yeni Malzeme için ara toplam yaz&#305;l&#305;r
        IF matnr NE list-matnr AND matnr NE space .
           REFRESH total . CLEAR total .
    Toplamlar al&#305;n&#305;r
          LOOP AT temp WHERE matnr = matnr .
            CLEAR total .
            total-netwr = temp-netwr  .
            total-menge = temp-menge  .
            total-txz01 =  '***     TOPLAM        ****' .
            COLLECT total .
          ENDLOOP                          .
          LOOP AT total .               .
            PERFORM write_list USING '3'  .
          ENDLOOP                       .
          ULINE 0(229) .
        ENDIF                      .
        PERFORM write_list USING '1'  .
        matnr = list-matnr            .
      ENDLOOP                           .
    Toplamlar al&#305;n&#305;r
      LOOP AT temp WHERE matnr = matnr .
        REFRESH total . CLEAR total .
        total-netwr = temp-netwr  .
        total-menge = temp-menge  .
        total-txz01 =  '***     TOPLAM        ****' .
        COLLECT total .
      ENDLOOP .
      LOOP AT total .
        PERFORM write_list USING '3'  .
      ENDLOOP       .
      ULINE 0(229)  .
    ENDFORM.                    " yazdir_ne_1005
    FORM yazdir_ekgrp .
      DATA: BEGIN OF total OCCURS 1 ,
            eknam LIKE list-eknam   ,
            zzbltur LIKE list-zzbltur ,
            sayi TYPE i ,
            END  OF  total          .
      DATA: BEGIN OF gtotal OCCURS 1 ,
            eknam LIKE list-eknam   ,
            zzbltur LIKE list-zzbltur ,
            sayi TYPE i ,
            END  OF  gtotal          .
      DATA: bltur LIKE zzith_bltur OCCURS 1 WITH HEADER LINE .
      DATA: len TYPE i  .
      DATA: wa LIKE total.
      REFRESH temp .
      SELECT * INTO TABLE bltur FROM zzith_bltur .
      CLEAR bltur .
      MOVE : 'ZZZZ'   TO bltur-zzbltur ,  " Sat&#305;r toplam&#305; için ...
             text-002 TO bltur-zztanim .
      APPEND bltur .
      CLEAR list   .
      SORT list BY eknam ebeln .
      DELETE ADJACENT DUPLICATES FROM list COMPARING eknam ebeln .
      LOOP AT list .
        CLEAR : total, gtotal .
        total-eknam = list-eknam .
        total-zzbltur = list-zzbltur .
        total-sayi  = 1 .
        COLLECT total   .
        total-eknam   = list-eknam .
        total-zzbltur = 'ZZZZ' .
        total-sayi  = 1 .
        COLLECT total   .
        gtotal-eknam = text-001 .
        gtotal-zzbltur = list-zzbltur .
        gtotal-sayi  = 1 .
        COLLECT gtotal   .
        gtotal-eknam = text-001 .
        gtotal-zzbltur = 'ZZZZ' .
        gtotal-sayi  = 1 .
        COLLECT gtotal   .
      ENDLOOP      .
      FORMAT COLOR COL_HEADING.
      ULINE AT /1(145).
      WRITE :/
      sy-vline , (15) 'Dosya Sorumlusu' , sy-vline .
      LOOP AT bltur .
        WRITE :(15) bltur-zztanim  , sy-vline .
      ENDLOOP  .
      ULINE AT /1(145).
      FORMAT RESET   .
      total-zzbltur = '0001' .
      MODIFY total TRANSPORTING zzbltur WHERE zzbltur = space .
      gtotal-zzbltur = '0001' .
      MODIFY gtotal TRANSPORTING zzbltur WHERE zzbltur = space .
      SORT total BY eknam .
      LOOP AT total  .
        AT NEW eknam .
          WRITE :/
          sy-vline , (15) total-eknam COLOR COL_HEADING ,
          sy-vline .
          LOOP AT bltur   .
            len = sy-tabix * 18 .
            len = len + 3 .
            CLEAR wa .
            READ TABLE total INTO wa WITH KEY zzbltur = bltur-zzbltur
                                              eknam   = total-eknam .
            WRITE AT len(15) wa-sayi NO-ZERO.
            WRITE sy-vline .
          ENDLOOP    .
        ENDAT      .
      ENDLOOP .
      LOOP AT gtotal  .
        AT NEW eknam .
          FORMAT COLOR COL_TOTAL .
          WRITE :/
          sy-vline , (15) gtotal-eknam ,
          sy-vline .
          LOOP AT bltur   .
            len = sy-tabix * 18 .
            len = len + 3 .
            CLEAR wa .
            READ TABLE gtotal INTO wa WITH KEY zzbltur = bltur-zzbltur
                                               eknam   = text-001    .
            WRITE AT len(15) wa-sayi NO-ZERO.
            WRITE sy-vline .
          ENDLOOP    .
        ENDAT      .
      ENDLOOP .
      ULINE AT /1(145).
      FORMAT RESET .
    ENDFORM.                    " yazdir_ekgrp

    Hi,
    In the function  use the top-of-page event as follows:
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
            EXPORTING
                    I_BYPASSING_BUFFER          =
                    I_BUFFER_ACTIVE             =
                    I_INTERFACE_CHECK           = ' '
                 I_CALLBACK_PROGRAM          = 'ZRPMSLM'
                    I_CALLBACK_PF_STATUS_SET    = ' '
                    I_CALLBACK_USER_COMMAND     = ' '
               <b>  I_CALLBACK_TOP_OF_PAGE      = 'TOP'</b>
    Define whatever to appear in top-of page in a subroutine named TOP.
    Hope this helps.
    Reward if helpful.
    Regards,
    Sipra

  • Re: Dynamic Action is not triggering in LSMW Recording

    Hello All,
    In SAP HRMS personnel actions if i do using LSMW Recording it is not triggering  the dynamic actions.
    Is there any mechanism to Trigger dynamic action in LSMW Recording ?
    How to find the differences in process with and with out recording ?
    Small help is also highly appreciated.
    With Regards,
    Sunil,
    +91-9903695384.

    Yes. Do one  thing. First study the dynamic action. Try to understand what the dynamic action is doing. Is it creating data in other infotype or is it updating some other table. Once it is clear what the dynamic action is doing then you can try to implement the same logic in LSMW. In LSMW there is a provision to add more than one recording and this recording can be called based on some logic..
    Thanks & Regards,
    Sandip

  • OA Adapter not triggering in ESB but if the service is in BPEL its triggere

    Hi All,
    I have used Oracle Applications Adapter and choosen a Business Event in Ebiz API this is ESB. SomeTimes this ESB service is not triggered, when i did this in bpel its working fine can any one answer to this.
    Thanks.

    I suppose this is an ADF question. you might want to paste this @ JDeveloper and ADF in JDev and ADF forum to get speedier response.

  • BSP Terminating event not triggering

    Hello Friends,
    We have a scenario, where a BSP application is triggered from a Workflow, for a certain approval, and after the user clicks on Approve button on the BSP Page, the BSP would write to the workflow container using SAP_WAPI_WRITE_CONTAINER and then we call SWF_WSC_CALLBACK_LAUNCH.
    This used to work, but after an almost Fatal incident with our system, we are not able to get this to work.
    We can see in the workflow log that the container is written, but the terminating event is not triggered, and the workflow doesn't move forward
    Is there a setting that we're missing..??
    Thanks,
    Tat.

    Have you tried:
    call function 'SAP_WAPI_DECISION_COMPLETE'

  • BulkEventResult  Method  Not Triggering in Postcreate Eventhandler

    Hi All,
    My Scenario is like this ...
    When a user is created through Trusted Recon I wrote a PostCreateEventhandler to generate some field in OIM , for this in my Event handler I implemented BulkEventResult Method to trigger while a user is created through trusted Recon but BulkEventResult is not triggering . It's urgent requirement please help me .
    Thanks in Advance..

    order of you eventhandler should be between 1002 to 1008 or just FIRST or LAST as per requirement.
    update order in eventhandler.xml and import it again. make sue you run Purgechache

  • BUS2032 - ALECHANGED event not triggering

    Hi Gurus,
    I have a issue in our dev system. In our system automatic PO creation is configured through Sales order.
    This is working fine in Regression and production systems, but not working in Dev system.
    I have compared the Regression and Dev system and I found that the ALECHANGED event is not triggering in our Dev system.
    I have checked the Item Category of the Sales Order and it is same in both the systems.
    And also I have checked all possible Workflow transaction(SWUE, SWEL, SWU3, SWU0, SWETYPV), everything looks same in both the systems.
    Now I am not sure what to check and where to check.
    Please let me whereelse/whatelse I have to check. Is there any ALE configuration to be checked.
    Thanks for your help in advance.
    Thanks,
    Murali.

    Hi Susan,
    Thanks for the reply.
    I know there could be some config missing but don't know what config it is.
    There are more than 100 users in our Dev Systems, so I can't check the transports. It would be helpful for me if I get specific TCodes or areas so that I can compare my dev system with other systems where it is working fine.
    Thanks,
    Murali.

  • Subtype event not triggering and supertype event triggers twice!!!!!!

    Hi,
    We have created a subtype for object bus2030 and also an event created for that. My workflow should trigger whenever an inquiry is created.
    I've maintained this as triggering event in SWDD and done type linkage is SWE2 and everything looks fine.
    When i simulate or create event the WF is triggered but when create inquiry in VA11 WF does not triggers.
    I've checked SWEL for event trace but no event is triggered at all... Am i missing something... I've done almost everything that i used to do...
    Even synchronized buffer!!! nothing paid me a solution...
    Infact the same was working with 3.1i system but after migration to ECC6 we had to create new WF template for the same Process.
    Now I also see that the supertype bus2030-created event is triggered twice but, obviously no receiver type exists. But the zbus2030 event is not being triggered at all!!!!
    Kindly help me understanding my mistake...
    Regards,
    PB

    Hope you have already set the deletegation in SWO6.
    Now, event dont get triggered automatically, jus because they are defined in object. They have to be explicitly published in thesystem.
    Check for a suitable user exit in your transaction, which makes use of function module to create the event, from that you know how to proceed.
    If you dont find user exit, try other triggering techniques such as change documents, logistics, BTEs... etc.
    regards,
    Sandeep Josyula

  • MouseListener event not triggering sometimes

                  lineTable = atmBean1.getReturnTable();
                  //remove the other columns
                  lineTable.removeColumn(lineTable.getColumnModel().getColumn(21));
                  lineTable.removeColumn(lineTable.getColumnModel().getColumn(20));
                  lineTable.addMouseListener(new MouseAdapter() {
                      public void mouseClicked(MouseEvent e) {
                          setChargesPanel();
        public void setChargesPanel()
                lblConsdData.setText(mainPanel.formatDollar(Double.parseDouble(String.valueOf(atmBean1.tm.getValueAt(lineTable.getSelectedRow(),11)))));
                lblAllowedData.setText(mainPanel.formatDollar(Double.parseDouble(String.valueOf(atmBean1.tm.getValueAt(lineTable.getSelectedRow(),13)))));
                lineChargesPanel.validate();
                lineChargesPanel.repaint();
        }when the JTable is set with some data, i have another GUI which has some labels , when the row is selected the corresponding values are taken from the original table model and is displayes in the JLabels.
    Sometimes, when the mouse is clicked it is not triggering this

    is it just because its Swing GUI.. the JTable rows sometimes get selected but the event is not triggered when the mouse is clicked, maybe the API is not good ???????.

Maybe you are looking for

  • How to use different images in the Table of Contents?

    Hello everyone, I am creating an iBook about Architecture and I would like to have different images for each Chapter in the Table of Contents... But when I add an image it automatically appears on all the other chapters, too. What am i doing wrong?

  • Passing variables to Javascript

    Does anyone know how to pass a variable to javascript in As2? Thank you!

  • SAP notes for error in update of VBEP table

    Hi while iam trying to delete a PO number it does not get deleted.If you could help me in letting me know if i could implememnt SAP notes in this. I receive a message a inbox stating that error in update of table VBEP.

  • Javaee for converged app

    i'm trying to get the glassfish/sailfin [url http://wiki.glassfish.java.net/Wiki.jsp?page=SipClickToDialExample2]clicktodial example working with wlss 3.1 the example includes a simple registration servlet that uses the java transaction api (jta) and

  • Eathernet - power cord = very slow/unusable mac

    I am new to Mac and just purchaed a 13" Mac Book Pro. For some reason if I plug in an ethernet cord without the power plugged in I am not able to navigate the arrow using the touchpad. If I unplug the ethernet or plug in the power it works just fine.