Regarding Downloading of Report[List] output into Excel Sheet

Hi All,
Hi i have written one Classical report. I got the output Correctly.
Now i want to download that data into Excel Sheet in excatly the way it displayed in List[Report] output.
I had followed the path <b>System->List->Save->LocalFile->Spread Sheet</b> and tried to download the same.
Though it is downloaded it has not come in exact format.
Now what i want is to add a button above that report & write a program in that to download that data into Excel Sheet.
Can anybody tell me how can solve this issue. If i follow above procedure will the data[List Output] be downloaded into exact format into excel.
If anybody knows other way please sujjest.
Thanks in advance.
Thanks & Regards,
Prasad.

Hi Prasad,
I have done a program which downloads the output in the excel sheet in the correct format.
Just check the program. The code given in bold is what you have to use.
REPORT zexp MESSAGE-ID f4  LINE-SIZE 195.
    Tables Used    ***********************************
TABLES : bseg, bkpf, bsak, lfa1, payr .
Declaring Internal Tables  **************************
DATA :
Internal table to hold header data  *************
BEGIN OF header OCCURS 0,
      ext_date(10) TYPE c,
      delimit(1)   TYPE c,
      ext_time(8)  TYPE c,
END OF header,
Internal table to hold detail info  **************
BEGIN OF i_data OCCURS 0,
    belnr LIKE bsak-belnr,
    gjahr LIKE bsak-gjahr,
    bukrs LIKE bsak-bukrs,
    bldat LIKE bsak-bldat,
    xblnr LIKE bsak-xblnr,
    blart LIKE bsak-blart,
    augdt LIKE bsak-augdt,
    augbl LIKE bsak-augbl,
    wrbtr LIKE bsak-wrbtr,
    shkzg LIKE bsak-shkzg,
    lifnr LIKE bsak-lifnr,
    name1 LIKE lfa1-name1,
    chect LIKE payr-chect,
    status(1) TYPE c,
END OF i_data,
Internal table to to collect  *****************
BEGIN OF i_data1 OCCURS 0,
     belnr LIKE bsak-belnr,
     gjahr LIKE bsak-gjahr,
     bukrs LIKE bsak-bukrs,
     bldat LIKE bsak-bldat,
     xblnr LIKE bsak-xblnr,
     blart LIKE bsak-blart,
     augdt LIKE bsak-augdt,
     augbl LIKE bsak-augbl,
     wrbtr LIKE bsak-wrbtr,
   shkzg LIKE bsak-shkzg,
     lifnr LIKE bsak-lifnr,
     name1 LIKE lfa1-name1,
     sortl LIKE lfa1-sortl,
     chect LIKE payr-chect,
     status(1) TYPE c,
END OF i_data1,
String variables for formatting file data *************
    fidoc_year   TYPE string,
    comp_code    TYPE string,
    check_numbr  TYPE string,
    vendor       TYPE string,
    inv_date     TYPE string,
    inv_nbr      TYPE string,
    paid_dat     TYPE string,
    inv_amt      TYPE string,
    status       TYPE string,
    ref_doc      TYPE string,
************Internal table to store the file contents **************
BEGIN OF i_final_file OCCURS 0,
    record(300) TYPE c,
END OF i_final_file,
Internal table to store the list of allowed document types ****
  BEGIN OF i_doctype OCCURS 0,
         blart LIKE bsak-blart,
  END OF i_doctype,
Internal table to hold vendor information ************
  BEGIN OF i_lfa1 OCCURS 0,
     lifnr LIKE lfa1-lifnr,
     name1 LIKE lfa1-name1,
     sortl LIKE lfa1-sortl,
  END OF i_lfa1,
Internal table to hold check information *************
  BEGIN OF i_payr OCCURS 0,
     chect LIKE payr-chect,
     vblnr LIKE payr-vblnr,
     gjahr LIKE payr-gjahr,
     zbukr LIKE payr-zbukr,
  END OF i_payr.
  Data declarations  **************************
DATA : ws_stblg     TYPE bkpf-stblg,
       todate       TYPE bsak-augdt,
       fromdate     TYPE bsak-augdt,
       w_day        LIKE dtresr-weekday,
       day          LIKE scal-indicator,
       d            TYPE n,
       e_date       LIKE sy-datum,
       e_time       LIKE sy-uzeit,
       dd(2)        TYPE c,
       mm(2)        TYPE c,
       yy(4)        TYPE c,
       hh(2)        TYPE c,
       min(2)       TYPE c,
       sec(2)       TYPE c.
DATA : wa_filepath(50)    TYPE c,
       wa_filename(50)    TYPE c,
       wa_c_filename(100) TYPE c,
       arch_path(50)      TYPE c.
<b>* Data for downloading to list
DATA : list LIKE TABLE OF abaplist WITH HEADER LINE.
DATA : BEGIN OF list_asc OCCURS 0,
msg(300) TYPE c,
END OF list_asc.
DATA: BEGIN OF i_invoiceheader OCCURS 0,
name(30) TYPE c,
END OF i_invoiceheader.
RANGES dates FOR bkpf-budat.</b>
  Selection Screen  ************************
SELECTION-SCREEN SKIP 2.
SELECT-OPTIONS:
         s_bukrs     FOR  bkpf-bukrs ,
         s_blart     FOR  bkpf-blart ,
         s_augdt     FOR  bsak-augdt. " memory id todat TO fromdat.
PARAMETERS :submit  AS CHECKBOX DEFAULT ' '  .
<b>* Download list to file.
AT USER-COMMAND.
  CASE sy-ucomm.
    WHEN 'LIST'.
      PERFORM download.
    WHEN 'BACK'.
      EXIT.
  ENDCASE.</b>
