*&---------------------------------------------------------------------* *& Report ZDEMO_EXCEL1 *& *&---------------------------------------------------------------------* *& *& *&---------------------------------------------------------------------* REPORT zdemo_excel25. DATA: lo_excel TYPE REF TO zcl_excel, lo_excel_writer TYPE REF TO zif_excel_writer, lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_hyperlink TYPE REF TO zcl_excel_hyperlink, column_dimension TYPE REF TO zcl_excel_worksheet_columndime. DATA: lv_file TYPE xstring, lv_bytecount TYPE i, lt_file_tab TYPE solix_tab, ls_file_tab TYPE solix. DATA: lv_full_path TYPE string, lv_workdir TYPE string, lv_filename TYPE string, lv_file_separator TYPE c. CONSTANTS: lv_default_file_name TYPE string VALUE '/tmp/25_HelloWorld.xlsx'. " Creates active sheet CREATE OBJECT lo_excel. " Get active sheet lo_worksheet = lo_excel->get_active_worksheet( ). lo_worksheet->set_title( ip_title = 'Sheet1' ). lo_worksheet->set_cell( ip_column = 'B' ip_row = 2 ip_value = 'Hello world' ). CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. lv_file = lo_excel_writer->write_file( lo_excel ). " Convert to binary CALL FUNCTION 'SCMS_XSTRING_TO_BINARY' EXPORTING buffer = lv_file IMPORTING output_length = lv_bytecount TABLES binary_tab = lt_file_tab. OPEN DATASET lv_default_file_name FOR OUTPUT IN BINARY MODE. LOOP AT lt_file_tab INTO ls_file_tab. TRANSFER ls_file_tab TO lv_default_file_name. ENDLOOP. CLOSE DATASET lv_default_file_name.