Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

How to export to EXCEL result of transaction

former_member192851
Active Participant
0 Kudos

Hi, all!

I have transaction IH08. And i call it with predefined bdcdata

 

CALL TRANSACTION 'IH08' USING BDCDATA_tab MODE 'E'

messages into ITAB .

As a result i have some table.

I can manually save this table in EXCEL with Shift+F4 and so on...

How to code this functionality in ABAP? How to save result of transaction in EXCEL file automatically?

I have read a lot of threads..

If i will have some internal table - i'll easy export this internal table to EXCEL file.

How to get internal table after CALL TRANSACTION 'IH08' ? Or how to run transaction and get result in internal table ?

7 REPLIES 7

former_member189849
Contributor
0 Kudos

HI

http://wiki.sdn.sap.com/wiki/display/ABAP/Exporting+data+to+Excel+-+XML+to+the+rescue

follow this link for save the data into excel.

Regards

Mahesh

0 Kudos

Thanks for reply!

There in code we work with internal table.

Question is - where i can find or create or something else that internal table?

I call transaction and... What next?

I don't see any internal table..

Maybe i should define one and import to is from transaction or something like that?

0 Kudos

http://scn.sap.com/thread/331842

see this link i hope u can understand the procedure

Regards

Mahesh

0 Kudos

Thats look great. Thank you very much.

former_member192851
Active Participant
0 Kudos

 

REPORT .

 

*&----------------------------------------------------*

*& TYPES *

*&----------------------------------------------------*

 

TYPES: BEGIN OF ty_titles,

title(20) TYPE c,

field(20) TYPE c,

END OF ty_titles.

 

*&----------------------------------------------------*

*& INTERNAL TABLES *

*&----------------------------------------------------*

 

DATA: t_titles TYPE STANDARD TABLE OF ty_titles.

 

 

*&----------------------------------------------------*

*& FIELD-SYMBOLS *

*&----------------------------------------------------*

 

FIELD-SYMBOLS: <fs_titles> LIKE LINE OF t_titles,

<fs> TYPE ANY.

 

*&----------------------------------------------------*

*& SELECTION-SCREEN *

*&----------------------------------------------------*

 

PARAMETERS pa_class TYPE KLAH-class .

PARAMETERS pa_dateb(10) TYPE c.

PARAMETERS pa_datev(10) TYPE c .

PARAMETERS: p_file TYPE rlgrap-filename.

 

 

*&----------------------------------------------------*

*& VARIABLES *

*&----------------------------------------------------*

 

DATA: bdcdata_wa TYPE bdcdata,

bdcdata_tab TYPE TABLE OF bdcdata.

DATA: ITAB TYPE TABLE OF BDCMSGCOLL.

DATA: filename TYPE string,

path TYPE string,

fullpath TYPE string.

DATA: data_titles TYPE REF TO data.

data: lo_ALV type ref to cl_gui_alv_grid.

 

*&----------------------------------------------------*

*& AT SELECTION-SCREEN *

*&----------------------------------------------------*

 

AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

CALL METHOD cl_gui_frontend_services=>file_save_dialog

EXPORTING

window_title = 'Select archive'

default_extension = 'xls'

file_filter = '*.xls'

CHANGING

filename = filename

path = path

fullpath = fullpath.

IF sy-subrc EQ 0.

p_file = fullpath.

ENDIF.

 

*&----------------------------------------------------*

*& Form get_titles *

*&----------------------------------------------------*

 

FORM get_titles.

CREATE DATA data_titles TYPE ty_titles.

ASSIGN data_titles->* TO <fs_titles>.

<fs_titles>-title = 'Техническое место'.

<fs_titles>-field = 'TPLNR'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Название технического места'.

<fs_titles>-field = 'PLTXT'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Вышестоящая EO'.

<fs_titles>-field = 'HEQUI'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Ед. оборудования'.

<fs_titles>-field = 'EO'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Вид объекта'.

<fs_titles>-field = 'EQART'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Название технического объекта'.

<fs_titles>-field = 'EQKTX'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Название типа'.

<fs_titles>-field = 'TYPENAME'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'СерНомерИзгот'.

<fs_titles>-field = 'SNUMBER'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Изготовит. установки'.

<fs_titles>-field = 'HERST'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Год выпуска'.

<fs_titles>-field = 'DYEAR'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Действ. С.'.

<fs_titles>-field = 'DATEB'.

APPEND <fs_titles> TO t_titles.

<fs_titles>-title = 'Действ. по'.

<fs_titles>-field = 'DATEV'.

APPEND <fs_titles> TO t_titles.

 

 

ENDFORM. "get_titles

*&----------------------------------------------------*

*& START-OF-SELECTION *

*&----------------------------------------------------*

START-OF-SELECTION.

CLEAR bdcdata_wa.

bdcdata_wa-program = 'RIEQUI20'.

bdcdata_wa-dynpro = '1000'.

bdcdata_wa-dynbegin = 'X'.

APPEND bdcdata_wa TO bdcdata_tab.

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'DATUV'.

bdcdata_wa-fval = pa_datev.

APPEND bdcdata_wa TO bdcdata_tab.

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'DATUB'.

bdcdata_wa-fval = pa_dateb.

APPEND bdcdata_wa TO bdcdata_tab.

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'DY_KLART'.

bdcdata_wa-fval = '002'.

APPEND bdcdata_wa TO bdcdata_tab.

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'DY_CLASS'.

bdcdata_wa-fval = pa_class.

APPEND bdcdata_wa TO bdcdata_tab.

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'SWERK-LOW'.

bdcdata_wa-fval = '0010'.

APPEND bdcdata_wa TO bdcdata_tab.

 

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'VARIANT'.

bdcdata_wa-fval = '/MTBF'.

APPEND bdcdata_wa TO bdcdata_tab.

CLEAR bdcdata_wa.

bdcdata_wa-fnam = 'BDC_OKCODE'.

bdcdata_wa-fval = '=OKAY'.

APPEND bdcdata_wa TO bdcdata_tab.

CALL TRANSACTION 'IH08' USING BDCDATA_tab MODE 'E'

messages into ITAB .

   

PERFORM get_titles .

CALL FUNCTION 'MS_EXCEL_OLE_STANDARD_DAT'

EXPORTING

file_name = p_file " path offile where u need to download

 

* CREATE_PIVOT = 0

* DATA_SHEET_NAME = ' '

* PIVOT_SHEET_NAME = ' '

* PASSWORD = ' '

* PASSWORD_OPTION = 0

 

TABLES

 

* PIVOT_FIELD_TAB =

 

data_tab = ???????????? "internal table with data

fieldnames = t_titles "internal table with header

EXCEPTIONS

file_not_exist = 1

filename_expected = 2

communication_error = 3

ole_object_method_error = 4

ole_object_property_error = 5

invalid_filename = 6

invalid_pivot_fields = 7

download_problem = 8

OTHERS = 9

.

IF sy-subrc <> 0.

 

* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

* WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

 

ENDIF.

0 Kudos

Data_tab is optional in fm.

Regards

Mahesh

Former Member
0 Kudos

Moderator message - basic question locked and points unassigned.

Rob