<b>----
      FORM download                                                 *
FORM download.
if s_augdt is initial.
dates-sign = 'I'.
dates-option = 'BT'.
dates-low = '20050901'.
dates-high = '20050920'.
APPEND dates.
else.
  dates = s_augdt.
  append dates.
endif.
/* Submit the same program .
  SUBMIT zexp WITH s_augdt IN dates
   EXPORTING LIST TO MEMORY
   AND RETURN.
  CALL FUNCTION 'LIST_FROM_MEMORY'
       TABLES
            listobject = list
       EXCEPTIONS
            not_found  = 1.
  CALL FUNCTION 'LIST_TO_ASCI'
EXPORTING
LIST_INDEX = -1 "LIST_INDEX SY-LSIND.
  TABLES
  listasci = list_asc
  listobject = list.
  PERFORM download_file.
ENDFORM.
      FORM download_file                                            *
FORM download_file.
  DATA fname TYPE rlgrap-filename VALUE 'c:\audit_report.xls'.
  DATA ftype TYPE rlgrap-filetype VALUE 'DAT'.
  DATA numeric_data(10) TYPE c VALUE '0123456789'.
*Table structure should match with list output.
  DATA : BEGIN OF i_data1 OCCURS 0,
       belnr(12) TYPE c,
       gjahr(6) TYPE c,
       bukrs(8) TYPE c,
       chect(13) TYPE c,
       lifnr(12) TYPE c,
       name1(37) TYPE c,
       bldat(14) TYPE c,
       xblnr(18) TYPE c,
       augdt(14) TYPE c,
       wrbtr(17) TYPE c,
       status(4) TYPE c,
       augbl(18) TYPE c,
       sortl(17) TYPE c,
   END OF i_data1.
Header record of the excel sheet.
  PERFORM fill_header.
  LOOP AT list_asc.
Reads lines starting from the first record in the report. All informatory statements in the report are not read.
    IF list_asc+1(10) CO numeric_data.
      i_data1 = list_asc .
      APPEND i_data1.
    ENDIF.
  ENDLOOP.
Call the download function.
CALL FUNCTION 'DOWNLOAD'
       EXPORTING
            filename = fname
            filetype = ftype
       TABLES
            data_tab = i_data1
            FIELDNAMES = i_invoiceheader.
ENDFORM.
      FORM fill_header                                              *
FORM fill_header.
  i_invoiceheader-name = 'Doc Number'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Fsc Year'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Cmp Code'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Check No'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Vendor No'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Entered by'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Doc Date'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Ref Doc No'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Clearing Date'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Amount'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Status'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Clearing Doc No'.
  APPEND i_invoiceheader.
  i_invoiceheader-name = 'Sort field'.
  APPEND i_invoiceheader.
ENDFORM.                    " fill_header</b>
   Initialization   *************************
INITIALIZATION.
To initialize the date parameter on the selection screen.
The date by default ranges from previous Monday to Sunday.
  todate = sy-datum.
  CALL FUNCTION 'DATE_COMPUTE_DAY'
       EXPORTING
            date = todate
       IMPORTING
            day  = day.
  d = day.
  if d < 4.
    todate = sy-datum - d - 4 .
  else.
    todate = sy-datum - d + 3 .
  endif.
  fromdate = todate - 6.
  MOVE: 'BT'       TO s_augdt-option,
        fromdate   TO s_augdt-low,
        todate     TO s_augdt-high.
  APPEND s_augdt.
Start of Selection  **************************
START-OF-SELECTION.
Checking the validity of the inputted dates ****************
  IF s_augdt-low > sy-datum OR s_augdt-high > sy-datum.
    MESSAGE i999 WITH 'You cannot input future date'.
    EXIT.
  ENDIF.
  IF NOT s_bukrs IS INITIAL.
MESSAGE i999 WITH 'Program will run with input parameters in screen!!'.
  ENDIF.
Initialize the header data ***********************
  e_time = sy-uzeit.
  MOVE e_time+0(2) TO hh.
  MOVE e_time+2(2) TO min.
  MOVE e_time+4(2) TO sec.
  CONCATENATE hh min sec INTO header-ext_time SEPARATED BY ':'.
  e_date = sy-datum.
  MOVE e_date+0(4) TO yy.
  MOVE e_date+4(2) TO mm.
  MOVE e_date+6(2) TO dd.
  CONCATENATE mm dd yy INTO header-ext_date SEPARATED BY '/'.
  header-delimit = '~'.
  APPEND header.
List allowed document types **********************
  PERFORM fill_doc_types.
**To select the documents within the range of week or as inputted **
  IF s_augdt IS INITIAL.
    MOVE: 'I' TO s_augdt-sign,
          'BT'       TO s_augdt-option,
          fromdate   TO s_augdt-low,
          todate     TO s_augdt-high.
    APPEND s_augdt.
  ENDIF.
Selecting the records from the database ****************
  IF s_bukrs IS INITIAL AND s_blart IS INITIAL.
  Select all documents of company code 1000, *********
  4200 and 8000, and allowed document types  *********
    SELECT belnr gjahr augdt augbl bukrs
        blart bldat xblnr lifnr wrbtr shkzg
        FROM bsak INTO CORRESPONDING FIELDS OF TABLE i_data
        FOR ALL ENTRIES IN i_doctype
        WHERE blart EQ i_doctype-blart
        AND augdt IN s_augdt
        AND ( bukrs = '1000' OR bukrs ='4200'  OR
            ( bukrs = '8000' AND blart NE 'ZP' ) ).
   loop at i_data.
Exclude reversed documents
      select single stblg into ws_stblg
             from   bkpf
             where  bukrs = i_data-bukrs
               and  gjahr = i_data-gjahr
               and  belnr = i_data-belnr.
      if not ws_stblg is initial.
         delete i_data.
      endif.
   endloop.
  ELSEIF s_blart IS INITIAL.
  Select all documents of allowed document types ******
       and inputted company code           ************
    SELECT belnr gjahr augdt augbl bukrs
       blart bldat xblnr lifnr wrbtr shkzg
       FROM bsak INTO CORRESPONDING FIELDS OF TABLE i_data
       FOR ALL ENTRIES IN i_doctype
       WHERE blart EQ i_doctype-blart
         AND augdt IN s_augdt
         AND bukrs IN s_bukrs .
    LOOP AT i_data.
Exclude documents of type ZP
for company code 8000.
      IF i_data-bukrs = '8000' AND i_data-blart = 'ZP'.
        DELETE i_data.
        continue.
      ENDIF.
  Exclude reversed documents
      select single stblg into ws_stblg
             from   bkpf
             where  bukrs = i_data-bukrs
               and  gjahr = i_data-gjahr
               and  belnr = i_data-belnr.
      if not ws_stblg is initial.
         delete i_data.
         continue.
      endif.
    ENDLOOP.
    READ TABLE i_data INDEX 1.
    IF sy-subrc NE 0.
      MESSAGE i999 WITH 'No records have been selected'.
      EXIT.
    ENDIF.
  ELSE.
  Select the documents matching the company codes  *****
and document types inputted in the selection screen ****
    SELECT belnr gjahr augdt augbl bukrs bldat xblnr
       blart lifnr  wrbtr shkzg
       FROM bsak INTO CORRESPONDING FIELDS OF TABLE i_data
       WHERE bukrs IN s_bukrs AND blart IN s_blart
         AND augdt IN s_augdt.
    SORT i_data BY blart.
    LOOP AT i_data.
  Filtering the records selected
  based on the document type
      READ TABLE i_doctype WITH KEY blart = i_data-blart.
      IF sy-subrc NE 0.
        DELETE i_data.
        continue.
      ENDIF.
  Exclude documents of type ZP
  for company code 8000.
      IF i_data-bukrs = '8000' AND i_data-blart = 'ZP'.
        DELETE i_data.
        continue.
      ENDIF.
  Exclude reversed documents.
      select single stblg into ws_stblg
             from   bkpf
             where  bukrs = i_data-bukrs
               and  gjahr = i_data-gjahr
               and  belnr = i_data-belnr.
      if not ws_stblg is initial.
         delete i_data.
         continue.
      endif.
    ENDLOOP.
    READ TABLE i_data INDEX 1.
    IF sy-subrc NE 0.
      MESSAGE i999 WITH 'No records have been selected'.
      EXIT.
    ENDIF.
  ENDIF.
  IF sy-subrc NE 0.
    MESSAGE i999 WITH 'No records have been selected'.
    EXIT.
  ENDIF.
credit/debit identification ***********************
  LOOP AT i_data.
    IF i_data-shkzg EQ 'H'.
      i_data-wrbtr = i_data-wrbtr * 1.
    ELSEIF i_data-shkzg EQ 'S'.
      i_data-wrbtr = i_data-wrbtr * -1.
    ENDIF.
    MODIFY i_data.
  ENDLOOP.
for summarizing ******************************
  LOOP AT i_data.
    MOVE-CORRESPONDING  i_data TO i_data1.
    COLLECT i_data1.
  ENDLOOP.
Vendor informations and Check Informations *****************
  SELECT lifnr name1 sortl
         FROM lfa1
         APPENDING CORRESPONDING FIELDS OF TABLE i_lfa1
         FOR ALL ENTRIES IN i_data1
         WHERE lifnr = i_data1-lifnr.
  SELECT chect vblnr gjahr zbukr FROM payr APPENDING CORRESPONDING
                            FIELDS OF TABLE i_payr FOR ALL ENTRIES
                            IN  i_data1   WHERE vblnr = i_data1-augbl
                            AND gjahr = i_data1-augdt(4)
                            AND zbukr = i_data1-bukrs.
  SORT i_data1 BY augbl gjahr bukrs lifnr.
  SORT i_payr  BY vblnr gjahr zbukr.
  SORT i_lfa1  BY lifnr.
  LOOP AT i_data1.
    READ TABLE i_payr WITH KEY vblnr = i_data1-augbl
                               gjahr = i_data1-gjahr
                               zbukr = i_data1-bukrs.
    IF sy-subrc EQ 0.
      i_data1-chect = i_payr-chect.
    ENDIF.
    READ TABLE i_lfa1 WITH KEY lifnr = i_data1-lifnr.
    IF sy-subrc EQ 0.
      i_data1-name1 = i_lfa1-name1.
      i_data1-sortl = i_lfa1-sortl.
    ENDIF.
    i_data1-status = 'X'.
    MODIFY i_data1.
  ENDLOOP.
**The records are sorted by clearing date, check number and doc type**
  SORT i_data1 BY augdt chect blart.
**********The header record is outputted on the screen****************
  PERFORM write_header.
********Data is moved to internal table in the file format *************
  PERFORM move_data.
Line items are outputted on the screen *********************
  PERFORM write_output.
*&                   Form  write_header                             &*
*&        This outputs the header information to screen             &*
FORM write_header.
  SKIP.
   SET PF-STATUS 'LIST'.
Outputting the header information *********************
  WRITE : / 'Extraction Date : ' , header-ext_date.
  WRITE : / 'Extraction Time : ' , header-ext_time.
  FORMAT COLOR 1." INTENSIFIED.
  SKIP.
  ULINE AT 0(190) NO-GAP.
Outputting line level information **********************
  WRITE:/  sy-vline NO-GAP,
        (10) 'DOC NUMBER',
          sy-vline NO-GAP,
         (4) 'F-YR',
           sy-vline NO-GAP,
         (6) 'C-CODE',
          sy-vline NO-GAP,
         (10) 'CHECK NUM',
          sy-vline NO-GAP,
         (10) 'VENDOR NUM',
          sy-vline NO-GAP,
         (35) 'VENDOR NAME',
           sy-vline NO-GAP,
         (12) 'INVOICE DATE',
          sy-vline NO-GAP,
         (16) 'INVOICE NUMBER',
          sy-vline NO-GAP,
         (12) 'PAID DATE',
           sy-vline NO-GAP,
         (15) 'INVOICE AMOUNT',
          sy-vline NO-GAP,
         (2) 'SC',
          sy-vline NO-GAP,
         (16) 'REFERENCE FI DOC',
           sy-vline NO-GAP,
         (15) 'SORT FIELD',
           sy-vline NO-GAP.
  ULINE AT 0(190) NO-GAP.
ENDFORM.                    " write_header
*&                      FORM  MOVE_DATA                             &*
*&    Formats data in internal table as is required in the file     &*
FORM move_data.
  LOOP AT i_data1.
Document number and fiscal year should be separted by '|' *****
    CONCATENATE i_data1-belnr i_data1-gjahr INTO fidoc_year
                SEPARATED BY '|'.
    MOVE i_data1-bukrs TO comp_code.
    MOVE i_data1-chect TO check_numbr.
Vendor number and vendor name should be separted by '|' *****
    CONCATENATE i_data1-lifnr i_data1-name1 INTO vendor
      SEPARATED BY '|'.
    SHIFT vendor LEFT DELETING LEADING '0'.
    SHIFT vendor RIGHT DELETING TRAILING space.
Date fields converted to MM/DD/YYYY format ****************
    MOVE i_data1-bldat+0(4) TO yy.
    MOVE i_data1-bldat+4(2) TO mm.
    MOVE i_data1-bldat+6(2) TO dd.
    CONCATENATE mm dd yy INTO inv_date SEPARATED BY '/'.
    MOVE i_data1-xblnr TO inv_nbr.
    SHIFT inv_nbr RIGHT DELETING TRAILING space.
    MOVE i_data1-augdt+0(4) TO yy.
    MOVE i_data1-augdt+4(2) TO mm.
    MOVE i_data1-augdt+6(2) TO dd.
    CONCATENATE mm dd yy INTO paid_dat SEPARATED BY '/'.
    MOVE i_data1-wrbtr TO inv_amt.
    CONDENSE inv_amt.
   SHIFT inv_amt RIGHT DELETING TRAILING space.
    MOVE i_data1-status TO status.
    MOVE i_data1-augbl TO ref_doc.
    CONCATENATE fidoc_year
                comp_code
                check_numbr
                vendor
                inv_date
                inv_nbr
                paid_dat
                inv_amt
                status
                ref_doc
       INTO i_final_file-record SEPARATED BY '~'.
    APPEND i_final_file.
  ENDLOOP.
ENDFORM.                    " MOVE_DATA
*&                      Form  write_output                          &*
*&                  Outputs all data to screen                      &*
FORM write_output.
  LOOP AT i_data1.
    FORMAT COLOR 2 INTENSIFIED.
Outputting line level information *******************
    WRITE :  /  sy-vline NO-GAP,
             (10) i_data1-belnr,
               sy-vline NO-GAP,
            (4) i_data1-gjahr,
               sy-vline NO-GAP,
             (6) i_data1-bukrs,
               sy-vline NO-GAP,
            (10) i_data1-chect,
              sy-vline NO-GAP,
              (10) i_data1-lifnr,
             sy-vline NO-GAP,
             (35) i_data1-name1,
               sy-vline NO-GAP,
             (12) i_data1-bldat MM/DD/YYYY,
               sy-vline NO-GAP,
             (16)  i_data1-xblnr,
               sy-vline NO-GAP,
             (12) i_data1-augdt MM/DD/YYYY,
               sy-vline NO-GAP,
             (15) i_data1-wrbtr,
               sy-vline NO-GAP,
             (2) i_data1-status,
               sy-vline NO-GAP,
             (16) i_data1-augbl,
               sy-vline NO-GAP,
             (15) i_data1-sortl,
             sy-vline NO-GAP.
  ENDLOOP.
  ULINE AT 0(190) NO-GAP.
ENDFORM.                    " write_output
In the program, I am downloading only the list.. The description of report outputted in the beginning of the report is not downloaded to excel.
What has to be taken into consideration is that, the structure of the table i_data1 which contains the data to be downloaded to the table.
I hope that this will help you.
Regards,
Susmitha

Similar Messages

  • Download the ALV Report output into excel sheet or notepad

    Hi,
    how to downlaod the alv report out into excel sheet or notepad in a proper manner. program contain large number records....
    Thanks in advance!!!!
    Regards,
    kranthi.

    Hi
    Download a report to excel with format (border, color cell, etc) 
    Try this program...it may help you to change the font ..etc.
    Code:
    REPORT ZSIRI NO STANDARD PAGE HEADING.
    this report demonstrates how to send some ABAP data to an
    EXCEL sheet using OLE automation.
    INCLUDE OLE2INCL.
    handles for OLE objects
    DATA: H_EXCEL TYPE OLE2_OBJECT,        " Excel object
          H_MAPL TYPE OLE2_OBJECT,         " list of workbooks
          H_MAP TYPE OLE2_OBJECT,          " workbook
          H_ZL TYPE OLE2_OBJECT,           " cell
          H_F TYPE OLE2_OBJECT.            " font
    TABLES: SPFLI.
    DATA  H TYPE I.
    table of flights
    DATA: IT_SPFLI LIKE SPFLI OCCURS 10 WITH HEADER LINE.
    *&   Event START-OF-SELECTION
    START-OF-SELECTION.
    read flights
      SELECT * FROM SPFLI INTO TABLE IT_SPFLI UP TO 10 ROWS.
    display header
      ULINE (61).
      WRITE: /     SY-VLINE NO-GAP,
              (3)  'Flg'(001) COLOR COL_HEADING NO-GAP, SY-VLINE NO-GAP,
              (4)  'Nr'(002) COLOR COL_HEADING NO-GAP, SY-VLINE NO-GAP,
              (20) 'Von'(003) COLOR COL_HEADING NO-GAP, SY-VLINE NO-GAP,
              (20) 'Nach'(004) COLOR COL_HEADING NO-GAP, SY-VLINE NO-GAP,
              (8)  'Zeit'(005) COLOR COL_HEADING NO-GAP, SY-VLINE NO-GAP.
      ULINE /(61).
    display flights
      LOOP AT IT_SPFLI.
      WRITE: / SY-VLINE NO-GAP,
               IT_SPFLI-CARRID COLOR COL_KEY NO-GAP, SY-VLINE NO-GAP,
               IT_SPFLI-CONNID COLOR COL_NORMAL NO-GAP, SY-VLINE NO-GAP,
               IT_SPFLI-CITYFROM COLOR COL_NORMAL NO-GAP, SY-VLINE NO-GAP,
               IT_SPFLI-CITYTO COLOR COL_NORMAL NO-GAP, SY-VLINE NO-GAP,
               IT_SPFLI-DEPTIME COLOR COL_NORMAL NO-GAP, SY-VLINE NO-GAP.
      ENDLOOP.
      ULINE /(61).
    tell user what is going on
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
         EXPORTING
              PERCENTAGE = 0
               TEXT       = TEXT-007
           EXCEPTIONS
                OTHERS     = 1.
    start Excel
      CREATE OBJECT H_EXCEL 'EXCEL.APPLICATION'.
    PERFORM ERR_HDL.
      SET PROPERTY OF H_EXCEL  'Visible' = 1.
    CALL METHOD OF H_EXCEL 'FILESAVEAS' EXPORTING #1 = 'c:\kis_excel.xls'
    PERFORM ERR_HDL.
    tell user what is going on
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
         EXPORTING
              PERCENTAGE = 0
               TEXT       = TEXT-008
           EXCEPTIONS
                OTHERS     = 1.
    get list of workbooks, initially empty
      CALL METHOD OF H_EXCEL 'Workbooks' = H_MAPL.
      PERFORM ERR_HDL.
    add a new workbook
      CALL METHOD OF H_MAPL 'Add' = H_MAP.
      PERFORM ERR_HDL.
    tell user what is going on
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
         EXPORTING
              PERCENTAGE = 0
               TEXT       = TEXT-009
           EXCEPTIONS
                OTHERS     = 1.
    output column headings to active Excel sheet
      PERFORM FILL_CELL USING 1 1 1 'Flug'(001).
      PERFORM FILL_CELL USING 1 2 0 'Nr'(002).
      PERFORM FILL_CELL USING 1 3 1 'Von'(003).
      PERFORM FILL_CELL USING 1 4 1 'Nach'(004).
      PERFORM FILL_CELL USING 1 5 1 'Zeit'(005).
      LOOP AT IT_SPFLI.
    copy flights to active EXCEL sheet
        H = SY-TABIX + 1.
        PERFORM FILL_CELL USING H 1 0 IT_SPFLI-CARRID.
        PERFORM FILL_CELL USING H 2 0 IT_SPFLI-CONNID.
        PERFORM FILL_CELL USING H 3 0 IT_SPFLI-CITYFROM.
        PERFORM FILL_CELL USING H 4 0 IT_SPFLI-CITYTO.
        PERFORM FILL_CELL USING H 5 0 IT_SPFLI-DEPTIME.
      ENDLOOP.
    changes by Kishore  - start
    CALL METHOD OF H_EXCEL 'Workbooks' = H_MAPL.
      CALL METHOD OF H_EXCEL 'Worksheets' = H_MAPL." EXPORTING #1 = 2.
      PERFORM ERR_HDL.
    add a new workbook
      CALL METHOD OF H_MAPL 'Add' = H_MAP  EXPORTING #1 = 2.
      PERFORM ERR_HDL.
    tell user what is going on
      SET PROPERTY OF H_MAP 'NAME' = 'COPY'.
      CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'
         EXPORTING
              PERCENTAGE = 0
               TEXT       = TEXT-009
           EXCEPTIONS
                OTHERS     = 1.
    output column headings to active Excel sheet
      PERFORM FILL_CELL USING 1 1 1 'Flug'(001).
      PERFORM FILL_CELL USING 1 2 0 'Nr'(002).
      PERFORM FILL_CELL USING 1 3 1 'Von'(003).
      PERFORM FILL_CELL USING 1 4 1 'Nach'(004).
      PERFORM FILL_CELL USING 1 5 1 'Zeit'(005).
      LOOP AT IT_SPFLI.
    copy flights to active EXCEL sheet
        H = SY-TABIX + 1.
        PERFORM FILL_CELL USING H 1 0 IT_SPFLI-CARRID.
        PERFORM FILL_CELL USING H 2 0 IT_SPFLI-CONNID.
        PERFORM FILL_CELL USING H 3 0 IT_SPFLI-CITYFROM.
        PERFORM FILL_CELL USING H 4 0 IT_SPFLI-CITYTO.
        PERFORM FILL_CELL USING H 5 0 IT_SPFLI-DEPTIME.
      ENDLOOP.
    changes by Kishore  - end
    disconnect from Excel
         CALL METHOD OF H_EXCEL 'FILESAVEAS' EXPORTING  #1 = 'C:\SKV.XLS'.
      FREE OBJECT H_EXCEL.
      PERFORM ERR_HDL.
          FORM FILL_CELL                                                *
          sets cell at coordinates i,j to value val boldtype bold       *
    FORM FILL_CELL USING I J BOLD VAL.
      CALL METHOD OF H_EXCEL 'Cells' = H_ZL EXPORTING #1 = I #2 = J.
      PERFORM ERR_HDL.
      SET PROPERTY OF H_ZL 'Value' = VAL .
      PERFORM ERR_HDL.
      GET PROPERTY OF H_ZL 'Font' = H_F.
      PERFORM ERR_HDL.
      SET PROPERTY OF H_F 'Bold' = BOLD .
      PERFORM ERR_HDL.
    ENDFORM.
    *&      Form  ERR_HDL
          outputs OLE error if any                                       *
    -->  p1        text
    <--  p2        text
    FORM ERR_HDL.
    IF SY-SUBRC <> 0.
      WRITE: / 'Fehler bei OLE-Automation:'(010), SY-SUBRC.
      STOP.
    ENDIF.
    ENDFORM.                    " ERR_HDL
    Please note that this example maybe slow at filling the excel table
    (perhaps four fields per second on a 900 MHz machine - almost 30 seconds
    for a short example).
    To get the data on properties and methods - there is a bit of smoke and mirrors
    going on here; they are EXCEL properties and methods, not sap ones - so you need
    to look at excel help to determine how a particular function is structured. then
    build the block in sap, as shown in the example.
    If you only want to transfer the data to Excel like when you transfer the data from
    ALV to Excel simply use the Function Modules:
    XXL_SIMPLE_API
    If you want more modifications when you transfer it to Excel use:
    XXL_FULL_API

  • Downloading BW report from Portal into Excel

    Hi All,
    When a user is trying to download a BW report from Portal into Excel, it is prompting for User id and password of backend.
    But since portal has SSO this should not happen??
    Once the Uid and Pwd has been entered the report works fine.
    Why is this happening ??
    Need Urgent Help regarding this issue...
    Thanks in Advance.
    Regards,
    Shailesh Nagar

    are you connect the portal with proxy?

  • How to export ananonymus block output into excel sheet.

    Dear all,
    I want to import the dbms_output.put_line output directly into excel sheet.
    Please guide .
    thanks & regards
    Munish

    Hi Munish,
    you can't produce with dbms_output.put_line a file which is directly readable by Excel.
    You can check this post Re: Saving SQL+ output to a text file where I have posted some comments.
    Also this Re: Extract data from Oracle in excel file
    Regards.
    Alberto.

  • How to download the output of two reports in WebTemplate into excel sheet?

    How to download the output of webtemplate which consists of two reports in one  Web Template into same Excel sheet?

    hi sunil,
    here is the HTML code for 'export to excel'
    <!-- Display Export Excel--->
    <td class="SAPBEXNavLine"> <SAP_BW_TEXT program="SAPLRRSV" key="T72">" src="Mime/BEx/Icons/S_X_XLS.gif" border=0 ></td>
    you can also use BEx download scheduler to download the precalculated webtemplate report to excel sheet.
    Check the link below.
    https://websmp104.sap-ag.de/~form/sapnet?_FRAME=CONTAINER&_OBJECT=011000358700000401962004E
    i think this will help u
    regards,
    sindhu.

  • To download a list output to excel sheet

    Hi All,
    I am running the transaction MD47 for Product Group Planning.
    I get a list output with as many as 90 columns.
    When I try to download the output into an excel (System > List > Save > Local File ) only the columns which appear on the screen are being downloaded. Does any one have pointers on how can I download the whole list into an excel?
    Regards,
    Karthik

    Hey Gabriel,
    I am doing good. How are you today?
    How do I do that?
    This is a list output not an ALV. I dint find any option to choose an ALV layout.
    Regards,
    Karthik

  • The best way to get reports 6i output into Excel 97

    Hi there,
    I have a number of graphical reports that have a few group levels. These generate HTML or PDF output ok.
    I want to get the output to look as close to the HTML/PDF output from Report Server or Runtime into Excel 97.
    Outputting as HTML and importing into Excel does not work very well as Excel places all the horizontal data into one cell! This works perfectly in Excel 2000 but our client does not have this licenced so it is not a solution.
    I have thought about outputting as delimited output. This has the effect of placing all the parent group information on each detail line (it is like the group by clause has been removed if you did something similar in SQL*Plus) along with all the prompts and it looks a real mess and takes up many columns in Excel 97.
    What is the best way to approach this?
    Cheers,
    John

    If this is a client/server app, then you could use ole or dde to put the data directly into Excel.
    Chad

  • Export Simple list output to Excel sheet.

    Hi gurus,
    I have a list output as follows.
    A main header
    Sub header 1
    table entries.
    sub header 2.
    table entries ,......etc.
    now i want to export the same format to an excel sheet which need to sent as a mail attachment.
    Is there any FM for this ? i dont want the format to be disturbed.
    can headers and other entries defferentiated with colors ?
    kindly help on this.
    Edited by: deepan adhi on Oct 4, 2009 9:52 AM

    write the list to memory,
    and the read this memory into an internal table.  this will be exactly the same way as its printed on your screen. download it.
    or
    create an internal table of type string, add pass data from your final internal table in the exact way you are putting it in the output.
    and download this string internal table.

  • Vk13 report to convert into excel sheet based

    Hi
    VK13 is a SD transaction,if we execute this we get the sales prices,
    MY client is in requirement of above VK13 output result data  in excel sheet,
    there is no option available in settings for this screen to convert in to excel sheet.
    Plz throw some light on this issue
    Thanks
    Krishna

    Since here SD module is not implemented.
    I am not able to generate the report.
    You can try this Go to system > List > Save.
    Award Points if useful

  • Download a page's content into Excel sheet

    Hi All,
    I generate a JSP Page with contents retrieved by querying the DB. The JSP Page displays say, 10 rows of records. I need to populate these rows of records into an excel sheet and download the excel sheet on click of an Icon or button.
    How do I achieve this? Please guide.
    Thanks.

    POI-HSSF is a Java API to access/create Excel format files. Below is a code snippet to write a table's column names to an excel sheet using this API.
    import org.apache.poi.hssf.util.*;
    import org.apache.poi.hssf.usermodel.*;
    File excelFile = null;
    // Open a temporary file to write to
    excelFile = File.createTempFile("excel", ".xls");
    FileOutputStream fos = new FileOutputStream(excelFile);
    BufferedOutputStream bos = new BufferedOutputStream(fos);
    // Create a Workbook with one work sheet
    HSSFWorkbook wb = new HSSFWorkbook();
    HSSFSheet sheet = wb.createSheet("WorkSheet1");
    HSSFCellStyle cs = wb.createCellStyle();
    HSSFFont f = wb.createFont();
    f.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
    cs.setFont(f);
    Class.forName(" /*driver name goes here.....*/ ");
    Connection connection = DriverManager.getConnection(connectionURL );
    Statement statement = connection.createStatement();
    String query = "select * from table1";
    ResultSet resultSet = statement.executeQuery(query);
    ResultSetMetaData rsMetaData = resultSet.getMetaData();
    int colCount = rsMetaData.getColumnCount();
    HSSFRow titleRow = sheet.createRow((short) 0);
    HSSFCell titleCell = titleRow.createCell((short) 1);
    titleCell.setCellValue("TABLE DATA");
    titleCell.setCellStyle(cs);
    sheet.addMergedRegion(new Region(0,(short)1,0,(short)2));
    HSSFRow headerRow = sheet.createRow(2);
    HSSFCell headerCell[] = new HSSFCell[colCount-1];
    for( int i=0; i<colCount-1; i++ )
             headerCell[i] = headerRow.createCell((short) i, HSSFCell.CELL_TYPE_STRING);
             headerCell.setCellValue( rsMetaData.getColumnName(i+1) );
    headerCell[i].setCellStyle(cs);
    Iffat Tahsin                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • How to download output into Excel with Header?

    Dear Friends,
        I want to download a my list output into excel format with <b>Column heading</b>. How will I do this?
        Another question is i want name of database table in Which SAP stores <b>DDIC object name and its property</b>, so that i can write Select * from ' ' where .... For example i have table ZABC with three fields so i need In which table it stores ZABC as table and a table in which it stores Its field name.

    Hi,
    Look at the sample code for Download into Excel.
    data: begin of excel_sum_it occurs 0,
          bukrs(80),
          belnr(80),
          gjahr(80),
          blart(80),
          budat like bkpf-budat,
          monat(80),
          cpudt like bkpf-cpudt,
          cputm like bkpf-cputm,
          usnam(80),
          tcode(80),
          xblnr(80),
          waers(80),
          dwrbtr(25),
          cwrbtr(25),
          end of excel_sum_it.
    data: begin of titles_it occurs 10,
          title(80),
    end of titles_it.
    at user-command.
      case sy-ucomm.
        when 'SUMMARY'.
          perform summary_download.
        when 'DETAIL'.
          perform detail_download.
        when others.
      endcase.
    ******Create one PF-STATUS for one push button for download.
    Before this FM you need to move your date to Execl_sum_it Internal table.
    For example here I used this table for down load.
    *&      Form  summary_download
          text
    -->  p1        text
    <--  p2        text
    form summary_download.
      data: fname like rlgrap-filename value 'Summary_Details.xls'.
      perform fill_titles.
      check not excel_sum_it[] is initial.
      call function 'DOWNLOAD'
           exporting
                filename                = fname
                filetype                = 'DAT'
           tables
                data_tab                = excel_sum_it
                fieldnames              = titles_it
           exceptions
                invalid_filesize        = 1
                invalid_table_width     = 2
                invalid_type            = 3
                no_batch                = 4
                unknown_error           = 5
                gui_refuse_filetransfer = 6
                customer_error          = 7
                others                  = 8.
      if sy-subrc ne 0.
        message e000 with text-e07.
      endif.
    endform.                    " summary_download
    *&      Form  fill_titles
          text
    -->  p1        text
    <--  p2        text
    form fill_titles.
      refresh titles_it.
      concatenate text-h06 text-h16 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h07 text-h17 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h08 text-h18 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h07 text-h19 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h09 text-h20 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h08 text-h21 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h11 text-h22 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h11 text-h23 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h12 text-h24  into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h13 text-h25 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h07 text-h26 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h13 text-h28  into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h14 text-h27 into titles_it-title
                                          separated by space.
      append titles_it.
      concatenate text-h15 text-h27 into titles_it-title
                                          separated by space.
      append titles_it.
    endform.                    " fill_titles
    ***Here in the FILL_TITLES you give you own HEADER .
    Thanks.
    If this helps you reward with points.

  • How to export report output into excel.

    Hi all
    how to export report output into excel sheet can any on give me answer step by step please as soon as possible
    kk

    Hi Prashanth,
    If you are executing Query from WAD  ---> Right click on Table (only on Characteristics Data)  --> Enhanced Menu ---> Export as --> CSV file or MS Excel
    assign points if this helps,
    Thanks,
    Sudhakar

  • Std Oracle Report output to Excel Sheet

    I'm supposed to make changes to Standard Oracle Report such that the changes of Oracle Standard Report should be Excel output. One of the ways of doing this is to develop the whole report again in Discoverer as it has the feature of outputing into Excel Sheet. I would appreciate if someone can suggest me other ways of achieving it.
    Thanks
    Bobby

    Hi,
    even i am trying to do the same with my reports. Though it is possible to convert the reports to excel using the DESFORMAT attribute on the reports service, I am not able to preserver all the format in the excel sheet.
    I do not want to use rep2excel but want to implement the same idea on my reports service. Is it possible
    thanks

  • Download Sales Contract data into Excel sheet

    Hi,
    I need to download the Sales Contract Data into excel sheet is there a Function module that i can use?? Else how do i go about it. Kindly help.
    Thanks,
    Riya.

    use the function module FUNCTION 'GUI_DOWNLOAD'
    CALL FUNCTION 'GUI_DOWNLOAD'
    EXPORTING
    BIN_FILESIZE =
    filename = 'C:\REPORT.XLS'
    FILETYPE = 'ASC'
    APPEND = ' '
    WRITE_FIELD_SEPARATOR = 'X'
    HEADER = '00'
    TRUNC_TRAILING_BLANKS = ' '
    WRITE_LF = 'X'
    COL_SELECT = ' '
    COL_SELECT_MASK = ' '
    DAT_MODE = ' '
    CONFIRM_OVERWRITE = ' '
    NO_AUTH_CHECK = ' '
    CODEPAGE = ' '
    IGNORE_CERR = ABAP_TRUE
    REPLACEMENT = '#'
    WRITE_BOM = ' '
    TRUNC_TRAILING_BLANKS_EOL = 'X'
    WK1_N_FORMAT = ' '
    WK1_N_SIZE = ' '
    WK1_T_FORMAT = ' '
    WK1_T_SIZE = ' '
    IMPORTING
    FILELENGTH =
    tables
    data_tab = IT_PR
    FIELDNAMES =
    EXCEPTIONS
    FILE_WRITE_ERROR = 1
    NO_BATCH = 2
    GUI_REFUSE_FILETRANSFER = 3
    INVALID_TYPE = 4
    NO_AUTHORITY = 5
    UNKNOWN_ERROR = 6
    HEADER_NOT_ALLOWED = 7
    SEPARATOR_NOT_ALLOWED = 8
    FILESIZE_NOT_ALLOWED = 9
    HEADER_TOO_LONG = 10
    DP_ERROR_CREATE = 11
    DP_ERROR_SEND = 12
    DP_ERROR_WRITE = 13
    UNKNOWN_DP_ERROR = 14
    ACCESS_DENIED = 15
    DP_OUT_OF_MEMORY = 16
    DISK_FULL = 17
    DP_TIMEOUT = 18
    FILE_NOT_FOUND = 19
    DATAPROVIDER_EXCEPTION = 20
    CONTROL_FLUSH_ERROR = 21
    OTHERS = 22
    IF sy-subrc 0.
    MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.
    ENDIF.

  • Downloading the data into excel sheet , how can i maintain page numbers

    I need some information. In output screen pagenumber is displayed.
    when i am downloading the data from se38 into excel sheet.
    How can i write the code to display the page number in excel sheet . waiting for your response

    Hi
    Please see below code for ur requirement.
    DATA: BEGIN OF li_field OCCURS 0,
              field(16) TYPE c,
           END OF li_field.
      CLEAR li_field[].
      REFRESH li_field.
      li_field-field = text-t01.
      APPEND li_field.
      CLEAR  li_field.
      li_field-field = text-006.
      APPEND li_field.
      CLEAR  li_field.
      li_field-field = text-t04.
      APPEND li_field.
      CLEAR  li_field.
      li_field-field = text-t05.
      APPEND li_field.
      CLEAR  li_field.
      CALL FUNCTION 'MS_EXCEL_OLE_STANDARD_DAT'
        EXPORTING
          file_name                 = file_path
        TABLES
          data_tab                  = data_table
          fieldnames                = li_field
        EXCEPTIONS
          file_not_exist            = 1
          filename_expected         = 2
          communication_error       = 3
          ole_object_method_error   = 4
          ole_object_property_error = 5
          invalid_pivot_fields      = 6
          download_problem          = 7
          OTHERS                    = 8.
    please reward points if helpful

Maybe you are looking for

  • Slow file open and save across airport network

    Hello - I just purchased an Airport Extreme base station and am having some problems. I could not seem to find an answer to this issue in the archives. I have a small architecture firm and have 3 computers networked together (iBook G4, mac-mini, and

  • Low quality in iMovie Export

    iMovie is a great program. Unfortunately the export quality is not very good. I have tried several codecs (Apple Intermediate Codec, H.264, ++), but the result is drastic quality reduction. Very visible in dark areas and peoples faces were the no. of

  • OpenComm Error on Satellite M35-S359

    I get OpenComm Error when I try to query the modem. The error number is 000005aa. The message box states that there is probably a conflict with some other device. I have checked for conflicts and there is none. I have also reinstalled the device and

  • Ls does not show moved files on share points

    We run an XServe G5, and we've recently had a problem with Linux clients connecting up to the share points on the server and not being able to see recently moved files in linux. Any suggestions or assistance would be welcome.

  • Failed to export error message

    I've been trying to convert a pdf to an excel document. I have received the "failed to export" message multiple times through Adobe Reader and also directly to the website. What is going wrong? My file is 29 mb scanned.