REUSE_ALV_GRID_DISPLAY export to exel

Hi!
I'm displaying numbers into my ALV, that works perfect but when I export the ALV to Excel with the standard button (CTRL + SHIF + F7) I get the Excel sheet but the numbers are not being displayed fine.
the scenario.
I have a column of 20 char
012345678890123456789
and the number is much more bigger than 20
Is being display as
                                                                                20
instead of
                                20
so I have to make the collumns bigger to se the data and does not look good.
Any idea?
My field size is 20

Hi Guys!.
Sorry but didn't work!..
The thing is that I have to reduce the field lenght not do it bigger.
what I tried to say before is that i'm getting
___________________________________________________________________________20
instead of
20
or
__________20
thanks.

Similar Messages

  • Imnot sure if I am in the right please for this..I have OSX 10.9 ..I produce  weekly invoice in numbers which I export to Exel . Since recent updates I find that the file extn is now XLSX and when I open it the cumber content has changed! Can anyone help

    I use 'numbers" to create an invoice which I previously exported(prior to recent updating) to Exel to enable me to send it to my employer. When I try to do this now I get an file extn XLSX and the number content I placed on the invoice is different ( as if the file is corrupted)...can anyone help please ?

    I use 'numbers" to create an invoice which I previously exported(prior to recent updating) to Exel to enable me to send it to my employer. When I try to do this now I get an file extn XLSX and the number content I placed on the invoice is different ( as if the file is corrupted)...can anyone help please ?

  • REUSe_ALV_GRID_DISPLAY export to excel

    Hi,
    When the ALV output is export to excel the order of the columns changes in excel.
    The columns with same header comes adjacently.
    For eg: ALV output has the below columns  in the order
    "NAME1", "NAME2", "NAME3", "NAME2" .
    When I export it to excel, the order becomes
    "NAME1", "NAME2" , "NAME2", "NAME3".
    How can I get the excel also in the same order as the ALV ouptut?
    Regards,
    Soumya.

    hi,
    you ca do it by using function module: 'GUI_DOWNLOAD'
    DATA: l_file TYPE string.
      l_file = p_file.
      CALL FUNCTION 'GUI_DOWNLOAD'
        EXPORTING
          filename                = l_file
          filetype                = 'ASC'
        TABLES
          data_tab                = t_itab1
        EXCEPTIONS
          file_write_error        = 1
          no_batch                = 2
          gui_refuse_filetransfer = 3
          invalid_type            = 4
          no_authority            = 5
          unknown_error           = 6.
      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.                    " download
    regards
    rahul

  • Export to exell-Exchange rate details

    hi,
    Is there any possibility that i can Export the exchange rate details in a excel report? (S_BCE_68000174 - Update Exchange Rate) or just let me know any other report or table that i get same information and export to excel 
    thanks
    Gayani

    Dear,
    Yes use S_BCE_68000174  header menuTable view and Print. Then in next screen go to ListExport --spreadsheet.or press CRT + Shift + F7.
    Regards,
    R.Brahmankar

  • How to use exporting prameter IT_FILTER in FM 'REUSE_ALV_GRID_DISPLAY'

    Hi ALL,
    Can u plz tell me what are the fields which i must pass for using IT_FILTER in FM 'REUSE_ALV_GRID_DISPLAY'.
    I am passing
    DATA:WT_TAB TYPE SLIS_T_FILTER_ALV ,
    ws_fieldcat1 TYPE SLIS_FILTER_ALV.
    ws_fieldcat1-fieldname = 'SHIP_TO'.
    ws_fieldcat1-tabname = 'WT_DATA'.
    ws_fieldcat1-convexit = 'ALPHA'.
    APPEND ws_fieldcat1 TO WT_TAB.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
    i_buffer_active = wc_x
    i_callback_program = wv_repid
    is_layout = ws_layout
    it_fieldcat = wt_fieldcat
    i_save = 'A'
    it_events = wt_event
    IT_FILTER = WT_TAB
    TABLES
    t_outtab = wt_data
    EXCEPTIONS
    program_error = 1
    OTHERS = 2.
    but it is giving dump.
    i think we have to pass more fields while creating  WT_TAB.
    Plz suggest.
    Thanks

    Hi Mahesh,
    Below detail is from the documentation of the 'REUSE_ALV_GRID_DISPLAY'. Check the last point.
    Filter criteria for first list output
    Description: Table with filter criteria
    Using this parameter, you can pass on filter criteria resulting from explicitly loading a display variant in advance, for example, to list output.
    This table should never be set up 'manually'.
    I can suggest use FM 'REUSE_ALV_GRID_LAYOUT_INFO_GET' and check the format of the filter table.
    Hope this will be useful to you!
    Thanks,
    Raj

  • Unable to export to excel from ALV

    Hi,
    i was trying to display information in an ALV report and it shows up properly. however, when i click on the excel icon it is not populating the data in the spread sheet though the excel window shows up in place of the report.
    any suggestions will be rewarded. i attached the code below
    Regards,
    ravi.
                F O R M    F I L L _ A L V _ D A T A                    
    FORM fill_alv_data.
      DATA: ls_fieldcat TYPE slis_fieldcat_alv,
            ls_sort TYPE slis_sortinfo_alv.
      CLEAR ls_fieldcat.
    field catalog information
    Purchase order number
      ls_fieldcat-fieldname = 'EBELN'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'P.O NUMBER'.
      ls_fieldcat-key = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    P.O line item
      ls_fieldcat-fieldname = 'EBELP'.
      ls_fieldcat-datatype  = 'NUMC'.
      ls_fieldcat-seltext_m  = 'P.O Line item'.
      ls_fieldcat-key = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Doc. condition number
      ls_fieldcat-fieldname    = 'KNUMV'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'doc. conditon no'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    P.O date
      ls_fieldcat-fieldname    = 'BEDAT'.
      ls_fieldcat-datatype  = 'DATS'.
       ls_fieldcat-seltext_m  = 'P.O date'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    purchasing org
      ls_fieldcat-fieldname    = 'EKORG'.
      ls_fieldcat-datatype  = 'C'.
       ls_fieldcat-seltext_m  = 'Purchasing org.'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    purchasing group
      ls_fieldcat-fieldname    = 'EKGRP'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'Purchasing group'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    vendor number
      ls_fieldcat-fieldname    = 'LIFNR'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'Vendor number'.
    ls_sort-subtot    = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    company code
      ls_fieldcat-fieldname    = 'BUKRS'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'Company code'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    short text
      ls_fieldcat-fieldname    = 'TXZ01'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'Text'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Material group
      ls_fieldcat-fieldname    = 'MATKL'.
      ls_fieldcat-datatype  = 'C'.
      ls_fieldcat-seltext_m  = 'Material group'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    order quantity
      ls_fieldcat-fieldname    = 'MENGE'.
      ls_fieldcat-datatype  = 'QUAN'.
      ls_fieldcat-seltext_m  = 'order quantity'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    order unit
      ls_fieldcat-fieldname    = 'MEINS'.
      ls_fieldcat-datatype  = 'UNIT'.
      ls_fieldcat-seltext_m  = 'order unit'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Gross amount
      ls_fieldcat-fieldname     = 'BRTWR'.
      ls_fieldcat-datatype      = 'CURR'.
      ls_fieldcat-outputlen = '15'.
      ls_fieldcat-seltext_m  = 'Gross amount'.
      ls_fieldcat-do_sum = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Discount Condition
      ls_fieldcat-fieldname     = 'KSCHL'.
      ls_fieldcat-datatype      = 'C'.
      ls_fieldcat-do_sum = 'X'.
      ls_fieldcat-seltext_m  = 'Discount Cond.'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Discount amount
      ls_fieldcat-fieldname     = 'DISV'.
      ls_fieldcat-datatype      = 'CURR'.
      ls_fieldcat-outputlen = '15'.
      ls_fieldcat-do_sum = 'X'.
      ls_fieldcat-seltext_m  = 'Discount amount'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Net amount
      ls_fieldcat-fieldname     = 'NETWR'.
      ls_fieldcat-datatype      = 'CURR'.
      ls_fieldcat-outputlen = '15'.
      ls_fieldcat-seltext_m  = 'Net amount'.
      ls_fieldcat-do_sum = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Tax code
      ls_fieldcat-fieldname     = 'MWSKZ'.
      ls_fieldcat-datatype      = 'C'.
      ls_fieldcat-seltext_m  = 'Tax code'.
      ls_fieldcat-do_sum = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Tax amount
      ls_fieldcat-fieldname     = 'NAVNW'.
      ls_fieldcat-datatype      = 'CURR'.
      ls_fieldcat-outputlen = '15'.
      ls_fieldcat-seltext_m  = 'Tax amount'.
      ls_fieldcat-do_sum = 'X'.
      APPEND ls_fieldcat TO gt_fieldcat.
      CLEAR ls_fieldcat.
    Striped pattern
      gs_layout-zebra = 'X'.
    sort by p.o number
      ls_sort-fieldname = 'LIFNR'.
      ls_sort-spos      = 1.
      ls_sort-up        = 'X'.
      ls_sort-subtot    = 'X'.
      APPEND ls_sort TO gt_sort.
    ENDFORM.                    "fill_alv_data
                F O R M   A L V _ D I S P L A Y                         
    FORM alv_display.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          I_CALLBACK_PROGRAM = 'zreport'
          is_layout          = gs_layout
          it_fieldcat        = gt_fieldcat[]
          it_sort            = gt_sort
          it_events          = gt_events[]
        TABLES
          t_outtab           = T_PO.
      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.                    "alv_display

    Hi Ravi,
    Normally we dont have to write any code for getting data in ALV's Excel inplace View. It is taken by SAP itself.
    Any way waht we can try is just comment
       <b>it_events = gt_events[]</b>
    and test whether the data is getting populated in excel..

  • ALV Grid Excel in Place using REUSE_ALV_GRID_DISPLAY

    I have a ALV grid displayed in a report and i have a bunch of layouts created by various users and the layouts works fine when selected. But when I use 'Excel'  (excel-in-place) button to export the grid into an excel sheet, the order of the columns are all jumbled up and not in sync with the ALV grid layout on the screen. However, when I use export to local file>excel option, the order of columns are in sync with the layout. Can any one explain why this is happening and how I can fix it ? Is there any OSS note or something that I need to apply ?
    PS : I am using REUSE_ALV_GRID_DISPLAY to display the report and I am building the fieldcatalog manually
    Eg :
    CLEAR r_fieldcatalog.
      MOVE 'TB_OUTPUT'  TO r_fieldcatalog-tabname.
      MOVE 'BUKRS'      TO r_fieldcatalog-fieldname.
      MOVE 'VBAK'       TO r_fieldcatalog-ref_tabname.
      MOVE 'BUKRS_VF'   TO r_fieldcatalog-ref_fieldname.
      MOVE text-f01     TO r_fieldcatalog-seltext_s.
      MOVE text-f01     TO r_fieldcatalog-seltext_m.
      MOVE text-f01     TO r_fieldcatalog-seltext_l.
      add '1' to lv_col_pos .
      move lv_col_pos to r_fieldcatalog-col_pos .
      APPEND r_fieldcatalog TO tc_fieldcatalog.
      CLEAR r_fieldcatalog.
      MOVE 'TB_OUTPUT'  TO r_fieldcatalog-tabname.
      MOVE 'VKORG'      TO r_fieldcatalog-fieldname.
      MOVE 'VBAK'       TO r_fieldcatalog-ref_tabname.
      MOVE 'VKORG'      TO r_fieldcatalog-ref_fieldname.
      MOVE text-f02     TO r_fieldcatalog-seltext_s.
      MOVE text-f02     TO r_fieldcatalog-seltext_m.
      MOVE text-f02     TO r_fieldcatalog-seltext_l.
      add '1' to lv_col_pos .
      move lv_col_pos to r_fieldcatalog-col_pos .
      APPEND r_fieldcatalog     TO tc_fieldcatalog.
    Thanks in advance,
    Shareen

      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_pf_status_set = 'ALV_PF_STATUS'
          i_callback_program       = sy-repid
          is_layout                = gs_layout
          it_fieldcat              = gt_fieldcat[]
          i_default                = ' '
          i_save                   = g_save
        TABLES
          t_outtab                 = it_tab
        EXCEPTIONS
          program_error            = 1
          OTHERS                   = 2.
    and beneath this just put a form.as its shown.
    FORM alv_pf_status USING l_alv_excl TYPE STANDARD TABLE.
      SET PF-STATUS 'STANDARD_FULLSCREEN' "excluding lt_extab
                    OF PROGRAM 'SAPLSETB'.
    ENDFORM.                    "alv_pf_status

  • Total in REUSE_ALV_GRID_DISPLAY

    Hi,
    If we CHECK total option in REUSE_ALV_GRID_DISPLAY we get a total of numeric value with yellow color at the bottom.
    Requirement:
    Let say I have 3 line item records in the display, with 20 fields and one amount field. So I get the total of the amount field. Apart from that I want the Total number of LINE ITEMS to get displayed on that line. Is that possible . How?
    Thanks in Advance.

    Just call Reuse_alv_list_display instead of gris. Rest of functionality is same.
    *& 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.
    *Start-of-selection.
    START-OF-SELECTION.
    perform data_retrieval.
    perform build_fieldcatalog.
    perform build_layout.
    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-do_sum      = 'X'        "Display column total
      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_XEVENTS
                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

  • List- Export- Spreadsheet option disabled in ALV Report

    Hi,
    In one of the ALV Report the option List->Export->Spreadsheet option is disabled. How to enable that option?
    I am calling the REUSE_ALV_GRID_DISPLAY Function module with the following parameters
        CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
          EXPORTING
            i_callback_program = w_repid
            it_fieldcat        = i_fieldtab[]
            is_layout          = ls_layout
            it_events          = i_events[]
            i_save             = 'A'
            is_variant         = i_variant
          TABLES
            t_outtab           = it_display
          EXCEPTIONS
            program_error      = 1
            OTHERS             = 2.
    This is the problem with only this report. So I believe it is not due to authorization.
    Regards,
    Anusha

    Hi Anusha,
    This link should help you. You just need to change the deep structure.
    [Export Option is Grayed out in ALV Grid Display;
    You already figured it out
    Edited by: sap_wiz on Jul 6, 2011 4:42 PM

  • Button in ALV toolbar with REUSE_ALV_GRID_DISPLAY

    Hello friends,
    I am Displaying ALV using REUSE_ALV_GRID_IDSPLAY. i need to add a button in grid toolbar.
    i am doing it by adding a new ZSTATUS in  SET PF_STATUS. but the problem is that it is removing the standard buttons.
    i want to add button without removing the standard butttons.
    Please help.
    thanx in advance.
    Krishan Kumar

    hai friends.......
                       i had tried to add custom button to the reuse_alv_grid_display.please send  the coding...
    REPORT  ZHAJI_SAMPLE.
    tables:lfa1.
    TYPE-POOLS : slis.
    SELECT-OPTIONS: lifnr FOR lfa1-lifnr.
    types:begin of fs,
          flag type c,
          lifnr type lfa1-lifnr,
          land1 type lfa1-land1,
          name1 type lfa1-name1,
          end of fs.
    data: itab type table of fs,
          wa type fs.
    data: fcat type slis_t_fieldcat_alv,
          fcat1 type slis_fieldcat_alv.
    data: rt_extab type slis_t_extab.
    *CONSTANTS : c_check(1) VALUE 'X'.
    select lifnr land1 name1 from lfa1 into corresponding FIELDS OF table
    itab where lifnr IN
    lifnr.
    perform sub.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_INTERFACE_CHECK                 = ' '
      I_BYPASSING_BUFFER                = ' '
      I_BUFFER_ACTIVE                   = ' '
       I_CALLBACK_PROGRAM                = 'sy-repid'
       I_CALLBACK_PF_STATUS_SET           = 'PF'
      I_CALLBACK_USER_COMMAND           = ' '
      I_CALLBACK_TOP_OF_PAGE            = ' '
      I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
      I_CALLBACK_HTML_END_OF_LIST       = ' '
      I_STRUCTURE_NAME                  =
      I_BACKGROUND_ID                   = ' '
    I_GRID_TITLE                      = 'vendor details'
      I_GRID_SETTINGS                   =
    IS_LAYOUT                         = LAYOUT
       IT_FIELDCAT                       = fcat
      IT_EXCLUDING                      =
      IT_SPECIAL_GROUPS                 =
      IT_SORT                           =
      IT_FILTER                         =
      IS_SEL_HIDE                       =
      I_DEFAULT                         = 'X'
      I_SAVE                            = ' '
      IS_VARIANT                        =
    IT_EVENTS                         = I_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
      IT_ALV_GRAPHICS                   =
      IT_HYPERLINK                      =
      IT_ADD_FIELDCAT                   =
      IT_EXCEPT_QINFO                   =
      I_HTML_HEIGHT_TOP                 =
      I_HTML_HEIGHT_END                 =
    IMPORTING
      E_EXIT_CAUSED_BY_CALLER           =
      ES_EXIT_CAUSED_BY_USER            =
      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.
    form sub.
    fcat1-fieldname = 'FLAG'.
    fcat1-tabname = 'TAB'.
    *fcat1-COL_POS = 1.
    fcat1-checkbox = 'X'.
    fcat1-edit         = 'X'.
    append fcat1 to fcat.
    CLEAR FCAT1.
    fcat1-fieldname = 'LIFNR'.
    fcat1-ref_tabname = 'LFA1'.
    fcat1-ref_fieldname = 'LIFNR'.
    FCAT1-outputlen = 10.
    append fcat1 to fcat.
    CLEAR FCAT1.
    fcat1-fieldname = 'NAME1'.
    fcat1-ref_tabname = 'LFA1'.
    fcat1-ref_fieldname = 'NAME1'.
    append fcat1 to fcat.
    CLEAR FCAT1.
    fcat1-fieldname = 'LAND1'.
    fcat1-ref_tabname = 'LFA1'.
    fcat1-ref_fieldname = 'LAND1'.
    append fcat1 to fcat.
    CLEAR FCAT1.
    endform.
    form PF USING rt_extab TYPE slis_t_extab.
    SET PF-STATUS 'ZHAJI_P1' .
    ENDFORM.
    just give the fine coding

  • Button in alv grid cell using REUSE_ALV_GRID_DISPLAY

    Hi all,
      I want to make the contents of 2 columns of my alv grid as push button with values as text on it. I am not using classes or methods but alv grid fm. On clicking the button one dialog box has to pop up which gives edit option for the values in that coloumn, my question is how to introduce button in alv grid cell? if i can use t_fieldcatalog-icon, then please give me the complete steps for that.
    Thanks.

    this may helps u
    u need to copy stadard screen elemetn to MARATAB1(at PF -STATUS)
    You should copy the 'STANDARD' GUI status from program <b>SAPLSLVC_FULLSCREEN</b>
    type this one in SE41 program name is:<b>SAPLSLVC_FULLSCREEN</b>
    status : <b>STANDARD_FULLSCREEN</b>
    and copy it ...
             Type-pool
    type-pools slis.
             Tables
    tables: mara,sscrfields.
           Selection screen
    select-options: s_matnr for mara-matnr.
    PARAMETERS: p_email TYPE somlreci1-receiver.
    TYPES: BEGIN OF t_charmara,
      matnr(18)  TYPE c,                   " Material Number
      ernam(12)  TYPE c,                   " Person Credited
      aenam(12)  TYPE c,                   " Person Changed Object
      pstat(15)  TYPE c,                   " Maintenance Status
    END OF t_charmara.
             Data Declarations
    data: rt_extab    type slis_t_extab,   " Table of inactive function
                                           codes
          wa_charmara TYPE t_charmara,     " work area of mara Table
          fs_fieldcat type slis_t_fieldcat_alv,
                                           " Field catalog with field
                                           descriptions
          t_fieldcat  like line of fs_fieldcat,
                                           " Table of Field catalog
          r_ucomm     like sy-ucomm,       " User Command
          rs_selfield TYPE slis_selfield.  " cursor position ALV
    data: filedlayout   type slis_layout_alv,
          heading       type slis_t_listheader with header line,
          t_event       type slis_t_event.
    data: fs_event      like line of t_event.
    data: fs_sort type slis_sortinfo_alv,
           t_sort type slis_t_sortinfo_alv.
    data: w_char(200) type c,
          w_matnr     type mara-matnr.
    fs_sort-fieldname = 'MATNR'.
    fs_sort-up        = 'X'.
    fs_sort-group     = '*'.
    append fs_sort to t_sort.
    clear fS_sort.
    DATA:   t_packing_list  LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
            t_contents      LIKE solisti1   OCCURS 0 WITH HEADER LINE,
            t_receivers     LIKE somlreci1  OCCURS 0 WITH HEADER LINE,
            t_attachment    LIKE solisti1   OCCURS 0 WITH HEADER LINE,
            t_object_header LIKE solisti1   OCCURS 0 WITH HEADER LINE,
            w_cnt           TYPE i,
            w_sent_all(1)   TYPE c,
            w_doc_data      LIKE sodocchgi1,
            gd_error        TYPE sy-subrc,
            gd_reciever     TYPE sy-subrc.
             Internal Tables
    data: begin of it_mara occurs 0,
            matnr like mara-matnr,         " Material Number
            ernam like mara-ernam,         " Person Credited
            aenam like mara-aenam,         " Person Changed Object
            pstat like mara-pstat,         " Maintenance Status
          end of it_mara.
    DATA:   it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
                    WITH HEADER LINE.
    DATA:   it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
                    WITH HEADER LINE.
    *at selection-screen on field event
    AT SELECTION-SCREEN on s_matnr.
    PERFORM f0100_VALIDATE_MATERIAL_NUMBER.
    start-of-selection.
    retrive Data from the data base table Mara
    perform retrive_data_from_mara.
    end-of-selection.
    *Field catalog with field descriptions
    perform fieldcat.
    *perform top_of_page.
    PERFORM EVENT_LIST.
    *ALV Grid Display
    perform alv_display.
    Creating one Push button ENTER
    perform maratab1 USING    RT_EXTAB.
    *&      Form  f0100_VALIDATE_MATERIAL_NUMBER
          text
    There are no interface parameters to be passed to this subroutine
    FORM F0100_VALIDATE_MATERIAL_NUMBER .
    select matnr                          " Material Number
       from mara
      up to 1 rows
       into mara-matnr
      where matnr in s_matnr.
      endselect.
    IF sy-subrc NE 0.
          clear sscrfields-ucomm.
          MESSAGE e000 WITH 'Enter valid Material number'(003).
        ENDIF.                             " IF sy-subrc NE 0
    ENDFORM.                               " f0100_VALIDATE_MATERIAL_NUMBER
    *&      Form  retrive_data_from_mara
          text
    *There are no interface parameters to be passed to this subroutine
    FORM retrive_data_from_mara .
    select   matnr                         " Material Number
             ernam                         " Person Credited
             aenam                         " Person Changed Object
             pstat                         " Maintenance Status
        from mara
        into table It_mara
       where matnr in s_matnr.
    IF sy-subrc NE 0.
          MESSAGE i001 WITH 'Records are not found'.
          exit.
          stop.
        ENDIF.                             " IF sy-subrc NE 0
    ENDFORM.                               " retrive_data_from_mara
    *&      Form  fieldcat
          text
    *There are no interface parameters to be passed to this subroutine
    FORM fieldcat .
    *field catalog for MATNR
      t_FIELDCAT-REF_TABNAME = 'MARA'.
      t_fieldcat-fieldname   = 'MATNR'.
      t_fieldcat-col_pos     = 1.
      append t_fieldcat to fs_fieldcat.
      clear t_fieldcat.
    *field catalog for ERNAM
      t_FIELDCAT-REF_TABNAME = 'MARA'.
      t_fieldcat-fieldname   = 'ERNAM'.
      t_fieldcat-col_pos     = 2.
      append t_fieldcat to fs_fieldcat.
      clear t_fieldcat.
    *field catalog for AENAM
      t_FIELDCAT-REF_TABNAME = 'MARA'.
      t_fieldcat-fieldname   = 'AENAM'.
      t_fieldcat-col_pos     = 3.
      append t_fieldcat to fs_fieldcat.
      clear t_fieldcat.
    *field catalog for PSTAT
      t_FIELDCAT-REF_TABNAME = 'MARA'.
      t_fieldcat-fieldname   = 'PSTAT'.
      t_fieldcat-col_pos     = 4.
      append t_fieldcat to fs_fieldcat.
      clear t_fieldcat.
    ENDFORM.                               " fieldcat
    *&      Form  EVENT_LIST
          text
    *There are no interface parameters to be passed to this subroutine
    FORM EVENT_LIST .
      fs_event-name ='TOP_OF_PAGE'.
      fs_event-form = 'TOP_PAGE'.
      append fs_event TO t_EVENT.
      CLEAR FS_EVENT.
      fs_event-name ='END_OF_PAGE'.
      fs_event-form = 'END_PAGE'.
      append fs_event TO t_EVENT.
      CLEAR FS_EVENT.
      fs_event-name ='END_OF_LIST'.
      fs_event-form = 'LIST_END'.
      append fs_event TO t_EVENT.
      CLEAR FS_EVENT.
    ENDFORM.                               " EVENT_LIST
    *&      Form  alv_display
          text
    *There are no interface parameters to be passed to this subroutine
    FORM alv_display .
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
      I_INTERFACE_CHECK              = ' '
      I_BYPASSING_BUFFER             =
      I_BUFFER_ACTIVE                = ' '
       I_CALLBACK_PROGRAM             = SY-REPID
       I_CALLBACK_PF_STATUS_SET       = 'MARATAB1'
       I_CALLBACK_USER_COMMAND        = 'USER_COMMAND'
      I_STRUCTURE_NAME               =
      IS_LAYOUT                      =
       IT_FIELDCAT                    = FS_FIELDCAT
      IT_EXCLUDING                   =
      IT_SPECIAL_GROUPS              =
       IT_SORT                        = T_SORT
      IT_FILTER                      =
      IS_SEL_HIDE                    =
      I_DEFAULT                      = 'X'
      I_SAVE                         = ' '
      IS_VARIANT                     =
       IT_EVENTS                      = T_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                       = IT_MARA[]
    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.                               " alv_display
    form TOP_PAGE.
      data:tbl_listheader type slis_t_listheader,
            wa_listheader type slis_listheader .
       wa_listheader-typ = 'S'.
       wa_listheader-info = 'Created by : Vijay Pawar'.
       append wa_listheader to tbl_listheader.
       wa_listheader-typ = 'S'.
       concatenate ' Date ' sy-datum into
                  wa_listheader-info separated by space.
        append wa_listheader to tbl_listheader.
       wa_listheader-typ = 'S'.
       concatenate ' From ' s_matnr-low '  To  ' s_matnr-high into
                           wa_listheader-info separated by space.
       append wa_listheader to tbl_listheader.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
      EXPORTING
        IT_LIST_COMMENTARY       = tbl_listheader
      I_LOGO                   =
      I_END_OF_LIST_GRID       =
      I_ALV_FORM               =
    endform.                               " form TOP_PAGE.
    form END_PAGE.
      STATICS W_PAGE TYPE I .
      data:tbl_listheader type slis_t_listheader,
            wa_listheader type slis_listheader .
      wa_listheader-typ   = 'S'.
      wa_listheader-info  = W_PAGE.
      append wa_listheader to tbl_listheader.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
      EXPORTING
        IT_LIST_COMMENTARY       = tbl_listheader
      I_LOGO                   =
      I_END_OF_LIST_GRID       =
      I_ALV_FORM               =
    add 1 to w_page.
    endform.                               " form END_PAGE.
    form list_end.
      data:tbl_listheader type slis_t_listheader,
      wa_listheader type slis_listheader .
      wa_listheader-typ = 'S'.
      wa_listheader-info = '......................................Last Page'
      append wa_listheader to tbl_listheader.
    CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
      EXPORTING
        IT_LIST_COMMENTARY       = tbl_listheader
      I_LOGO                   =
      I_END_OF_LIST_GRID       =
      I_ALV_FORM               =
    endform.                               " form list_end.
    *&      Form  maratab1
          text
         -->P_RT_EXTAB  text
    FORM maratab1  USING    P_RT_EXTAB.
      SET PF-STATUS 'MARATAB1' EXCLUDING rt_extab.
    ENDFORM.                               " maratab1
    FORM user_command  USING r_ucomm LIKE sy-ucomm
                         rs_selfield TYPE slis_selfield.
    case r_ucomm.
       when 'ENTER'.
       perform bulid_xls_data_table.
       PERFORM send_file_as_email_attachment
                                      tables it_message
                                             it_attach
                                       using p_email "'[email protected]'
                                    'Example .xls documnet attachment'
                                             'XLS'
                                             'filename'
                                    changing gd_error
                                             gd_reciever.
        perform populate_email_message_body.
        PERFORM initiate_mail_execute_program.
      endcase.                             " case r_ucomm.
    endform.                               " FORM user_command
    perform populate_email_message_body.
    PERFORM initiate_mail_execute_program.
         CALL FUNCTION 'RH_START_EXCEL_WITH_DATA'
    EXPORTING
       DATA_FILENAME             = 'MARA.XLS'
       DATA_PATH_FLAG            = 'W'
      DATA_ENVIRONMENT          =
       DATA_TABLE                = ITAB[]
      MACRO_FILENAME            =
      MACRO_PATH_FLAG           = 'E'
      MACRO_ENVIRONMENT         =
       WAIT                      = 'X'
      DELETE_FILE               = 'X'
    EXCEPTIONS
       NO_BATCH                  = 1
       EXCEL_NOT_INSTALLED       = 2
       INTERNAL_ERROR            = 3
       CANCELLED                 = 4
       DOWNLOAD_ERROR            = 5
       NO_AUTHORITY              = 6
       FILE_NOT_DELETED          = 7
       OTHERS                    = 8
       IF SY-SUBRC <> 0.
        MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
            WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
       ENDIF.
       leave to list-processing.
    endcase.
    *&      Form  bulid_xls_data_table
          text
    *There are no interface parameters to be passed to this subroutine
    FORM bulid_xls_data_table .
    CONSTANTS: con_cret TYPE x VALUE '0D',  "OK for non Unicode
                con_tab TYPE x VALUE '09'.   "OK for non Unicode
    *If you have Unicode check active in program attributes thnen you will
    *need to declare constants as follows
    *class cl_abap_char_utilities definition load.
    constants:
        con_tab  type c value cl_abap_char_utilities=>HORIZONTAL_TAB,
        con_cret type c value cl_abap_char_utilities=>CR_LF.
      CONCATENATE 'matnr' 'ernam' 'aenam' 'pstat'
             INTO it_attach SEPARATED BY con_tab.
      CONCATENATE con_cret it_attach  INTO it_attach.
      APPEND  it_attach.
      LOOP AT It_mara INTO wa_charmara.
        CONCATENATE wa_charmara-matnr wa_charmara-ernam
                    wa_charmara-aenam wa_charmara-pstat
               INTO it_attach SEPARATED BY con_tab.
        CONCATENATE con_cret it_attach  INTO it_attach.
        APPEND  it_attach.
      ENDLOOP.                             " LOOP AT it_mara INTO...
    ENDFORM.                               " bulid_xls_data_table
    *&      Form  send_file_as_email_attachment
       Send email
         -->P_IT_MESSAGE  text
         -->P_IT_ATTACH  text
         -->P_P_EMAIL  text
         -->P_0387   text
         -->P_0388   text
         -->P_0389   text
         -->P_0390   text
         -->P_0391   text
         -->P_0392   text
         <--P_GD_ERROR  text
         <--P_GD_RECIEVER  text
    FORM send_file_as_email_attachment tables pit_message
                                              pit_attach
                                        using p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     changing p_error
                                              p_reciever.
      DATA: ld_error               TYPE sy-subrc,
            ld_reciever            TYPE sy-subrc,
            ld_mtitle              LIKE sodocchgi1-obj_descr,
            ld_email               LIKE  somlreci1-receiver,
            ld_format              TYPE  so_obj_tp ,
            ld_attdescription      TYPE  so_obj_nam ,
            ld_attfilename         TYPE  so_obj_des ,
            ld_sender_address      LIKE  soextreci1-receiver,
            ld_sender_address_type LIKE  soextreci1-adr_typ,
            ld_receiver            LIKE  sy-subrc.
      ld_email               = p_email.
      ld_mtitle              = p_mtitle.
      ld_format              = p_format.
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename.
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      w_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      w_doc_data-obj_langu = sy-langu.
      w_doc_data-obj_name  = 'SAPRPT'.
      w_doc_data-obj_descr = ld_mtitle .
      w_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      CLEAR w_doc_data.
      READ TABLE it_attach INDEX w_cnt.
      w_doc_data-doc_size =
         ( w_cnt - 1 ) * 255 + STRLEN( it_attach ).
      w_doc_data-obj_langu  = sy-langu.
      w_doc_data-obj_name   = 'SAPRPT'.
      w_doc_data-obj_descr  = ld_mtitle.
      w_doc_data-sensitivty = 'F'.
      CLEAR t_attachment.
      REFRESH t_attachment.
      t_attachment[] = pit_attach[].
    Describe the body of the message
      CLEAR t_packing_list.
      REFRESH t_packing_list.
      t_packing_list-transf_bin  = space.
      t_packing_list-head_start  = 1.
      t_packing_list-head_num    = 0.
      t_packing_list-body_start  = 1.
      DESCRIBE TABLE it_message LINES t_packing_list-body_num.
      t_packing_list-doc_type    = 'RAW'.
      APPEND t_packing_list.
    Create attachment notification
      t_packing_list-transf_bin = 'X'.
      t_packing_list-head_start = 1.
      t_packing_list-head_num   = 1.
      t_packing_list-body_start = 1.
      DESCRIBE TABLE t_attachment LINES t_packing_list-body_num.
      t_packing_list-doc_type   =  ld_format.
      t_packing_list-obj_descr  =  ld_attdescription.
      t_packing_list-obj_name   =  ld_attfilename.
      t_packing_list-doc_size   =  t_packing_list-body_num * 255.
      APPEND t_packing_list.
    Add the recipients email address
      CLEAR t_receivers.
      REFRESH t_receivers.
      t_receivers-receiver   = ld_email.
      t_receivers-rec_type   = 'U'.
      t_receivers-com_type   = 'INT'.
      t_receivers-notif_del  = 'X'.
      t_receivers-notif_ndel = 'X'.
      APPEND t_receivers.
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
           EXPORTING
                document_data              = w_doc_data
                put_in_outbox              = 'X'
                sender_address             = ld_sender_address
                sender_address_type        = ld_sender_address_type
                commit_work                = 'X'
           IMPORTING
                sent_to_all                = w_sent_all
           TABLES
                packing_list               = t_packing_list
                contents_bin               = t_attachment
                contents_txt               = it_message
                receivers                  = t_receivers
           EXCEPTIONS
                too_many_receivers         = 1
                document_not_sent          = 2
                document_type_not_exist    = 3
                operation_no_authorization = 4
                parameter_error            = 5
                x_error                    = 6
                enqueue_error              = 7
                OTHERS                     = 8.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      LOOP AT t_receivers.
        ld_receiver = t_receivers-retrn_code.
      ENDLOOP.
    ENDFORM.                               " send_file_as_email_attachment
    *&      Form  INITIATE_MAIL_EXECUTE_PROGRAM
          Instructs mail send program for SAPCONNECT to send email.
    FORM initiate_mail_execute_program.
      WAIT UP TO 2 SECONDS.
      SUBMIT rsconn01 WITH mode = 'INT'
                    WITH output = 'X'
                    AND RETURN.
    ENDFORM.                               " INITIATE_MAIL_EXECUTE_PROGRAM
    *&      Form  POPULATE_EMAIL_MESSAGE_BODY
           Populate message body text
    form populate_email_message_body.
      REFRESH it_message.
      it_message = 'Please find attached a list test mara records'.
      APPEND it_message.
    endform.                               "form populate_email_message_bod
    rewards if it helps u

  • Set pf_status in REUSE_ALV_GRID_DISPLAY

    Hi All,
    I am using the 'i_callback_pf_status_set' from the FUNCTION 'REUSE_ALV_GRID_DISPLAY' and I see the output but the pf_status is not working. I donot see the buttin I created not even basic BACK and SAvE are working. When I activate the program I am getting the warning like '
    when you pass SY-REPID DIRECTLY, "I_CALLBACK_PROGRAM" is set to the name ot the function group "REUSE_ALV_GRID_DISPLAY"'.
    Please help me how to set the pf_status in the ALV.
    Thanks,
    Neelu.
    REPORT zppprice1 .
    TABLES: zppprice, kna1.
    * ALV Type-Pools                                                       *
    TYPE-POOLS:  slis.                                "Global types
    * ALV Structures                                                       *
    * ALV layout catalog
    DATA: s_alv_layout_cat          TYPE slis_layout_alv.
    * ALV Tables                                                           *
    * ALV field catalog
    DATA: it_alv_field_cat TYPE slis_t_fieldcat_alv,
    *occurs 0 with header line,
          i_fieldcat TYPE slis_fieldcat_alv OCCURS 0 WITH HEADER LINE,
          w_fieldcat LIKE LINE OF i_fieldcat.        "ALV FieldCat WorkArea
    * ALV sort catalog
    DATA: it_alv_sort_cat TYPE slis_sortinfo_alv OCCURS 0 WITH HEADER LINE.
    * ALV event catalog
    *data: it_alv_event_cat type slis_alv_event occurs 0 with header line.
    DATA: it_alv_event_cat TYPE slis_t_event,
          ls_alv_event TYPE slis_alv_event.
    DATA: t_list_top_of_page TYPE slis_t_listheader.
    TYPES: BEGIN OF slis_layout_alv.
    INCLUDE TYPE slis_layout_main.
    INCLUDE TYPE slis_layout_alv_spec.
    TYPES: END OF slis_layout_alv.
    DATA: gt_zprice TYPE TABLE OF zprice_struct,
          gs_zprice TYPE zprice_struct.
    DATA: chbox(1) TYPE c VALUE ' '.
    *SET PF-STATUS 'LIST'.
    *NEW-PAGE LINE-SIZE 158.
    SELECT kunnr matnr crdate efdate sprice
            eprice eohqty aohqty crmemo
            FROM zppprice
            INTO TABLE gt_zprice.
    PERFORM field_catalog.
    * Populate the layout catalog for alv
    PERFORM alv_layout.
    * Populate the event catalog for alv
    PERFORM alv_events.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
       i_callback_program                = sy-repid
       i_callback_pf_status_set          = 'PF_STATUS'
       i_callback_user_command           = 'HANDLE_USER_COMMAND'
       is_layout                         = s_alv_layout_cat
       it_fieldcat                       = it_alv_field_cat
       i_default                         = 'X'
       i_save                            = 'A'
       it_events                         = it_alv_event_cat
      TABLES
        t_outtab                          = gt_zprice
    * EXCEPTIONS
    *   PROGRAM_ERROR                     = 1
    *   OTHERS                            = 2
    FORM field_catalog.
      DATA: ls_fieldcat TYPE slis_fieldcat_alv.
      ls_fieldcat-fieldname = 'CHBOX'.
      ls_fieldcat-checkbox = 'X'.
      ls_fieldcat-input = 'X'.
      ls_fieldcat-edit = 'X'.
      ls_fieldcat-seltext_s = 'BOX'.
      ls_fieldcat-seltext_l = 'BOX'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'KUNNR'.
      ls_fieldcat-seltext_s = 'Customer'.
      ls_fieldcat-seltext_l = 'Customer'.
    APPEND ls_fieldcat TO it_alv_field_cat.
    CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'MATNR'.
      ls_fieldcat-seltext_s = 'Material'.
      ls_fieldcat-seltext_l = 'Material'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'CRDATE'.
      ls_fieldcat-seltext_s = 'Creation date'.
      ls_fieldcat-seltext_l = 'Creation date'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'EFDATE'.
      ls_fieldcat-seltext_s = 'Effective date'.
      ls_fieldcat-seltext_l = 'Effective date'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'SPRICE'.
      ls_fieldcat-seltext_s = 'Old Price'.
      ls_fieldcat-seltext_l = 'Old Price'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'EPRICE'.
      ls_fieldcat-seltext_s = 'New Price'.
      ls_fieldcat-seltext_l = 'New Price'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'EOHQTY'.
      ls_fieldcat-seltext_s = 'Est. Qty'.
      ls_fieldcat-seltext_l = 'Est. Qty'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
      ls_fieldcat-fieldname = 'AOHQTY'.
      ls_fieldcat-seltext_s = 'Act. Qty'.
      ls_fieldcat-seltext_l = 'Act. Qty'.
      APPEND ls_fieldcat TO it_alv_field_cat.
      CLEAR ls_fieldcat.
    ENDFORM.                    " field_catalog
    *&      Form  alv_layout
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM alv_layout.
    * Enable striped output display if user wants
      s_alv_layout_cat-zebra                = 'X'.
    * Optimize column width if user wants
      s_alv_layout_cat-colwidth_optimize    = 'X'.
      s_alv_layout_cat-box_fieldname        = space.
      s_alv_layout_cat-no_input             = 'X'.
    ENDFORM.                    " alv_layout
    *       FORM SET_PFSTATUS                                             *
    *  -->  EXTAB                                                         *
    FORM pf_status USING extab TYPE slis_t_extab.
      SET PF-STATUS 'LIST'.
    ENDFORM.
    *       FORM HANDLE_USER_COMMAND                                      *
    *  -->  I_UCOM                                                        *
    *  -->  IS_SELFIELD                                                   *
    FORM handle_user_command USING i_ucom TYPE sy-ucomm
                             is_selfield TYPE slis_selfield.
      CASE i_ucom.
        WHEN 'CMEMO'.
          LOOP AT  gt_zprice INTO gs_zprice WHERE chbox = 'X'.
          ENDLOOP.
      ENDCASE.
    ENDFORM.
    *&      Form  alv_events
    *       text
    *  -->  p1        text
    *  <--  p2        text
    FORM alv_events.
    * Declare event catalog for page headers
      REFRESH: it_alv_event_cat.
      CLEAR ls_alv_event.
      ls_alv_event-name = 'PF_STATUS_SET'.
      ls_alv_event-form = 'PF_STATUS'.
      APPEND ls_alv_event TO it_alv_event_cat.
    * Declare event catalog for report footers
      CLEAR ls_alv_event.
      ls_alv_event-name = 'USER_COMMAND'.
      ls_alv_event-form = 'HANDLE_USER_COMMAND'.
      APPEND ls_alv_event TO it_alv_event_cat.
    ENDFORM.                    " alv_events

    Yes, do not pass SY-REPID directly, first move to a variable.
    data: repid type sy-repid.
    repid = sy-repid.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
    EXPORTING
       i_callback_program                = repid
       i_callback_pf_status_set          = 'PF_STATUS'
       i_callback_user_command           = 'HANDLE_USER_COMMAND'
       is_layout                         = s_alv_layout_cat
       it_fieldcat                       = it_alv_field_cat
       i_default                         = 'X'
       i_save                            = 'A'
       it_events                         = it_alv_event_cat
      TABLES
        t_outtab                          = gt_zprice
    * EXCEPTIONS
    *   PROGRAM_ERROR                     = 1
    *   OTHERS                            = 2
    Regards,
    Rich Heilman

  • Fatal Error when exporting Report to Excel

    Hi Everyone, I've been trying to export my report to excel.  But I have exhausted all possible reasons and I just couldn't figure it out.  Can someone please help me.  Thanks in advance.
    PROGRAM NAME :   ZADC_PAYSUMNEW
    REPORT ZADC_PAYSUMNEW
    NO STANDARD PAGE HEADING
                      LINE-SIZE 450
                      LINE-COUNT 65 MESSAGE-ID zmes.
    TABLE DECLARATION                                                   *
    TABLES: cskt,
            csks,
            pa0009,
            pcl1,
            pcl2,
            pernr,
            t512t,
            t549a,
            t527x,
            zhrprtype.
       INFOTYPES DECLARATION
    INFOTYPES: 0001, 0002.
       INCLUDE DECLARATION
    INCLUDE: rpc2rx00.
    INCLUDE: rpc2rxx0.
    INCLUDE: rpppxd00.
       INTERNAL TABLE DECLARATION
    DATA: BEGIN OF itab OCCURS 0,
            khinr LIKE csks-khinr,
            kostl LIKE p0001-kostl,
            ltext(40),
            p_date LIKE pc261-inper,
            basic(7) TYPE p DECIMALS 2,
            pera(7) TYPE p DECIMALS 2,
            longp(7) TYPE p DECIMALS 2,
            trall(6) type p decimals 2,
            srvaw(6) TYPE p DECIMALS 2,
            chall(7) TYPE p DECIMALS 2,
            leave(7) TYPE p DECIMALS 2,
            meal(7) TYPE p DECIMALS 2,
            saldf(7) TYPE p DECIMALS 2,
            sipps(7) TYPE p DECIMALS 2,
            sipgs(7) TYPE p DECIMALS 2,
            subs(7) TYPE p DECIMALS 2,
            hzard(7) TYPE p DECIMALS 2,
            lallw(7) TYPE p DECIMALS 2,
            medps(7) TYPE p DECIMALS 2,
            medgs(7) TYPE p DECIMALS 2,
            pcontps(7) TYPE p DECIMALS 2,
            pcontgs(7) TYPE p DECIMALS 2,
            pagibps(6) TYPE p DECIMALS 2,
            pagibgs(6) TYPE p DECIMALS 2,
            lwop(7) TYPE p DECIMALS 2,
            npay(7) TYPE p DECIMALS 2,
            otime(7) TYPE p DECIMALS 2,
            ec(7) TYPE p DECIMALS 2,
            fr_date like sy-datum,
            to_date like sy-datum,
          END OF itab.
    DATA: BEGIN OF jtab OCCURS 0,
            khinr LIKE csks-khinr,
            kostl LIKE p0001-kostl,
            ltext(40),
            basic(7) TYPE p DECIMALS 2,
            pera(7) TYPE p DECIMALS 2,
            longp(7) TYPE p DECIMALS 2,
            trall(6) type p decimals 2,
            srvaw(6) TYPE p DECIMALS 2,
            chall(7) TYPE p DECIMALS 2,
            leave(7) TYPE p DECIMALS 2,
            meal(7) TYPE p DECIMALS 2,
            saldf(7) TYPE p DECIMALS 2,
            sipps(7) TYPE p DECIMALS 2,
            sipgs(7) TYPE p DECIMALS 2,
            subs(7) TYPE p DECIMALS 2,
            hzard(7) TYPE p DECIMALS 2,
            lallw(7) TYPE p DECIMALS 2,
            medps(7) TYPE p DECIMALS 2,
            medgs(7) TYPE p DECIMALS 2,
            pcontps(7) TYPE p DECIMALS 2,
            pcontgs(7) TYPE p DECIMALS 2,
            pagibps(6) TYPE p DECIMALS 2,
            pagibgs(6) TYPE p DECIMALS 2,
            lwop(7) TYPE p DECIMALS 2,
            npay(7) TYPE p DECIMALS 2,
            otime(7) TYPE p DECIMALS 2,
            ec(7) TYPE p DECIMALS 2,
          END OF jtab.
    DATA: it_list TYPE STANDARD TABLE OF itab   WITH HEADER LINE.
       CONSTANTS DECLARATION
    CONSTANTS: basic  TYPE pc207-lgart VALUE '0401',
               basic2 TYPE pc207-lgart VALUE '0402',
               basic3 TYPE pc207-lgart VALUE '0403',
               PERA   TYPE pc207-lgart VALUE '3104',
               PERA2 TYPE pc207-lgart VALUE '3110',
               longp  TYPE pc207-lgart VALUE '1601',
               longp2 TYPE pc207-lgart VALUE '1603',
               trall  TYPE pc207-lgart VALUE '3109',
               srvaw TYPE pc207-lgart VALUE '2117',
               leave TYPE pc207-lgart VALUE '2118',
               chall  TYPE pc207-lgart VALUE '3105',
               chall2 TYPE pc207-lgart VALUE '3111',
               chall3 TYPE pc207-lgart VALUE '3112',
               meal   TYPE pc207-lgart VALUE '3102',
               saldf  TYPE pc207-lgart VALUE '4103',
               sipps  TYPE pc207-lgart VALUE '/090',
               sipps2 TYPE pc207-lgart VALUE '1121',
               subs   TYPE pc207-lgart VALUE '3101',
               hzard  TYPE pc207-lgart VALUE '1602',
               lallw  TYPE pc207-lgart VALUE '3103',
               medps  TYPE pc207-lgart VALUE '/313',
               medgs  TYPE pc207-lgart VALUE '/314',
               pcontps  TYPE pc207-lgart VALUE '/093',
               pcontps2 TYPE pc207-lgart VALUE '1327',
               pcontps3 TYPE pc207-lgart VALUE '1120',
               pagibps  TYPE pc207-lgart VALUE '/326',
               pagibps2 TYPE pc207-lgart VALUE '1326',
               lwop   TYPE pc207-lgart VALUE '1102',
               otime  TYPE pc207-lgart VALUE '0101',
               otime2 TYPE pc207-lgart VALUE '0102',
               otime3 TYPE pc207-lgart VALUE '0103',
               otime4 TYPE pc207-lgart VALUE '0104',
               npay   TYPE pc207-lgart VALUE '/559'.
       DATA DECLARATION
    DATA: BEGIN OF COMMON PART buffer.
    INCLUDE: rpppxd10.
    DATA: END OF COMMON PART buffer.
    *Table data containing directory to PCL2 payroll results file DATA:
    DATA: BEGIN OF rgdir OCCURS 100.
            INCLUDE STRUCTURE pc261.
    DATA: END OF rgdir.
    DATA: BEGIN OF evpdir OCCURS 100.
            INCLUDE STRUCTURE pc261.
    DATA: END OF evpdir.
    DATA: country LIKE t001p-molga,
          lname LIKE t527x-orgtx,
          filename2(128),
          p_date LIKE pc261-inper,
          w_basic  LIKE pc207-lgart,
          w_basic2 LIKE pc207-lgart,
          w_basic3 LIKE pc207-lgart,
          w_pera LIKE pc207-lgart,
          w_pera2 LIKE pc207-lgart,
          w_longp LIKE pc207-lgart,
          w_longp2 LIKE pc207-lgart,
          w_trall LIKE pc207-lgart,
          w_srvaw LIKE pc207-lgart,
          w_leave LIKE pc207-lgart,
          w_chall LIKE pc207-lgart,
          w_chall2 LIKE pc207-lgart,
          w_chall3 LIKE pc207-lgart,
          w_meal LIKE pc207-lgart,
          w_saldf LIKE pc207-lgart,
          w_sipps LIKE pc207-lgart,
          w_sipps2 LIKE pc207-lgart,
          w_subs LIKE pc207-lgart,
          w_hzard LIKE pc207-lgart,
          w_lallw LIKE pc207-lgart,
          w_medps LIKE pc207-lgart,
          w_medgs LIKE pc207-lgart,
          w_pcontps LIKE pc207-lgart,
          w_pcontps2 LIKE pc207-lgart,
          w_pcontps3 LIKE pc207-lgart,
          w_pagibps LIKE pc207-lgart,
          w_pagibps2 LIKE pc207-lgart,
          w_lwop LIKE pc207-lgart,
          w_otime LIKE pc207-lgart,
          w_otime2 LIKE pc207-lgart,
          w_otime3 LIKE pc207-lgart,
          w_otime4 LIKE pc207-lgart,
          w_npay LIKE pc207-lgart,
          tempgs(7) TYPE p DECIMALS 2,
          ctr-basic(7) TYPE p DECIMALS 2,
          ctr-pera(7) TYPE p DECIMALS 2,
          ctr-longp(7) TYPE p DECIMALS 2,
          ctr-trall(6) TYPE p DECIMALS 2,
          ctr-srvaw(6) TYPE p DECIMALS 2,
          ctr-leave(7) TYPE p DECIMALS 2,
          ctr-chall(7) TYPE p DECIMALS 2,
          ctr-meal(7) TYPE p DECIMALS 2,
          ctr-saldf(7) TYPE p DECIMALS 2,
          ctr-sipps(7) TYPE p DECIMALS 2,
          ctr-sipgs(7) TYPE p DECIMALS 2,
          ctr-subs(7) TYPE p DECIMALS 2,
          ctr-hzard(7) TYPE p DECIMALS 2,
          ctr-lallw(7) TYPE p DECIMALS 2,
          ctr-medps(7) TYPE p DECIMALS 2,
          ctr-medgs(7) TYPE p DECIMALS 2,
          ctr-pcontps(7) TYPE p DECIMALS 2,
          ctr-pcontgs(7) TYPE p DECIMALS 2,
          ctr-pagibps(6) TYPE p DECIMALS 2,
          ctr-pagibgs(6) TYPE p DECIMALS 2,
          ctr-lwop(7) TYPE p DECIMALS 2,
          ctr-otime(7) TYPE p DECIMALS 2,
          ctr-npay(7) TYPE p DECIMALS 2,
          ctr-ec(7) TYPE p DECIMALS 2.
    DATA: BEGIN OF  ph-version.
            INCLUDE STRUCTURE pc201_pay.   "XTWPH9K008656
    DATA: END OF  ph-version.
    DATA: fr_date LIKE sy-datum,
          to_date LIKE sy-datum.
       SELECT-OPTIONS and PARAMETERS
    SELECT-OPTIONS: p_status FOR rgdir-srtza DEFAULT 'A'.
    DATA: DATE1(15),
          mon(9).
       DEFINITION
    DEFINE rp-imp-c2-rx2.
      clear:
        orx-version,                       "OBJECTS_FOR_CLEAR
        rt, rt[].
      import
        ph-version to orx-version          "OBJECTS_FOR_IMPORT
        rt
      from database pcl2(ph) id rx-key using pcl2_exp_imp.
      rp-imp-rx-subrc = sy-subrc.
      if sy-subrc eq 0 and orx-version-number ne ph-version-number.
        rp-imp-rx-subrc = 8.
      endif.
    END-OF-DEFINITION.
    TYPE-POOLS: slis.
    DATA: g_repid LIKE sy-repid,
          gt_fieldcat TYPE slis_t_fieldcat_alv,
          gt_events TYPE slis_t_event,
          gt_top TYPE slis_t_listheader,
          gt_eol TYPE slis_t_listheader,
          gt_list_top_of_page TYPE slis_t_listheader,
          gt_list_end_of_list TYPE slis_t_listheader,
          gs_layout TYPE slis_layout_alv,
          d_f2code LIKE sy-ucomm              VALUE  '&ETA'.
    CONSTANTS: fn_top TYPE slis_formname VALUE 'TOP_OF_PAGE',
               fn_eol TYPE slis_formname VALUE 'END_OF_LIST'.
    DATA: it_alv_out TYPE STANDARD TABLE OF itab WITH HEADER LINE.
    INITIALIZATION.
    g_repid = sy-repid.
    PERFORM f_fieldcat_init USING gt_fieldcat[].
    PERFORM eventtab_build USING gt_events[].
       START-OF-SELECTION.
    START-OF-SELECTION.
    fr_date = to_date = pn-endda.
    fr_date+6(2) = '01'.
      SELECT SINGLE * FROM t549a
         WHERE abkrs = pnpxabkr.
      GET PERNR.
        CLEAR: itab, lname.
        PERFORM get_rt_tab.
    END-OF-SELECTION.
      PERFORM display_grid.
      INCLUDE rpppxm00.
    USING DATM
          FORM get_rt_tab                                               *
    FORM get_rt_tab.
      rp_provide_from_last p0001 space pn-begda pn-endda.
      rp_provide_from_last p0002 space pn-begda pn-endda.
      CALL FUNCTION 'CU_READ_RGDIR'
           EXPORTING
                persnr          = p0001-pernr
           IMPORTING
                molga           = country
           TABLES
                in_rgdir        = rgdir
           EXCEPTIONS
                no_record_found = 1
                OTHERS          = 2.
      IF sy-subrc = 0.
      SELECT single ltext FROM cskt
        INTO itab-ltext
        WHERE kostl = p0001-kostl
          AND datbi = '99991231'.
      SELECT SINGLE * FROM csks
        WHERE kostl = p0001-kostl
          AND kokrs = 'GSIS'
          AND datbi = '99991231'.
      IF sy-subrc = 0.
        MOVE: csks-kostl TO itab-kostl,
              csks-khinr TO itab-khinr.
      ENDIF.
        p_date = pn-paper.
      regular payroll run.
        CALL FUNCTION 'CD_EVALUATION_PERIODS'
             EXPORTING
                  bonus_date      = '00000000'
                  inper_modif     = t549a-permo
                  inper           = p_date
                  pay_type        = ' '
                  pay_ident       = ' '
             TABLES
                  rgdir           = rgdir
                  evpdir          = evpdir
             EXCEPTIONS
                  no_record_found = 1
                  OTHERS          = 2.
        IF sy-subrc = 0.
          LOOP AT evpdir WHERE srtza IN p_status and FPPER eq pn-begda+(6).
            rx-key-pernr = p0001-pernr.
            rx-key-seqno = evpdir-seqnr.
            rp-imp-c2-rx2.
            IF rp-imp-rx-subrc = 0.
              PERFORM rt_to_itab.
            ENDIF.
          ENDLOOP.
        ENDIF.
      ENDIF.
    ENDFORM.
          FORM PRINT_RX                                                 *
    FORM print_rx.
      LOOP AT rt.
        PERFORM re512t USING country rt-lgart.
      ENDLOOP.
    ENDFORM.
          FORM RE512T                                                   *
    -->  VALUE(COUNTRY_GROUPING)                                       *
    -->  VALUE(WTYPE)                                                  *
    FORM re512t USING value(country_grouping)
                      value(wtype).
      CHECK t512t-sprsl NE sy-langu
         OR t512t-molga NE country_grouping
         OR t512t-lgart NE wtype.
      SELECT SINGLE * FROM t512t
           WHERE sprsl EQ sy-langu
           AND molga EQ country_grouping
           AND lgart EQ wtype.
      IF sy-subrc NE 0.
        CLEAR t512t.
      ENDIF.
    ENDFORM.
          FORM rt_to_itab                                               *
    FORM rt_to_itab.
      MOVE: basic TO w_basic,
            basic2 TO w_basic2,
            basic3 TO w_basic3,
            pera  TO w_pera,
            pera2 TO w_pera2,
            longp TO w_longp,
            longp2 TO w_longp2,
            srvaw TO w_srvaw,
            leave TO w_leave,
            trall TO w_trall,
            chall TO w_chall,
            chall2 TO w_chall2,
            chall3 TO w_chall3,
            meal  TO w_meal,
            saldf TO w_saldf,
            sipps TO w_sipps,
            sipps2 TO w_sipps2,
            subs  TO w_subs,
            hzard TO w_hzard,
            lallw TO w_lallw,
            medps TO w_medps,
            medgs TO w_medgs,
            pcontps TO w_pcontps,
            pcontps2 TO w_pcontps2,
            pcontps3 TO w_pcontps3,
            pagibps TO w_pagibps,
            pagibps2 TO w_pagibps2,
            LWOP  TO w_lwop,
            otime TO w_otime,
            otime2 TO w_otime2,
            otime3 TO w_otime3,
            otime4 TO w_otime4,
            npay  TO w_npay.
      LOOP AT rt WHERE lgart = w_basic or lgart = w_basic2
                                        or lgart = w_basic3.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-basic.
        itab-ec = rt-betrg / 100.
        if itab-ec > 100.
            itab-ec = 100.
        ENDIF.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_pera.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-pera.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_pera2.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-pera.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_longp or lgart = w_longp2.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-longp.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_trall.
        if rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        endif.
        ADD: rt-betrg TO itab-trall.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_srvaw.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-srvaw.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_leave.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-leave.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_chall or
                       lgart = w_chall2 or
                       lgart = w_chall3.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-chall.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_meal.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-meal.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_saldf.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-saldf.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_sipps or
                       lgart = w_sipps2.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-sipps.
        itab-sipgs = itab-sipps / 9 * 12.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_subs.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-subs.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_hzard.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-hzard.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_lallw.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-lallw.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_medps.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-medps.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_medgs.
          IF rt-betrg < 0.
            rt-betrg = abs( rt-betrg ).
          ENDIF.
          MOVE: rt-betrg TO tempgs.
          itab-medgs = itab-medps.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_pcontps OR
                       lgart = w_pcontps2 OR
                       lgart = w_pcontps3.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-pcontps.
      ENDLOOP.
      itab-pcontgs = itab-pcontps * 9.
      LOOP AT rt WHERE lgart = w_pagibps OR
                       lgart = w_pagibps2.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-pagibps.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_pagibps.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-pagibgs.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_lwop.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-lwop.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_otime or
                       lgart = w_otime2 or
                       lgart = w_otime3 or
                       lgart = w_otime4.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-otime.
      ENDLOOP.
      LOOP AT rt WHERE lgart = w_npay.
        IF rt-betrg < 0.
          rt-betrg = abs( rt-betrg ).
        ENDIF.
        ADD: rt-betrg TO itab-npay.
      ENDLOOP.
      COLLECT itab.
      CLEAR: itab.
      REFRESH rt.
    ENDFORM.                               " rt_to_itab
    *&      Form  f_fieldcat_init
          text
         -->P_GT_FIELDCAT[]  text
    FORM f_fieldcat_init USING rt_fieldcat TYPE slis_t_fieldcat_alv.
      DATA: ls_fieldcat TYPE slis_fieldcat_alv.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   1.
      ls_fieldcat-reptext_ddic    =  ' FXNAL Group'.
      ls_fieldcat-fieldname       =  'KHINR'.
      ls_fieldcat-ref_tabname     =  'ITAB'.
      ls_fieldcat-outputlen       =  12.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   2.
      ls_fieldcat-reptext_ddic    =  ' OFFICE'.
      ls_fieldcat-fieldname       =  'LTEXT'.
      ls_fieldcat-ref_tabname     =  'ITAB'.
      ls_fieldcat-outputlen       =  40.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   3.
      ls_fieldcat-reptext_ddic    =  ' RC #'.
      ls_fieldcat-fieldname       =  'KOSTL'.
      ls_fieldcat-ref_tabname     =  'ITAB'.
      ls_fieldcat-outputlen       =  5.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos           =   4.
      ls_fieldcat-reptext_ddic      =  'Basic Salary'.
      ls_fieldcat-tabname           =  'ITAB'.
      ls_fieldcat-fieldname         =  'BASIC'.
      ls_fieldcat-datatype          = 'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   5.
      ls_fieldcat-reptext_ddic      =  'PERA Allow'.
      ls_fieldcat-tabname           =  'ITAB'.
      ls_fieldcat-fieldname         =  'PERA'.
      ls_fieldcat-datatype          =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   6.
      ls_fieldcat-reptext_ddic    =  'Longevity Pay'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'LONGP'.
      ls_fieldcat-datatype        = 'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   7.
      ls_fieldcat-reptext_ddic    =  'Service Award'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'SRVAW'.
      ls_fieldcat-datatype        = 'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   8.
      ls_fieldcat-reptext_ddic    =  'Child Allowance'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'CHALL'.
      ls_fieldcat-datatype        = 'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   9.
      ls_fieldcat-reptext_ddic    =  'Leave Mone'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'LEAVE'.
      ls_fieldcat-datatype        = 'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   10.
      ls_fieldcat-reptext_ddic    =  'Over-time'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'OTIME'.
      ls_fieldcat-datatype        =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   11.
      ls_fieldcat-reptext_ddic    =  'Meal Subsidy'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'MEAL'.
      ls_fieldcat-datatype        =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   12.
      ls_fieldcat-reptext_ddic    =  'Salary Diff.'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'SALDF'.
      ls_fieldcat-datatype        =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   13.
      ls_fieldcat-reptext_ddic    =  'Subsistence'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'SUBS'.
      ls_fieldcat-datatype        =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   14.
      ls_fieldcat-reptext_ddic    =  'Hazard Pay'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'HZARD'.
      ls_fieldcat-datatype        =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
      CLEAR ls_fieldcat.
      ls_fieldcat-col_pos         =   15.
      ls_fieldcat-reptext_ddic    =  'Laundry Allow'.
      ls_fieldcat-tabname         =  'ITAB'.
      ls_fieldcat-fieldname       =  'LALLW'.
      ls_fieldcat-datatype        =  'CURR'.
      ls_fieldcat-outputlen       =  15.
      APPEND ls_fieldcat TO rt_fieldcat.
    ENDFORM.                    " f_fieldcat_init
    *&      Form  display_grid
          text
    -->  p1        text
    <--  p2        text
    FORM display_grid.
      SORT itab BY kostl khinr.
      LOOP AT itab.
        AT NEW khinr.
          MOVE-CORRESPONDING itab TO jtab.
          APPEND jtab.
        ENDAT.
      ENDLOOP.
      PERFORM my_top USING gt_top[].
      PERFORM build_layout USING gs_layout.
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program = g_repid
          is_layout          = gs_layout
          it_fieldcat        = gt_fieldcat[]
          it_events          = gt_events[]
        TABLES
          t_outtab           = itab.
    ENDFORM.                    " display_grid
    *&      Form  eventtab_build
          text
         -->P_GT_EVENTS[]  text
    FORM EVENTTAB_BUILD USING my_events TYPE SLIS_T_EVENT.
      DATA: ls_event TYPE slis_alv_event.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
           EXPORTING
                i_list_type = 1
           IMPORTING
                et_events   = my_events.
    *TOP OF PAGE
      READ TABLE my_events
           WITH KEY NAME = slis_ev_top_of_page
           INTO LS_EVENT.
      IF SY-SUBRC = 0.
        MOVE fn_top TO ls_event-form.
        APPEND ls_event TO my_events.
      ENDIF.
      CLEAR ls_event.
    *END OF LIST
      READ TABLE my_events
            WITH KEY name = slis_ev_end_of_list
            INTO ls_event.
      IF sy-subrc = 0.
        MOVE   fn_eol TO ls_event-form.
        APPEND ls_event TO my_events.
      ENDIF. " SY-SUBRC for READ TABLE
    ENDFORM.                    " eventtab_build
    *&      Form  top_comment
          text
         -->P_MYTOP[]  text
    FORM top_comment USING my_top_of_page TYPE slis_t_listheader.
      DATA: it_t247 LIKE t247 OCCURS 0 WITH HEADER LINE.
      DATA: ls_line     TYPE slis_listheader,
            li_recs     TYPE i,
            lc_name(60) TYPE c,
            lc_from(30) TYPE c,
            lc_to(30) TYPE c.
      CALL FUNCTION 'MONTH_NAMES_GET'
           TABLES
                month_names = it_t247.
    Company Name
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = TEXT-001.
      APPEND ls_line TO my_top_of_page.
      CLEAR ls_line.
      ls_line-typ  = 'S'.
      ls_line-info  = TEXT-002.
      APPEND ls_line TO my_top_of_page.
    Date
      CLEAR lc_name.
      CONCATENATE sy-datum+6(2) ',' INTO lc_name.
      READ TABLE it_t247 WITH KEY mnr = sy-datum+4(2).
      CONCATENATE text-003 it_t247-ltx lc_name sy-datum(4)
             INTO lc_name SEPARATED BY space.
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO my_top_of_page.
    ENDFORM.                    " top_comment
    *&      Form  build_layout
          text
         -->P_GS_LAYOUT  text
    FORM build_layout USING my_layout TYPE slis_layout_alv.
      my_layout-f2code              = d_f2code.
      my_layout-reprep              = 'X'.
      my_layout-confirmation_prompt = 'X'.
      my_layout-flexible_key        = 'X'.
    ENDFORM.                    " build_layout
    *&      Form  TOP_OF_PAGE
          Writes comments on top of page
    FORM top_of_page.
      DATA: ls_line     TYPE slis_listheader,
            lc_name(60) TYPE c.
      IF sy-ucomm = '&RNT_PREV'.
        READ TABLE gt_top INTO ls_line INDEX 2.
        lc_name = ls_line-info.
        WRITE 'Page:' TO lc_name+45(5).
        WRITE sy-pagno TO lc_name+52(5).
        ls_line-typ  = 'H'.
        ls_line-info = lc_name.
        MODIFY  gt_top FROM ls_line INDEX 2.
      ENDIF.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
           EXPORTING
                it_list_commentary = gt_top.
    ENDFORM. " TOP_OF_PAGE
    *&      Form  my_top
          text
         -->P_GT_TOP[]  text
    FORM my_top USING top TYPE slis_t_listheader.
      DATA: it_t247 LIKE t247 OCCURS 0 WITH HEADER LINE.
      DATA: ls_line     TYPE slis_listheader,
            li_recs     TYPE i,
            lc_name(60) TYPE c,
            lc_from(30) TYPE c,
            lc_to(30) TYPE c.
      CALL FUNCTION 'MONTH_NAMES_GET'
           TABLES
                month_names = it_t247.
    Company Name
      CLEAR lc_name.
      WRITE text-001 TO lc_name.
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO top.
    **Report Name
      CLEAR lc_name.
      WRITE text-002 TO lc_name.
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO top.
    Range of date
      CLEAR lc_name.
      lc_name = p_date+4(2).
      READ TABLE it_t247 WITH KEY mnr = p_date+4(2).
      CONCATENATE: text-003 it_t247-ltx sy-datum(4)
                   INTO lc_name SEPARATED BY SPACE.
      ls_line-typ = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO top.
    ENDFORM.                    " my_top
    *&      Form  END_OF_LIST
          Writes signature line at end of list
    FORM end_of_list.
      IF sy-ucomm = '&RNT_PREV' OR sy-ucomm = 'AUSW'.
        REFRESH gt_eol.
        PERFORM my_eol USING gt_eol[].
      ELSE.
        REFRESH gt_eol.
      ENDIF.
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
           EXPORTING
                it_list_commentary = gt_eol
                i_end_of_list_grid = 'X'.
    ENDFORM. " END_OF_LIST
    *&      Form  my_eol
          text
         -->P_GT_EOL[]  text
    FORM my_eol USING eol TYPE slis_t_listheader.
      DATA: ls_line     TYPE slis_listheader,
            lc_name(60) TYPE c.
    Signature Line
      CLEAR lc_name.
      lc_name = '.'.
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO eol.
      CLEAR lc_name.
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO eol.
      CLEAR ls_line.
      ls_line-typ  = 'H'.
      WRITE 'Submitted By:' TO lc_name(28).
      WRITE 'Noted By:' TO lc_name+30(28).
      ls_line-info = lc_name.
      APPEND ls_line TO eol.
      CLEAR: lc_name, ls_line-key.
      lc_name = '.'.
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO eol.
      CLEAR lc_name.   CLEAR ls_line.
      WRITE sy-uline(28) TO lc_name(28).
      WRITE sy-uline(28) TO lc_name+30(28).
      ls_line-typ  = 'H'.
      ls_line-info = lc_name.
      APPEND ls_line TO eol.
    ENDFORM.                    " my_eol

    1.U are not getting the data into Excel when u client Excel Buttton from the ALV display ?
    2.if yes then u will get one message stating that templet is Missing like this ?
    Regards
    prabhu

  • Data missing when Exporting or print preview from ALV report

    Hi
    I have a alv report which is showing fine but when i try to export it to say excel sheet or do print preview some of the data is missing. Can anyone tell me how to fix this. or at least point to some document that discuss this problem.
    Here is my ALV CODE
    *  CALL_ALV
    form call_alv.
    *  v_repid = sy-repid.
      perform build_field_catalog using field_tab[].
      perform build_eventtab      using events[].
      perform comment_build       using header_alv[].
      perform build_sorttab       using gt_sort[].
    *  perform build_layout.
    *  v_variant-variant = '/TEST3'.
    * Call ABAP List Viewer
      call function 'REUSE_ALV_GRID_DISPLAY'
        exporting
          i_callback_program      = v_repid
          i_callback_user_command = ''
          i_structure_name        = 'REC'
          it_fieldcat             = field_tab[]
          it_special_groups       = gt_sp_group[]
          it_sort                 = gt_sort[]
          i_save                  = v_save
          is_variant              = v_variant
          it_events               = events[]
    *      is_layout               = gd_layout
        tables
          t_outtab                 = REC
        exceptions
          program_error            = 1
          others                   = 2.
    endform.
    From my Catalog this data is missing
    * BUILD_FIELD_CATALOG
    form build_field_catalog USING pt_fieldcat type
                                   slis_t_fieldcat_alv.
      data:  ls_fieldcat type slis_fieldcat_alv.
      clear: fieldcat, pt_fieldcat[].
      ls_fieldcat-tabname        =                'REC'.
      ls_fieldcat-edit           =                ' '.
        ls_fieldcat-fieldname      =                'PERNR'.
        ls_fieldcat-seltext_s      =                'Employee #     '.
        ls_fieldcat-seltext_m      =                'Employee #           '.
        ls_fieldcat-seltext_l      =                'Employee #           '.
        ls_fieldcat-datatype       =                'C'.
        append ls_fieldcat to pt_fieldcat.
    There r coupole that's missing
    But there couple that show's up like this one
        ls_fieldcat-fieldname      =                'STIME'.
        ls_fieldcat-seltext_s      =                'ST   '.
        ls_fieldcat-seltext_m      =                'St Tm     '.
        ls_fieldcat-seltext_l      =                'Start Time          '.
        ls_fieldcat-datatype       =                'C'.
        append ls_fieldcat to pt_fieldcat.
        ls_fieldcat-fieldname      =                'ETIME'.
        ls_fieldcat-seltext_s      =                'ET      '.
        ls_fieldcat-seltext_m      =                'Et Tm           '.
        ls_fieldcat-seltext_l      =                'End Time             '.
        append ls_fieldcat to pt_fieldcat.
    I always reward points.
    Thanks

    hi Anwarul,
    Try the following code:
    *  CALL_ALV
    form call_alv.
    *  v_repid = sy-repid.
      perform build_field_catalog using field_tab[].
      perform build_eventtab      using events[].
      perform comment_build       using header_alv[].
      perform build_sorttab       using gt_sort[].
    *  perform build_layout.
    *  v_variant-variant = '/TEST3'.
    * Call ABAP List Viewer
      call function 'REUSE_ALV_GRID_DISPLAY'
        exporting
          i_callback_program      = v_repid
          i_callback_user_command = ''
          i_structure_name        = 'REC'
          it_fieldcat             = field_tab[]
          it_special_groups       = gt_sp_group[]
          it_sort                 = gt_sort[]
          i_save                  = v_save
          is_variant              = v_variant
          it_events               = events[]
    *      is_layout               = gd_layout
        tables
          t_outtab                 = REC
        exceptions
          program_error            = 1
          others                   = 2.
    endform.
    form build_field_catalog USING pt_fieldcat type
                                   slis_t_fieldcat_alv.
    call function 'REUSE_ALV_FIELDCATALOG_MERGE'
    exporting
    I_PROGRAM_NAME  = sy-repid
    I_STRUCTURE_NAME = 'REC'
    changing
    CT_FIELDCAT          = pt_fieldcat.
    When you export to excel, the character fields and numeric columns gets re-arranged, but all the fields will be displayed in this case.
    hope this helps.

  • How to EDIT a particular Row in ALV using normal function module Reuse_alv_grid_display

    Hi experts..
    i got one requirement like i need to edit some rows particularly in alv....
    Edit in alv output....is it possible to get  that .....using normal function module with out using oops concept...
    could any one pls help me...

    Hi Pendurti ,
    If you want a particular field to be editable , simply define the fieldcatalog as
    wa_fieldcatalog-edit          = 'X'.
    wa_fieldcatalog-input         = 'X'.
    for that field.
    and
    Now when you use FM ' Reuse alv grid display '
    define USER_COMMAND
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
        EXPORTING
          i_callback_program       = v_repid
          i_callback_pf_status_set = 'SET_PF_STATUS'
          i_callback_user_command  = 'USER_COMMAND'
          it_fieldcat              = int_fieldcatalog
          is_layout                = wa_layout
        TABLES
          t_outtab                 = t_disp.
    and now in form USER_COMMAND ; code as per following
    FORM user_command  USING r_ucomm LIKE sy-ucomm
                                rs_selfield TYPE slis_selfield.
         DATA ref1 TYPE REF TO cl_gui_alv_grid.
         CALL FUNCTION 'GET_GLOBALS_FROM_SLVC_FULLSCR'
           IMPORTING
             e_grid = ref1.
         CALL METHOD ref1->check_changed_data.
    endform.
    Regards,
    Yogendra Bhaskar

Maybe you are looking for

  • Windows update error: Code 80072F8F

    CODE 800A1391       80072F8F

  • Traveling-do I need a dial up?

    We have a network at home that allows me to access the internet. I am traveling to a location without wireless access/network and would like to be able to access the internet and check email (I use entourage). Forgive the silly question but do I need

  • Error extending EmployeeDetailsVO

    Hi all I need to extend the EmployeeDetailsVO. I'm doing the following: 1. In custom directory, right click and select add new VO. 2. Choose the Browse button next to the Extends field, and select the EmployeeDetailsVO. 3. Click next to get to the SQ

  • Prime Infrastructure 2.2 with Nexus 5672UP

    Hi I was wondering if anyone have managed to add Nexus 5672UP devices in Prime Infrastructure 2.2? I noticed that it is not in the device supported list of 2.2. I did however notice that the device is supported with Update Pack 7 in PI 2.1 Was wonder

  • Expired Copy in RMAN

    Hi, DB is 9iR2 We needed to move some datafiles, and the RMAN method we use in 10g, didn't work in 9i. The script was: copy datafile 285 to '/u08/oracle/oradata/blablabla.dbf'; switch datafile 285 to copy; However, switch command RMAN 9i didn't like.