Editable excel in alv report

hi friends..
now i am displaying the data in alv grid..
my requirement is i want to display the data in excel format.. (not in seperate excel..)
i want to display the excel sheet with data within the screen itself.
for this
i tried this scenario by fallowing steps
in layout->view tab->microsoft excel..
(layout button in the application toolbar i.e pf-status)
it show excel sheet within report and data with excel sheet.
now i got data in excel sheet.
but my requirement is if i made any changes in data in excel means
i want those updated or edited data in the another internal table..
this scenario is work in the case of abap list viewer (instead of microsoft excel)
for this i use one button in the pf-status (UPDATE).
after made changes in grid data i export those modified data to abap memory and download to another internal table..
how can i get the same scenario in micosoft excel

hi,
have a look at:
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_wd/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d31303834373334%7d
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_wd/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d31303635323432%7d
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/oss_notes/sdn_oss_bc_wd/~form/handler%7b5f4150503d3030323030363832353030303030303031393732265f4556454e543d444953504c4159265f4e4e554d3d31303932323636%7d

Similar Messages

  • Edit cells in alv report

    hi,
    i have used FM like
    CALL FUNCTION 'REUSE_ALV_HIERSEQ_LIST_DISPLAY'
          EXPORTING
            I_CALLBACK_PROGRAM = L_REPID
            I_CALLBACK_USER_COMMAND= 'FRM_USER_COMMAND '
            IT_FIELDCAT        = IT_FIELDCAT
            it_events          = lt_evts
            I_TABNAME_HEADER   = G_TABNAME_HEADER
            I_TABNAME_ITEM     = G_TABNAME_ITEM
            IS_KEYINFO         = GS_KEYINFO
          TABLES
            T_OUTTAB_HEADER    = IT_HEADER
            T_OUTTAB_ITEM      = IT_ITEM
          EXCEPTIONS
            PROGRAM_ERROR      = 1
            OTHERS             = 2.
    form frm_user_command using r_ucomm     like sy-ucomm
                                          rs_selfield type slis_selfield.
                                                                "#EC *
      data: l_event type lvc_fname.               
    case r_ucomm.
        when 'EDIT'.
        perform switch_edit_mode.
    endcase.
    endform.
    FORM switch_edit_mode.
    IF gr_grid_d1001->is_ready_for_input( ) eq 0.
    set edit enabled cells ready for input
        CALL METHOD gr_grid_d1001->set_ready_for_input
                         EXPORTING i_ready_for_input = 1.
      ELSE.
    lock edit enabled cells against input
        CALL METHOD gr_grid_d1001->set_ready_for_input
                        EXPORTING i_ready_for_input = 0.
      ENDIF.
    ENDFORM.                               " SWITCH_EDIT_MODE
    here i have a doubt like in this  gr_grid_d1001 was empty.please give some idea how to make the cells editable?
    i have also passed edit = 'X'. in fieldcatalog

    Hi Priya,
    Check out the sample program:
    REPORT  ZDEMO_ALVGRID_EDIT                 .
    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,
      field_style  TYPE lvc_t_styl, "FOR DISABLE
    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.
    DATA: it_fieldcat TYPE lvc_t_fcat,     "slis_t_fieldcat_alv WITH HEADER LINE,
          wa_fieldcat TYPE lvc_s_fcat,
          gd_tab_group TYPE slis_t_sp_group_alv,
          gd_layout    TYPE lvc_s_layo,     "slis_layout_alv,
          gd_repid     LIKE sy-repid.
    *Start-of-selection.
    START-OF-SELECTION.
      PERFORM data_retrieval.
      PERFORM set_specific_field_attributes.
      PERFORM build_fieldcatalog.
      PERFORM build_layout.
      PERFORM display_alv_report.
    *&      Form  BUILD_FIELDCATALOG
    *       Build Fieldcatalog for ALV Report
    FORM build_fieldcatalog.
      wa_fieldcat-fieldname   = 'EBELN'.
      wa_fieldcat-scrtext_m   = 'Purchase Order'.
      wa_fieldcat-col_pos     = 0.
      wa_fieldcat-outputlen   = 10.
      wa_fieldcat-emphasize   = 'X'.
      wa_fieldcat-key         = 'X'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'EBELP'.
      wa_fieldcat-scrtext_m   = 'PO Item'.
      wa_fieldcat-col_pos     = 1.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'STATU'.
      wa_fieldcat-scrtext_m   = 'Status'.
      wa_fieldcat-col_pos     = 2.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'AEDAT'.
      wa_fieldcat-scrtext_m   = 'Item change date'.
      wa_fieldcat-col_pos     = 3.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'MATNR'.
      wa_fieldcat-scrtext_m   = 'Material Number'.
      wa_fieldcat-col_pos     = 4.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'MENGE'.
      wa_fieldcat-scrtext_m   = 'PO quantity'.
      wa_fieldcat-col_pos     = 5.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'MEINS'.
      wa_fieldcat-scrtext_m   = 'Order Unit'.
      wa_fieldcat-col_pos     = 6.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'NETPR'.
      wa_fieldcat-scrtext_m   = 'Net Price'.
      wa_fieldcat-edit        = 'X'. "sets whole column to be editable
      wa_fieldcat-col_pos     = 7.
      wa_fieldcat-outputlen   = 15.
      wa_fieldcat-datatype     = 'CURR'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'PEINH'.
      wa_fieldcat-scrtext_m   = 'Price Unit'.
      wa_fieldcat-col_pos     = 8.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
    ENDFORM.                    " BUILD_FIELDCATALOG
    *&      Form  BUILD_LAYOUT
    *       Build layout for ALV grid report
    FORM build_layout.
    * Set layout field for field attributes(i.e. input/output)
      gd_layout-stylefname = 'FIELD_STYLE'.
      gd_layout-zebra             = 'X'.
    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'
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
           EXPORTING
                i_callback_program      = gd_repid
    *            i_callback_user_command = 'USER_COMMAND'
                is_layout_lvc               = gd_layout
                it_fieldcat_lvc             = it_fieldcat
                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  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  CORRESPONDING FIELDS OF TABLE it_ekko.
    ENDFORM.                    " DATA_RETRIEVAL
    *&      Form  set_specific_field_attributes
    *       populate FIELD_STYLE table with specific field attributes
    form set_specific_field_attributes .
      DATA ls_stylerow TYPE lvc_s_styl .
      DATA lt_styletab TYPE lvc_t_styl .
    * Populate style variable (FIELD_STYLE) with style properties
    * The NETPR field/column has been set to editable in the fieldcatalog...
    * The following code sets it to be disabled(display only) if 'NETPR'
    * is gt than 10.
      LOOP AT it_ekko INTO wa_ekko.
        IF wa_ekko-netpr GT 10.
          ls_stylerow-fieldname = 'NETPR' .
          ls_stylerow-style = cl_gui_alv_grid=>mc_style_disabled.
                                                 "set field to disabled
          APPEND ls_stylerow  TO wa_ekko-field_style.
          MODIFY it_ekko FROM wa_ekko.
        ENDIF.
      ENDLOOP.
    endform.                    " set_specific_field_attributes
    Thanks,
    Chidanand

  • Error while Exporting to Excel from ALV Report

    Dear Experts,
    When I am exporting my report output to an Excel Sheet  directly some of the headers are appearing in Row No 1 and some are displaying in Row No. 2. Hence the corresponding values are also showing in the same manner.
    I want to show all the Rows in a single row in row No 1. I am unable to find the solution for this.
    But when I am exporting the same report into the MHTML Excel format the Report Headings are showing correctly in a single row and hence the respective values are also showing correctly in a single row. And if I save the same MHTML Excel as normal EXCEL(97-2003) format then also it is showing correctly.
    The problem comes only when I as exporting it directly into EXCEL(97-2003) format. 
    Plz help.

    Hi,
    This is the Technical limitation of ABAP list export to local file.
    ALV grid greater than 1023 characters per line will be split into 2 lines.
    To prevent a line break occuring when you download the list as a local spreadsheet file, you must reduce the width of the list in ALV. You can do this either by hiding columns or by changing the column widths in the ALV. Take care that the column heading characters also dont exceed 1023 characters. This will work.
    Thanks
    LG

  • How to make column editable in Normal ALV report

    Hi experts,
                       I Have one push button In ALV tool bar like Fields to be change..when i click this..i need to get one pop up with all fields which is having in Filedcatalog..so i need to doule click on any field which i want to be midified..then in ALV that particular entire  column should be editable.Can anybody please help me what is procedure to get pop up with fields..
    Thanks & regards,
    Veena..

    here is the required code
    type-pools: slis.
    types: BEGIN OF TY_MKPF,
            MBLNR TYPE MKPF-MBLNR,
            MJAHR TYPE MKPF-MJAHR,
            VGART TYPE MKPF-VGART,
            BLART TYPE MKPF-BLART,
            BLAUM TYPE MKPF-BLAUM,
          END OF TY_MKPF.
    TYPES:         BEGIN OF TY_WA, "STRUCTURE FOR POP UP ALV
                   CHECK TYPE C,
                   FIELDNAME TYPE DFIES-FIELDNAME,
                   FIELDTEXT TYPE DFIES-FIELDTEXT,
    END OF TY_WA.
    data: lt_mkpf type table of ty_mkpf,
          ls_mkpf type mkpf,
          IT TYPE TABLE OF TY_WA,  "INTERNAL TABLE FOR POP UP ALV
          WA TYPE TY_WA,           "WA FOR POP UP ALV
          IT_FCATP TYPE SLIS_T_FIELDCAT_ALV, "FCAT FOR POP UP ALV
          WA_FCATP LIKE LINE OF IT_FCATP, "WA FOR POP UP ALV
          ok_code type sy-ucomm,
          lt_fcat type lvc_t_fcat,
          ls_fcat type lvc_s_fcat.
    data: o_alv type ref to cl_gui_alv_grid,
          o_doc type ref to cl_gui_docking_container.
    start-of-selection.
    select  MBLNR
            MJAHR
            VGART
            BLART
            BLAUM
    into corresponding fields of table lt_mkpf from mkpf up to 100 rows.
    *---create fieldcatalog
    clear ls_fcat.
    ls_FCAT-FIELDNAME = 'MBLNR'.
    *WA_FCAT-TABNAME = WA-TABNAME.
    ls_FCAT-REF_TABLE = 'MPKPF'.
    ls_FCAT-REF_FIELD = 'MBLNR'.
    APPEND ls_FCAT TO lT_FCAT.
    clear ls_fcat.
    ls_FCAT-FIELDNAME = 'MJAHR'.
    *WA_FCAT-TABNAME = WA-TABNAME.
    ls_FCAT-REF_TABLE = 'MPKPF'.
    ls_FCAT-REF_FIELD = 'MJAHR'.
    APPEND ls_FCAT TO lT_FCAT.
    clear ls_fcat.
    ls_FCAT-FIELDNAME = 'VGART'.
    *WA_FCAT-TABNAME = WA-TABNAME.
    ls_FCAT-REF_TABLE = 'MPKPF'.
    ls_FCAT-REF_FIELD = 'VGART'.
    APPEND ls_FCAT TO lT_FCAT.
    clear ls_fcat.
    ls_FCAT-FIELDNAME = 'BLART'.
    *WA_FCAT-TABNAME = WA-TABNAME.
    ls_FCAT-REF_TABLE = 'MPKPF'.
    ls_FCAT-REF_FIELD = 'BLART'.
    APPEND ls_FCAT TO lT_FCAT.
    clear ls_fcat.
    ls_FCAT-FIELDNAME = 'BLAUM'.
    *WA_FCAT-TABNAME = WA-TABNAME.
    ls_FCAT-REF_TABLE = 'MPKPF'.
    ls_FCAT-REF_FIELD = 'BLAUM'.
    APPEND ls_FCAT TO lT_FCAT.
    *---collect the field names of alv in a itab
    clear wa.
    WA-FIELDNAME = 'MBLNR'.
    WA-FIELDTEXT = 'Number of Material Document'.
    APPEND WA TO IT.
    clear wa.
    WA-FIELDNAME = 'MJAHR'.
    WA-FIELDTEXT = 'fiscical year'.
    APPEND WA TO IT.
    clear wa.
    WA-FIELDNAME = 'VGART'.
    WA-FIELDTEXT = 'Transaction/Event Type'.
    APPEND WA TO IT.
    clear wa.
    WA-FIELDNAME = 'BLART'.
    WA-FIELDTEXT = 'Document Type'.
    APPEND WA TO IT.
    clear wa.
    WA-FIELDNAME = 'BLAUM'.
    WA-FIELDTEXT = 'Document type of revaluation document'.
    APPEND WA TO IT.
    *----------create field catalog
    CLEAR WA_FCATP.
    WA_FCATP-FIELDNAME = 'CHECK'.
    WA_FCATP-SELTEXT_M = 'Selection Field'.
    WA_FCATP-TABNAME = 'IT'.
    APPEND WA_FCATP TO IT_FCATP.
    CLEAR WA_FCATP.
    WA_FCATP-FIELDNAME = 'FIELDNAME'.
    WA_FCATP-TABNAME = 'IT'.
    WA_FCATP-REF_TABNAME = 'DFIES'.   "CHECK IN SE11 TYPE GROUP SLIS
    WA_FCATP-REF_FIELDNAME = 'FIELDNAME'. "CHECK IN SE11 TYPE GROUPB u201CSLIS
    APPEND WA_FCATP TO IT_FCATP.
    CLEAR WA_FCATP.
    WA_FCATP-FIELDNAME = 'FIELDTEXT'.
    WA_FCATP-TABNAME = 'IT'.
    WA_FCATP-REF_TABNAME = 'DFIES'.   "CHECK IN SE11 TYPE GROUP SLIS
    WA_FCATP-REF_FIELDNAME = 'FIELDNAME'.  "CHECK IN SE11 TYPE GROUPB SLIS
    APPEND WA_FCATP TO IT_FCATP.
    CLEAR WA_FCATP.
    call screen 100.
    *&      Module  STATUS_0100  OUTPUT
    *       text
    MODULE STATUS_0100 OUTPUT.
      SET PF-STATUS '100'.
    *  SET TITLEBAR 'xxx'.
      if o_doc is not bound.
    CREATE OBJECT O_DOC
      EXPORTING
        RATIO                       = 95.
    CREATE OBJECT O_ALV
      EXPORTING
        I_PARENT          = o_doc.
      endif.
    CALL METHOD O_ALV->SET_TABLE_FOR_FIRST_DISPLAY
      CHANGING
        IT_OUTTAB                     = lt_mkpf
        IT_FIELDCATALOG               = lt_fcat.
    ENDMODULE.                 " STATUS_0100  OUTPUT
    *&      Module  USER_COMMAND_0100  INPUT
    *       text
    MODULE USER_COMMAND_0100 INPUT.
    CASE OK_CODE.
    WHEN 'BACK'.
    CLEAR :O_ALV,
           O_DOC.
    LEAVE TO SCREEN 0.
    when 'CHNG'.
    CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
      EXPORTING
       I_TITLE                       = 'select fields to make it editable'
       I_ZEBRA                       = 'X'
       I_CHECKBOX_FIELDNAME          = 'CHECK'
        I_TABNAME                     = 'IT'
       IT_FIELDCAT                   = IT_FCATP
      TABLES
        T_OUTTAB                      = it.
    loop at it into wa where check = 'X'.
    *---change fieldcatalog dynamacally
    case wa-fieldname.
    when 'MBLNR'.
    read table lt_fcat into ls_fcat with key fieldname = wa-fieldname.
    if sy-subrc = 0.
    ls_fcat-edit = 'X'.
    endif.
    when 'MJAHR'.
    read table lt_fcat into ls_fcat with key fieldname = wa-fieldname.
    if sy-subrc = 0.
    ls_fcat-edit = 'X'.
    endif.
    when 'VGART'.
    read table lt_fcat into ls_fcat with key fieldname = wa-fieldname.
    if sy-subrc = 0.
    ls_fcat-edit = 'X'.
    endif.
    when 'BLART'.
    read table lt_fcat into ls_fcat with key fieldname = wa-fieldname.
    if sy-subrc = 0.
    ls_fcat-edit = 'X'.
    endif.
    when 'BLAUM'.
    read table lt_fcat into ls_fcat with key fieldname = wa-fieldname.
    if sy-subrc = 0.
    ls_fcat-edit = 'X'.
    endif.
    endcase.
    modify lt_fcat from ls_fcat index sy-tabix transporting edit.
    clear ls_fcat.
    endloop.
    *---change fieldcatalog dynamically
    CALL METHOD O_ALV->SET_FRONTEND_FIELDCATALOG
      EXPORTING
        IT_FIELDCATALOG = lt_fcat
    *CALL METHOD O_ALV->REFRESH_TABLE_DISPLAY
    **  EXPORTING
    **    IS_STABLE      =
    **    I_SOFT_REFRESH =
    **  EXCEPTIONS
    **    FINISHED       = 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.
    ENDCASE.
    ENDMODULE.                 " USER_COMMAND_0100  INPUT
    Edited by: zjason on Dec 29, 2010 7:47 AM
    Edited by: zjason on Dec 29, 2010 7:52 AM
    Edited by: zjason on Dec 29, 2010 7:54 AM

  • ALV Report -  edit  option

    Hi,
             This is BalaNarasimman. i am making one field  as editable field in alv report.
    The requirement is that field should have input with  decimal  also. Eg. 2.2.
    So   i  am  declaring    data   type as, data:per    type  P DECIMALS 1.
        if i am giving  input as '2',  then system  is converting as  '0.2'.
        if i want to get '2.2',then i  need  to give '22'.  so    How  can i  avoid       such       kind of situation?                                     
               Please give suggestion to me.

    hi,
    check this
    *& Report  ZDEMO_ALVGRID_EDIT                                          *
    *& Example of a simple ALV Grid Report                                 *
    *& The basic ALV grid, Enhanced to display specific fields as          *
    *& editable depending on field value                                   *
    REPORT  ZDEMO_ALVGRID_EDIT                 .
    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,
      field_style  TYPE lvc_t_styl, "FOR DISABLE
    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.
    DATA: it_fieldcat TYPE lvc_t_fcat,     "slis_t_fieldcat_alv WITH HEADER LINE,
          wa_fieldcat TYPE lvc_s_fcat,
          gd_tab_group TYPE slis_t_sp_group_alv,
          gd_layout    TYPE lvc_s_layo,     "slis_layout_alv,
          gd_repid     LIKE sy-repid.
    *Start-of-selection.
    START-OF-SELECTION.
      PERFORM data_retrieval.
      PERFORM set_specific_field_attributes.
      PERFORM build_fieldcatalog.
      PERFORM build_layout.
      PERFORM display_alv_report.
    *&      Form  BUILD_FIELDCATALOG
          Build Fieldcatalog for ALV Report
    FORM build_fieldcatalog.
      wa_fieldcat-fieldname   = 'EBELN'.
      wa_fieldcat-scrtext_m   = 'Purchase Order'.
      wa_fieldcat-col_pos     = 0.
      wa_fieldcat-outputlen   = 10.
      wa_fieldcat-emphasize   = 'X'.
      wa_fieldcat-key         = 'X'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'EBELP'.
      wa_fieldcat-scrtext_m   = 'PO Item'.
      wa_fieldcat-col_pos     = 1.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'STATU'.
      wa_fieldcat-scrtext_m   = 'Status'.
      wa_fieldcat-col_pos     = 2.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'AEDAT'.
      wa_fieldcat-scrtext_m   = 'Item change date'.
      wa_fieldcat-col_pos     = 3.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'MATNR'.
      wa_fieldcat-scrtext_m   = 'Material Number'.
      wa_fieldcat-col_pos     = 4.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'MENGE'.
      wa_fieldcat-scrtext_m   = 'PO quantity'.
      wa_fieldcat-col_pos     = 5.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'MEINS'.
      wa_fieldcat-scrtext_m   = 'Order Unit'.
      wa_fieldcat-col_pos     = 6.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'NETPR'.
      wa_fieldcat-scrtext_m   = 'Net Price'.
      wa_fieldcat-edit        = 'X'. "sets whole column to be editable
      wa_fieldcat-col_pos     = 7.
      wa_fieldcat-outputlen   = 15.
      wa_fieldcat-datatype     = 'CURR'.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
      wa_fieldcat-fieldname   = 'PEINH'.
      wa_fieldcat-scrtext_m   = 'Price Unit'.
      wa_fieldcat-col_pos     = 8.
      APPEND wa_fieldcat TO it_fieldcat.
      CLEAR  wa_fieldcat.
    ENDFORM.                    " BUILD_FIELDCATALOG
    *&      Form  BUILD_LAYOUT
          Build layout for ALV grid report
    FORM build_layout.
    Set layout field for field attributes(i.e. input/output)
      gd_layout-stylefname = 'FIELD_STYLE'.
      gd_layout-zebra             = 'X'.
    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'
      CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
           EXPORTING
                i_callback_program      = gd_repid
               i_callback_user_command = 'USER_COMMAND'
                is_layout_lvc               = gd_layout
                it_fieldcat_lvc             = it_fieldcat
                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  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  CORRESPONDING FIELDS OF TABLE it_ekko.
    ENDFORM.                    " DATA_RETRIEVAL
    *&      Form  set_specific_field_attributes
          populate FIELD_STYLE table with specific field attributes
    form set_specific_field_attributes .
      DATA ls_stylerow TYPE lvc_s_styl .
      DATA lt_styletab TYPE lvc_t_styl .
    Populate style variable (FIELD_STYLE) with style properties
    The NETPR field/column has been set to editable in the fieldcatalog...
    The following code sets it to be disabled(display only) if 'NETPR'
    is gt than 10.
      LOOP AT it_ekko INTO wa_ekko.
        IF wa_ekko-netpr GT 1000.
          ls_stylerow-fieldname = 'NETPR' .
          ls_stylerow-style = cl_gui_alv_grid=>mc_style_disabled.
                                                 "set field to disabled
          APPEND ls_stylerow  TO wa_ekko-field_style.
          MODIFY it_ekko FROM wa_ekko.
        ENDIF.
      ENDLOOP.
    endform.                    " set_specific_field_attributes
    regards,
    Prabhu
    Reward if it is helpful

  • How to edit row in alv

    sir,
      explain me how to edit row in alv report in particular column.

    put in the fieldcatalog;;
    wa_fieldcat-edit = 'X'.
    wa_fieldcat-fieldname = 'NETPR'.
    wa_fieldcat-scrtext_m = 'Net Price'.
    wa_fieldcat-edit = 'X'. "sets whole column to be editable
    wa_fieldcat-col_pos = 7.
    wa_fieldcat-outputlen = 15.
    wa_fieldcat-datatype = 'CURR'.
    APPEND wa_fieldcat TO it_fieldcat.
    CLEAR wa_fieldcat.

  • Problem when dowloading the ALV report output to Excel Sheet.

    Hi ,
    I am dowloading the ALV report output to Excel Sheet.
    There is field Condition Unit(KOMP-KMEIN) in the output of the ALV, this has values PC and CSE , but when I download to Excel Sheet, CSE is appearing as CSE ,but PC is appearing as ******.
    Can you please help me in knowing the reson for this.
    Regards,
    Madhu.

    hi
    refer to following link
    http://www.****************/Tutorials/ALV/ColorSALV/Demo.htm
    http://www.sap-img.com/abap/download-to-excel-with-format-border-color-cell-etc.htm
    Cheers
    Snehi
    Edited by: snehi chouhan on Jul 11, 2008 12:42 PM

  • ALV report down load to EXCEL

    When I am trying to down load the ALV report to EXCEL. The report fields are not coming in the same order as they are in the report.
    Please advice.
    <b><REMOVED BY MODERATOR></b>
    Thank you.
    Gouri.
    Message was edited by:
            Alvaro Tejada Galindo

    Hi,
    You can use the FM - ALV_XXL_CALL.
    It is the same function module invoked when you click on the export to excel button of the ALV.
    You can pass teh field catalog of the ALV here along with the name of ur internal table and the internal table itself. It will download everything to Excel alongwith the Column headers ( depending on ur field catalog definition). Just make sure ur field catalog has the COL_Heading correctly populated.
    <b>
    Sample Code -</b> CALL FUNCTION 'ALV_XXL_CALL'
    EXPORTING
    i_tabname = 'T_GRID' " Name of the Internal table
    it_fieldcat = t_fcatk[] " Field catalog
    TABLES
    it_outtab = t_grid " Interbnal table with data
    EXCEPTIONS
    fatal_error = 1
    no_display_possible = 2
    OTHERS = 3.
    IF sy-subrc <> 0.
    MESSAGE e806(bk).
    ENDIF.
    Regards
    Sudheer

  • Downloading ALV report in excel and csv format

    1.I have generated a report in ALV.
    Now, I want a button 'generate' on my alv tooldbar.
    How to do that?
    2.Now  clicking on that generate button will show a popup window containing the title 'Save list in file..'
    And the window will contain two radio buttons to download the report in either in excel or in csv file format.
    i. Spreadsheet(.xls)
    ii.Spreadsheet(.csv)
    How to get the popup window containing two radio buttons and having the options for downloading the alv report in the above file formats.
    Kindly guide.

    @chandrasekhar:
    Thanks for your response. I'll try with the export button but also willing to know how to create button on toolbar.And by clicking on that button a popup box will come having two radio buttons asking to download the report either in .xls or in .csv format. I am looking for the subroutines for that.
    Thanks.
    Message was edited by:
            cinthia nazneen

  • How to download ALV report having more than 200 columns to Excel

    Dear Experts,
    I am facing the issue of line break during downloading ALV report into excel. I referred the lot of forums but i didn't get the proper solution to solve this issue..Please guide me to solve this issue....
    My output in ALV
    header1 header2..........header200
    but when i download that to spreadsheet i am getting like this
    header1 header2.....
    header65 header66....
    header199...
    Regards,
    Rathish
    Edited by: joerathish on Jun 3, 2011 9:53 AM

    joerathish wrote:
    not working well.
    Do you get a excel with empty sheet with excel in place ?
    Then you need to enable macro in trust center of excel sheet settings. The way you do this depends on the version of excel you are using.
    I am able to get 200+ columns perfectly this way.
    Regards

  • Problem in converting alv report to excel

    Hi all,
         We are trying to convert an alv report to excel and attach it to the mail. We are able to convert and attach it in mail.But in the mail attachment we see in some records some special characters are displayed. I am attaching the part of code of converting the alv report to excel. Kindly suggest us a solution.
    DATA: LD_STORE(50) TYPE C. "Leading zeros
    DATA : L_STRING(270) TYPE C.
    DATA : dmbtr(15) type c,
           wrbtr(15) type c,
           30days(15) type c,
           60days(15) type c,
           90days(15) type c,
           120days(15) type c,
           180days(15) type c,
           above180(15) type c,
           salds(15) type c,
           saldh(15) type c,
           acytd_bal(15) type c,
           zbd1t(15) type c.
    DATA : a type i.
    CONSTANTS:
    CON_TAB TYPE C VALUE CL_ABAP_CHAR_UTILITIES=>HORIZONTAL_TAB,
    CON_CRET TYPE C VALUE CL_ABAP_CHAR_UTILITIES=>CR_LF.
    CONCATENATE w_lifnr w_name1 w_docno w_doctype w_ref w_docdate w_postdate w_duedate w_dmbtr w_waers w_wrbtr
                w_30days w_60days w_90days w_120days w_180days w_above180 w_debit w_credit w_accbal
    INTO L_STRING SEPARATED BY CON_TAB.
    CONCATENATE CON_CRET l_string INTO it_objbin.
    APPEND it_objbin.
    LOOP AT IT_FINAL.
    if it_final-lifnr = '0000010065'.
    break-point.
    endif.
    move it_final-dmbtr to dmbtr.
    move it_final-wrbtr to wrbtr.
    move it_final-30days to 30days.
    move it_final-60days to 60days.
    move it_final-90days to 90days.
    move it_final-120days to 120days.
    move it_final-180days to 180days.
    move it_final-above180 to above180.
    move it_final-salds to salds.
    move it_final-saldh to saldh.
    move it_final-acytd_bal to acytd_bal.
    move it_final-zbd1t to zbd1t.
    CONCATENATE
    IT_FINAL-lifnr
    IT_FINAL-name1
    IT_FINAL-belnr
    IT_FINAL-blart
    IT_FINAL-xblnr
    IT_FINAL-bldat
    IT_FINAL-budat
    IT_FINAL-zfbdt
    dmbtr
    IT_FINAL-WAERS
    wrbtr
    30days
    60days
    90days
    120days
    180days
    above180
    *Nondue  TYPE bsik-dmbtr,
    SALDS
    SALDH
    ACYTD_BAL
    INTO L_STRING SEPARATED BY CON_TAB.
    CONCATENATE CON_CRET l_string INTO it_objbin.
    APPEND it_objbin.
    endloop.
    Thanks & Regards,
    Neela

    If you look at the data with some tools, you will see # for the tabs and ## for CRLFs...these are outside the range of printable characters.
    Correct this:
    CONCATENATE CON_CRET l_string INTO it_objbin.
    with...
    CONCATENATE   l_string  CON_CRET INTO it_objbin.  "put the return/linefeed on the end of the string.
    Also, consider.... debug as needed...
    field-symbols <lfs_x> type any.
    loop at it_final into ls_final.
      do.
    assign component sy-index of structure ls_final to <lfs_x>.
    if sy-subrc ne 0. "end of row ecountered.
      exit.
    endif.
    if sy-index eq 1.
    l string = <lfs_x>.
    else.
    concatenate l_string <lfs_x> into l_string separated by con_tab.
    endif.
    enddo.
    concatenate l_string con_ret into l_string.
    condense l_string.
    append l_string to lt_objbin.
    endloop.
    Edited by: BreakPoint on Dec 1, 2011 7:48 PM

  • Problem in downloading ALV report to Excel

    hi All,
    i am facing the problem when i am trying to download the ALV report to Excel format i should have the option to  save as  the Excel file from the dropdown where as instead of it i am getting the option to save as XML file.
    is it something related to settings in SAP or is it done through programatically.
    thanks,

    Anyways is this happening for every one in your team or just for one. If the latter, looks like the user has selected the download in XML format & checked the "remember these settings" checkbox
    You can refer to this link on how to change the default settings: [http://home4sap.com/Blog/2010/03/ecc5-0-alv-default-file-format-when-extracting-files-to-excel/|http://home4sap.com/Blog/2010/03/ecc5-0-alv-default-file-format-when-extracting-files-to-excel/]
    You can also check this SAP offers the possibility to make from transaction FAGLB03 a download
    Edited by: Suhas Saha on Apr 13, 2010 4:40 PM

  • No excel downloading icon or submenu is coming in alv report

    hi,
        i am not getting excel or spreadsheet download icon in my alv report through my login but this is working fine in any other login id.
    so please if any one faced the same problem , please assist me.
    Thanks and Regards
    vijay dwivedi
    <REMOVED BY MODERATOR>
    Edited by: Alvaro Tejada Galindo on Feb 14, 2008 2:09 PM

    check whether your GUI patch level and other users patch level are same?

  • Using Excel template in ALV Report

    Dear Gurus,
    I am having problem with excel template as layout used in ALV report (as i am new to this topic). I uploaded the excel sheet through report BCALV_BDS_UPLOAD. And i am calling the excel template with change layout option but it is not updated with report output data.
    Please suggest,
    PRAVEEN LOBO
    <personal contact details removed  by moderator>
    Edited by: Thomas Zloch on Dec 21, 2010 2:50 PM

    Did you try reading sap help files which clearly explains about Managing templates, selecting templates, creating templates, deleting templates.
    [Managing Templates in ALV|http://help.sap.com/saphelp_apo/helpdata/en/d4/a2a138198daa2fe10000009b38f842/content.htm]
    This will provide you a clear picturesque on handling templates in ALV.
    Edited by: K.Manas on Dec 22, 2010 9:13 AM

  • Download alv report to excel in linux

    Hi All,
    I am working on SAP GUI for Java in Linux PC. I have installed
    Open Office.
    After executing an alv report there is no spreadsheet option
    to download the report in excel format .
    Also, when doing Save as Local File -> Spreadsheet ,
    the report is not downloaded in proper format.
    So, how to download the alv reports in excel format ?
    Edited by: Vinod Iyer on Jan 8, 2008 11:51 AM

    The problem of course is that you can't actually call up EXCEL on a Linux machine so such XXL functions  as  call function 'ALV_XXL_CALL' will not work.
    I don't think SAP has OPEN OFFICE integration -- and even if you use EXCEL via the Linux Cross Over Office it is unlikely to work.
    You might need to fiddle around with the internal file format yourself before saving it as a local file.
    For EXCEL 2007 you actually have a better chance since if you save in TRUE EXCEL 2007 format the data is saved in a type of XML file.
    You can read about the EXCEL 2007 new file formats on the M$ site. Note however that you will need to download the EXCEL 2007 file viwer to read the file with earlier versions of EXCEL.
    (You can use EXCEL 2007 in "compatability" mode but using an XML file IMO seems a better option).
    If you use a lot of EXCEL functionality probably the best option is to install Windows as a VM on your linux machine (VMWARE/PARALLELS/VMBOX etc) and then run the standard SAPGUI from the Windows VM.
    Probably not the answer you want but it's the best I can do.
    Cheers
    jimbo

Maybe you are looking for