Skip to Content
author's profile photo Former Member
Former Member

top of page in alv

Hi,

can any one help in displaying top of page in alv.

and also i need print some data at end of the list.

Early reply is appreciated.

Add a comment
10|10000 characters needed characters exceeded

Related questions

7 Answers

  • Best Answer
    Posted on Nov 18, 2005 at 12:24 PM

    Hi,

    Here is the sample code.Kindly reward points by clicking the star on the left of reply,if it helps.

    Report  ZDEMO_ALVGRID                                               *
    *&                                                                     *
    *&---------------------------------------------------------------------*
    *&                                                                     *
    *& Example of a simple ALV Grid Report                                 *
    *& ...................................                                 *
    *&                                                                     *
    *& The basic requirement for this demo is to display a number of       *
    *& fields from the EKKO table.                                         *
    *&---------------------------------------------------------------------*
    REPORT  zdemo_alvgrid                 .
    
    TABLES:     ekko.
    
    type-pools: slis.                                 "ALV Declarations
    *Data Declaration
    *----------------
    TYPES: BEGIN OF t_ekko,
      ebeln TYPE ekpo-ebeln,
      ebelp TYPE ekpo-ebelp,
      statu TYPE ekpo-statu,
      aedat TYPE ekpo-aedat,
      matnr TYPE ekpo-matnr,
      menge TYPE ekpo-menge,
      meins TYPE ekpo-meins,
      netpr TYPE ekpo-netpr,
      peinh TYPE ekpo-peinh,
     END OF t_ekko.
    
    DATA: it_ekko TYPE STANDARD TABLE OF t_ekko INITIAL SIZE 0,
          wa_ekko TYPE t_ekko.
    
    *ALV data declarations
    data: fieldcatalog type slis_t_fieldcat_alv with header line,
          gd_tab_group type slis_t_sp_group_alv,
          gd_layout    type slis_layout_alv,
          gd_repid     like sy-repid,
          gt_events     type slis_t_event,
          gd_prntparams type slis_print_alv.
    
    
    ************************************************************************
    *Start-of-selection.
    START-OF-SELECTION.
    
    perform data_retrieval.
    perform build_fieldcatalog.
    perform build_layout.
    perform build_events.
    perform build_print_params.
    perform display_alv_report.
    
    
    *&---------------------------------------------------------------------*
    *&      Form  BUILD_FIELDCATALOG
    *&---------------------------------------------------------------------*
    *       Build Fieldcatalog for ALV Report
    *----------------------------------------------------------------------*
    form build_fieldcatalog.
    
    * There are a number of ways to create a fieldcat. 
    * For the purpose of this example i will build the fieldcatalog manualy
    * by populating the internal table fields individually and then 
    * appending the rows. This method can be the most time consuming but can
    * also allow you  more control of the final product.
    
    * Beware though, you need to ensure that all fields required are
    * populated. When using some of functionality available via ALV, such as
    * total. You may need to provide more information than if you were 
    * simply displaying the result
    *               I.e. Field type may be required in-order for
    *                    the 'TOTAL' function to work.
    
      fieldcatalog-fieldname   = 'EBELN'.
      fieldcatalog-seltext_m   = 'Purchase Order'.
      fieldcatalog-col_pos     = 0.
      fieldcatalog-outputlen   = 10.
      fieldcatalog-emphasize   = 'X'.
      fieldcatalog-key         = 'X'.
    *  fieldcatalog-do_sum      = 'X'.
    *  fieldcatalog-no_zero     = 'X'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'EBELP'.
      fieldcatalog-seltext_m   = 'PO Item'.
      fieldcatalog-col_pos     = 1.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'STATU'.
      fieldcatalog-seltext_m   = 'Status'.
      fieldcatalog-col_pos     = 2.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'AEDAT'.
      fieldcatalog-seltext_m   = 'Item change date'.
      fieldcatalog-col_pos     = 3.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'MATNR'.
      fieldcatalog-seltext_m   = 'Material Number'.
      fieldcatalog-col_pos     = 4.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'MENGE'.
      fieldcatalog-seltext_m   = 'PO quantity'.
      fieldcatalog-col_pos     = 5.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'MEINS'.
      fieldcatalog-seltext_m   = 'Order Unit'.
      fieldcatalog-col_pos     = 6.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'NETPR'.
      fieldcatalog-seltext_m   = 'Net Price'.
      fieldcatalog-col_pos     = 7.
      fieldcatalog-outputlen   = 15.
      fieldcatalog-datatype     = 'CURR'.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    
      fieldcatalog-fieldname   = 'PEINH'.
      fieldcatalog-seltext_m   = 'Price Unit'.
      fieldcatalog-col_pos     = 8.
      append fieldcatalog to fieldcatalog.
      clear  fieldcatalog.
    endform.                    " BUILD_FIELDCATALOG
    
    
    *&---------------------------------------------------------------------*
    *&      Form  BUILD_LAYOUT
    *&---------------------------------------------------------------------*
    *       Build layout for ALV grid report
    *----------------------------------------------------------------------*
    form build_layout.
      gd_layout-no_input          = 'X'.
      gd_layout-colwidth_optimize = 'X'.
      gd_layout-totals_text       = 'Totals'(201).
    *  gd_layout-totals_only        = 'X'.
    *  gd_layout-f2code            = 'DISP'.  "Sets fcode for when double
    *                                         "click(press f2)
    *  gd_layout-zebra             = 'X'.
    *  gd_layout-group_change_edit = 'X'.
    *  gd_layout-header_text       = 'helllllo'.
    endform.                    " BUILD_LAYOUT
    
    
    *&---------------------------------------------------------------------*
    *&      Form  DISPLAY_ALV_REPORT
    *&---------------------------------------------------------------------*
    *       Display report using ALV grid
    *----------------------------------------------------------------------*
    form display_alv_report.
      gd_repid = sy-repid.
      call function 'REUSE_ALV_GRID_DISPLAY'
           exporting
                i_callback_program      = gd_repid
                i_callback_top_of_page   = 'TOP-OF-PAGE'  "see FORM
                i_callback_user_command = 'USER_COMMAND'
    *            i_grid_title           = outtext
                is_layout               = gd_layout
                it_fieldcat             = fieldcatalog[]
    *            it_special_groups       = gd_tabgroup
                it_events               = gt_events  
                is_print                = gd_prntparams  
                i_save                  = 'X'
    *            is_variant              = z_template
           tables
                t_outtab                = it_ekko
           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_REPORT
    
    
    *&---------------------------------------------------------------------*
    *&      Form  DATA_RETRIEVAL
    *&---------------------------------------------------------------------*
    *       Retrieve data form EKPO table and populate itab it_ekko
    *----------------------------------------------------------------------*
    form data_retrieval.
    
    select ebeln ebelp statu aedat matnr menge meins netpr peinh
     up to 10 rows
      from ekpo
      into table it_ekko.
    endform.                    " DATA_RETRIEVAL
    
    
    *-------------------------------------------------------------------*
    * Form  TOP-OF-PAGE                                                 *
    *-------------------------------------------------------------------*
    * ALV Report Header                                                 *
    *-------------------------------------------------------------------*
    Form top-of-page.
    *ALV Header declarations
    data: t_header type slis_t_listheader,
          wa_header type slis_listheader,
          t_line like wa_header-info,
          ld_lines type i,
          ld_linesc(10) type c.
    
    * Title
      wa_header-typ  = 'H'.
      wa_header-info = 'EKKO Table Report'.
      append wa_header to t_header.
      clear wa_header.
    
    * Date
      wa_header-typ  = 'S'.
      wa_header-key = 'Date: '.
      CONCATENATE  sy-datum+6(2) '.'
                   sy-datum+4(2) '.'
                   sy-datum(4) INTO wa_header-info.   "todays date
      append wa_header to t_header.
      clear: wa_header.
    
    * Total No. of Records Selected
      describe table it_ekko lines ld_lines.
      ld_linesc = ld_lines.
      concatenate 'Total No. of Records Selected: ' ld_linesc
                        into t_line separated by space.
      wa_header-typ  = 'A'.
      wa_header-info = t_line.
      append wa_header to t_header.
      clear: wa_header, t_line.
    
      call function 'REUSE_ALV_COMMENTARY_WRITE'
           exporting
                it_list_commentary = t_header.
    *            i_logo             = 'Z_LOGO'.
    endform.
    
    
    *------------------------------------------------------------------*
    *       FORM USER_COMMAND                                          *
    *------------------------------------------------------------------*
    *       --> R_UCOMM                                                *
    *       --> RS_SELFIELD                                            *
    *------------------------------------------------------------------*
    FORM user_command USING r_ucomm LIKE sy-ucomm
                      rs_selfield TYPE slis_selfield.
    
    * Check function code
      CASE r_ucomm.
        WHEN '&IC1'.
    *   Check field clicked on within ALVgrid report
        IF rs_selfield-fieldname = 'EBELN'.
    *     Read data table, using index of row user clicked on
          READ TABLE it_ekko INTO wa_ekko INDEX rs_selfield-tabindex.
    *     Set parameter ID for transaction screen field
          SET PARAMETER ID 'BES' FIELD wa_ekko-ebeln.
    *     Sxecute transaction ME23N, and skip initial data entry screen
          CALL TRANSACTION 'ME23N' AND SKIP FIRST SCREEN.
        ENDIF.
      ENDCASE.
    ENDFORM.
    
    
    *&---------------------------------------------------------------------*
    *&      Form  BUILD_EVENTS
    *&---------------------------------------------------------------------*
    *       Build events table
    *----------------------------------------------------------------------*
    form build_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_end_of_page
                               into ls_event.
      if sy-subrc = 0.
        move 'END_OF_PAGE' to ls_event-form.
        append ls_event to gt_events.
      endif.
    
        read table gt_events with key name =  slis_ev_end_of_list
                               into ls_event.
      if sy-subrc = 0.
        move 'END_OF_LIST' to ls_event-form.
        append ls_event to gt_events.
      endif.
    endform.                    " BUILD_EVENTS
    
    
    *&---------------------------------------------------------------------*
    *&      Form  BUILD_PRINT_PARAMS
    *&---------------------------------------------------------------------*
    *       Setup print parameters
    *----------------------------------------------------------------------*
    form build_print_params.
      gd_prntparams-reserve_lines = '3'.   "Lines reserved for footer
      gd_prntparams-no_coverpage = 'X'.
    endform.                    " BUILD_PRINT_PARAMS
    
    
    *&---------------------------------------------------------------------*
    *&      Form  END_OF_PAGE
    *&---------------------------------------------------------------------*
    form END_OF_PAGE.
      data: listwidth type i,
            ld_pagepos(10) type c,
            ld_page(10)    type c.
    
      write: sy-uline(50).
      skip.
      write:/40 'Page:', sy-pagno .
    endform.
    
    
    *&---------------------------------------------------------------------*
    *&      Form  END_OF_LIST
    *&---------------------------------------------------------------------*
    form END_OF_LIST.
      data: listwidth type i,
            ld_pagepos(10) type c,
            ld_page(10)    type c.
    
      skip.
      write:/40 'Page:', sy-pagno .
    endform.

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Nov 18, 2005 at 12:20 PM

    Hi,

    Pease see the demo program ERGP2130, BALVHD01.

    Thanks,

    Ramakrishna

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Nov 18, 2005 at 12:21 PM

    Hi There,

    1. Build the events table.

    2. Modify the events table.

    Code snippet:

        • IT_EVENTS is of type slis_t_event

        • Build Events

        CALL FUNCTION 'REUSE_ALV_EVENTS_GET'

        EXPORTING

        I_LIST_TYPE = 0

        IMPORTING

        ET_EVENTS = IT_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.

                • Modify events.

              • TOP-OF-PAGE EVENT.

              • READ TABLE IT_EVENTS INTO WA_EVENTS

                WITH KEY NAME = SLIS_EV_TOP_OF_PAGE.

                WA_EVENTS-FORM = 'SUB_TOP_OF_PAGE'.

                MODIFY IT_EVENTS FROM WA_EVENTS INDEX SY-TABIX.

                  • PF-STATUS.

                  READ TABLE IT_EVENTS INTO WA_EVENTS

                  WITH KEY NAME = SLIS_EV_END_OF_PAGE.

                  WA_EVENTS-FORM = 'END_OF_PAGE'.

                  MODIFY IT_EVENTS FROM WA_EVENTS INDEX SY-TABIX.

                  FORM SUB_TOP_OF_PAGE.

                          • Creating the heading for the list.

                          WRITE: 'Heading'

                          ENDFORM. " SUB_TOP_OF_PA

                          FORM END_OF_PAGE.

                                  • Creating the footer for the list.

                                  WRITE: 'footer'

                                  ENDFORM.

                                  Naveen.

                                Add a comment
                                10|10000 characters needed characters exceeded

                              • author's profile photo Former Member
                                Former Member
                                Posted on Nov 18, 2005 at 12:22 PM

                                Hi Syed,

                                use events table for any event top of page or end of page..

                                use the following code

                                *--to hold all the events

                                data: t_events TYPE slis_t_event,

                                x_events LIKE LINE OF t_events,

                                *--build table for events.

                                x_events-form = 'TOP_OF_LIST'.

                                x_events-name = slis_ev_top_of_list.

                                APPEND x_events TO t_events.

                                &----


                                *& Form top_of_list

                                &----


                                • To display heading

                                &----


                                FORM top_of_list.

                                FORMAT RESET.

                                FORMAT INTENSIFIED ON.

                                SKIP 1.

                                WRITE: 30 'Over/Short Balances to Allegro'(h01),

                                /30 '----


                                '.

                                SKIP 1.

                                FORMAT RESET.

                                ENDFORM. "top_of_list

                                Add a comment
                                10|10000 characters needed characters exceeded

                              • author's profile photo Former Member
                                Former Member
                                Posted on Nov 18, 2005 at 12:36 PM

                                Hi please see the following code.

                                report zus_alv_demo_grid .

                                tables: ekko.

                                type-pools: slis.

                                types: begin of t_ekko,

                                ebeln type ekpo-ebeln,

                                ebelp type ekpo-ebelp,

                                statu type ekpo-statu,

                                aedat type ekpo-aedat,

                                matnr type ekpo-matnr,

                                menge type ekpo-menge,

                                meins type ekpo-meins,

                                netpr type ekpo-netpr,

                                peinh type ekpo-peinh,

                                line_color(4) type c, "Used to store row color

                                end of t_ekko.

                                data: it_ekko type standard table of t_ekko initial size 0,

                                wa_ekko type t_ekko.

                                *ALV data declarations

                                data: fieldcatalog type slis_t_fieldcat_alv with header line,

                                gd_tab_group type slis_t_sp_group_alv,

                                gd_layout type slis_layout_alv,

                                gd_repid like sy-repid.

                                • Data declaration for EVENT and PRINT PARAMETER.

                                data: gt_events type slis_t_event,

                                gd_prntparams type slis_print_alv.

                                • data declaration for sorting.

                                data : it_sortcat type slis_sortinfo_alv occurs 1,

                                wa_sort like line of it_sortcat.

                                data : i_list_comments type slis_t_listheader.

                                start-of-selection.

                                perform data_retrieval.

                                • perform user_command.

                                perform build_fieldcatalog.

                                perform build_layout.

                                perform build_events.

                                perform build_print_params.

                                perform build_sortcat.

                                perform display_alv_report.

                                end-of-selection.

                                *TOP-OF-PAGE.

                                • PERFORM top-of-page.

                                end-of-page.

                                *&----


                                *& Form build_fieldcatalog

                                *&----


                                • text

                                *----


                                • --> p1 text

                                • <-- p2 text

                                *----


                                form build_fieldcatalog.

                                fieldcatalog-fieldname = 'EBELN'.

                                fieldcatalog-seltext_m = 'Purchase Order'.

                                fieldcatalog-col_pos = 0.

                                fieldcatalog-outputlen = 10.

                                fieldcatalog-emphasize = 'X'.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'EBELP'.

                                fieldcatalog-seltext_m = 'PO Item'.

                                fieldcatalog-col_pos = 1.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'STATU'.

                                fieldcatalog-seltext_m = 'Status'.

                                fieldcatalog-col_pos = 2.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'AEDAT'.

                                fieldcatalog-seltext_m = 'Item change date'.

                                fieldcatalog-col_pos = 3.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'MATNR'.

                                fieldcatalog-seltext_m = 'Material Number'.

                                fieldcatalog-col_pos = 4.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'MENGE'.

                                fieldcatalog-seltext_m = 'PO quantity'.

                                fieldcatalog-col_pos = 5.

                                fieldcatalog-do_sum = 'X'.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'MEINS'.

                                fieldcatalog-seltext_m = 'Order Unit'.

                                fieldcatalog-col_pos = 6.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'NETPR'.

                                fieldcatalog-seltext_m = 'Net Price'.

                                fieldcatalog-col_pos = 7.

                                fieldcatalog-outputlen = 15.

                                fieldcatalog-datatype = 'CURR'.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                fieldcatalog-fieldname = 'PEINH'.

                                fieldcatalog-seltext_m = 'Price Unit'.

                                fieldcatalog-col_pos = 8.

                                append fieldcatalog to fieldcatalog.

                                clear fieldcatalog.

                                endform. " build_fieldcatalog

                                *&----


                                *& Form build_layout

                                *&----


                                • text

                                *----


                                • --> p1 text

                                • <-- p2 text

                                *----


                                form build_layout.

                                gd_layout-no_input = 'X'.

                                gd_layout-colwidth_optimize = 'X'.

                                gd_layout-totals_text = 'Totals'(201).

                                • Set layout field for row attributes(i.e. color)

                                gd_layout-info_fieldname = 'LINE_COLOR'.

                                • gd_layout-totals_only = 'X'.

                                • gd_layout-f2code = 'DISP'. "Sets fcode for

                                *when double

                                • "click(press f2)*

                                • gd_layout-group_change_edit = 'X'.

                                • gd_layout-header_text = 'helllllo'.

                                endform. " build_layout

                                *&----


                                *& Form data_retrieval

                                *&----


                                • text

                                *----


                                • --> p1 text

                                • <-- p2 text

                                *----


                                form data_retrieval.

                                data: ld_color(1) type c.

                                select ebeln ebelp statu aedat matnr menge meins netpr

                                peinh from ekpo into table it_ekko.

                                *Populate field with color attributes

                                loop at it_ekko into wa_ekko.

                                • Populate color variable with colour properties

                                • Char 1 = C (This is a color property)

                                • Char 2 = 3 (Color codes: 1 - 7)

                                • Char 3 = Intensified on/off ( 1 or 0 )

                                • Char 4 = Inverse display on/off ( 1 or 0 )

                                • i.e. wa_ekko-line_color = 'C410'

                                ld_color = ld_color + 1.

                                • Only 7 colours so need to reset color value

                                if ld_color = 8.

                                ld_color = 1.

                                endif.

                                concatenate 'C' ld_color '10' into wa_ekko-line_color.

                                • wa_ekko-line_color = 'C410'.

                                modify it_ekko from wa_ekko.

                                endloop.

                                endform. " data_retrieval

                                *&----


                                *& Form display_alv_report

                                *&----


                                • text

                                *----


                                • --> p1 text

                                • <-- p2 text

                                *----


                                form display_alv_report.

                                gd_repid = sy-repid.

                                call function 'REUSE_ALV_GRID_DISPLAY'

                                exporting

                                i_callback_program = gd_repid

                                is_layout = gd_layout

                                i_callback_top_of_page = 'TOP-OF-PAGE'

                                i_callback_user_command = 'USER_COMMAND'

                                i_callback_pf_status_set = 'SET_PF_STATUS'

                                it_event = gt_events

                                is_print = gd_prntparams

                                it_fieldcat = fieldcatalog[]

                                it_sort = it_sortcat

                                i_save = 'X'

                                tables

                                t_outtab = it_ekko

                                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_REPORT

                                *&----


                                *& Form user_command

                                *&----


                                • text

                                *----


                                • --> p1 text

                                • <-- p2 text

                                *----


                                *&----


                                *& Form top-of-page

                                *&----


                                • text

                                *----


                                • --> p1 text

                                • <-- p2 text

                                *----


                                form top-of-page.

                                *ALV Header declarations

                                data: t_header type slis_t_listheader,

                                wa_header type slis_listheader,

                                t_line like wa_header-info,

                                ld_lines type i,

                                ld_linesc(10) type c.

                                • Title

                                wa_header-typ = 'H'.

                                wa_header-info = 'EKKO Table Report'.

                                append wa_header to t_header.

                                clear wa_header.

                                • Date

                                wa_header-typ = 'S'.

                                wa_header-key = 'Date: '.

                                concatenate sy-datum+6(2) '.'

                                sy-datum+4(2) '.'

                                sy-datum(4) into wa_header-info."todays date

                                append wa_header to t_header.

                                clear: wa_header.

                                • Total No. of Records Selected

                                describe table it_ekko lines ld_lines.

                                ld_linesc = ld_lines.

                                concatenate 'Total No. of Records Selected: ' ld_linesc

                                into t_line separated by space.

                                wa_header-typ = 'A'.

                                wa_header-info = t_line.

                                append wa_header to t_header.

                                clear: wa_header, t_line.

                                call function 'REUSE_ALV_COMMENTARY_WRITE'

                                exporting

                                it_list_commentary = t_header

                                i_logo = 'GANESH_LOGO'.

                                endform. " top-of-page

                                ----


                                • FORM user_command *

                                ----


                                • ........ *

                                ----


                                • --> R_UCOMM *

                                • --> RS_SELFIELD *

                                ----


                                form user_command using r_ucomm like sy-ucomm

                                rs_selfield type slis_selfield.

                                case r_ucomm.

                                when '&IC1'.

                                if rs_selfield-fieldname = 'EBELN'.

                                read table it_ekko into wa_ekko index rs_selfield-tabindex.

                                set parameter id 'BES' field wa_ekko-ebeln.

                                call transaction 'ME23N' and skip first screen.

                                endif.

                                when 'ULHAS'.

                                if rs_selfield-fieldname = 'EBELN'.

                                read table it_ekko into wa_ekko index rs_selfield-tabindex.

                                set parameter id 'BES' field wa_ekko-ebeln.

                                call transaction 'ME23N' and skip first screen.

                                endif.

                                endcase.

                                endform.

                                ----


                                • FORM set_pf_status *

                                ----


                                • ........ *

                                ----


                                • --> RT_EXTAB *

                                ----


                                form set_pf_status using rt_extab type slis_t_extab.

                                set pf-status 'ZNEWSTATUS'.

                                endform.

                                &----


                                *& Form build_events

                                &----


                                • text

                                ----


                                • --> p1 text

                                • <-- p2 text

                                ----


                                form build_events.

                                data: ls_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 <> 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_end_of_page

                                into ls_event.

                                if sy-subrc = 0.

                                move 'END_OF_PAGE' to ls_event-form.

                                append ls_event to gt_events.

                                endif.

                                read table gt_events with key name = slis_ev_end_of_list

                                into ls_event.

                                if sy-subrc = 0.

                                move 'END_OF_LIST' to ls_event-form.

                                append ls_event to gt_events.

                                endif.

                                endform. " build_events

                                &----


                                *& Form build_print_params

                                &----


                                • text

                                ----


                                • --> p1 text

                                • <-- p2 text

                                ----


                                form build_print_params.

                                gd_prntparams-reserve_lines = '3'. "Lines reserved for footer

                                gd_prntparams-no_coverpage = 'X'.

                                endform. " build_print_params

                                ----


                                • FORM END_OF_PAGE *

                                ----


                                • ........ *

                                ----


                                form end_of_page.

                                data: listwidth type i,

                                ld_pagepos(10) type c,

                                ld_page(10) type c.

                                write: sy-uline(50).

                                skip. write:/40 'Page:', sy-pagno .

                                endform.

                                ----


                                • FORM END_OF_LIST *

                                ----


                                • ........ *

                                ----


                                form end_of_list.

                                data: listwidth type i,

                                ld_pagepos(10) type c,

                                ld_page(10) type c.

                                skip. write:/40 'Page:', sy-pagno .

                                endform.

                                &----


                                *& Form build_sortcat

                                &----


                                • text

                                ----


                                • --> p1 text

                                • <-- p2 text

                                ----


                                form build_sortcat.

                                wa_sort-spos = 1.

                                wa_sort-fieldname = 'EBELN'.

                                append wa_sort to it_sortcat.

                                wa_sort-spos = 2.

                                wa_sort-fieldname = 'EBELP'.

                                append wa_sort to it_sortcat.

                                endform. " build_sortcat

                                Satish

                                Add a comment
                                10|10000 characters needed characters exceeded

                              • author's profile photo Former Member
                                Former Member
                                Posted on Nov 18, 2005 at 12:40 PM

                                Hi syed,

                                check this link...

                                http://www.sapdevelopment.co.uk/reporting/alv/alvgrid_rephead.htm

                                hope this helps you.

                                regards,

                                venu.

                                Add a comment
                                10|10000 characters needed characters exceeded

                              • author's profile photo Former Member
                                Former Member
                                Posted on Nov 18, 2005 at 05:00 PM

                                Hi Jayanthi and Naveen,

                                Thanks for the help.

                                Awarded the points.

                                Add a comment
                                10|10000 characters needed characters exceeded

                              • Before answering

                                You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
                                You must be Logged in to submit an answer.

                                Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.