Demo reports have no longer fixed output

git-svn-id: https://subversion.assembla.com/svn/abap2xlsx/trunk@22 b7d68dce-7c3c-4a99-8ce0-9ea847f5d049
This commit is contained in:
Ivan Femia 2010-09-24 13:50:05 +00:00
parent e6f84e7b51
commit 72b99e10da
21 changed files with 1377 additions and 1022 deletions

View File

@ -1,8 +1,9 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100817" UNAM="FEMIA" UDAT="20100923" VERN="000018" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100923" STIME="233645" IDATE="20100923" ITIME="233645" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100817" UNAM="FEMIA" UDAT="20100924" VERN="000023" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153901" IDATE="20100924" ITIME="153901" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Run all ABAP2XLSX Demo Programs" LENGTH="31 "/> <textElement ID="R" ENTRY="Run all ABAP2XLSX Demo Programs" LENGTH="31 "/>
<textElement ID="S" KEY="P_PATH" ENTRY=" Select output path" LENGTH="26 "/>
</language> </language>
</textPool> </textPool>
<source>*&amp;---------------------------------------------------------------------* <source>*&amp;---------------------------------------------------------------------*
@ -15,23 +16,42 @@
REPORT zdemo_excel. REPORT zdemo_excel.
SUBMIT zdemo_excel1 AND RETURN. &quot; Hello world DATA: lv_workdir TYPE string.
SUBMIT zdemo_excel2 AND RETURN. &quot; Styles
SUBMIT zdemo_excel3 AND RETURN. &quot; iTab binding PARAMETERS: p_path TYPE string.
SUBMIT zdemo_excel4 AND RETURN. &quot; Multi sheets and page setup
SUBMIT zdemo_excel5 AND RETURN. &quot; Conditional formatting AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
SUBMIT zdemo_excel6 AND RETURN. &quot; Formulas
SUBMIT zdemo_excel7 AND RETURN. &quot; Conditional formatting cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
SUBMIT zdemo_excel8 AND RETURN. &quot; Ranges CHANGING selected_folder = p_path ).
SUBMIT zdemo_excel9 AND RETURN. &quot; Data validation
SUBMIT zdemo_excel10 AND RETURN. &quot; Bind table with field catalog INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
SUBMIT zdemo_excel1 with p_path = p_path AND RETURN. &quot; Hello world
SUBMIT zdemo_excel2 with p_path = p_path AND RETURN. &quot; Styles
SUBMIT zdemo_excel3 with p_path = p_path AND RETURN. &quot; iTab binding
SUBMIT zdemo_excel4 with p_path = p_path AND RETURN. &quot; Multi sheets and page setup
SUBMIT zdemo_excel5 with p_path = p_path AND RETURN. &quot; Conditional formatting
SUBMIT zdemo_excel6 with p_path = p_path AND RETURN. &quot; Formulas
SUBMIT zdemo_excel7 with p_path = p_path AND RETURN. &quot; Conditional formatting
SUBMIT zdemo_excel8 with p_path = p_path AND RETURN. &quot; Ranges
SUBMIT zdemo_excel9 with p_path = p_path AND RETURN. &quot; Data validation
SUBMIT zdemo_excel10 with p_path = p_path AND RETURN. &quot; Bind table with field catalog
&quot; zdemo_excel11 is not added because it has a selection screen and &quot; zdemo_excel11 is not added because it has a selection screen and
&quot; you also need to have business partners maintained in transaction BP &quot; you also need to have business partners maintained in transaction BP
SUBMIT zdemo_excel12 AND RETURN. &quot; Column size SUBMIT zdemo_excel12 with p_path = p_path AND RETURN. &quot; Column size
SUBMIT zdemo_excel13 AND RETURN. &quot; Merge cell SUBMIT zdemo_excel13 with p_path = p_path AND RETURN. &quot; Merge cell
SUBMIT zdemo_excel14 AND RETURN. &quot; Alignment SUBMIT zdemo_excel14 with p_path = p_path AND RETURN. &quot; Alignment
SUBMIT zdemo_excel15 AND RETURN. &quot; Read Excel and write it back SUBMIT zdemo_excel15 with p_path = p_path AND RETURN. &quot; Read Excel and write it back
SUBMIT zdemo_excel16 AND RETURN. &quot; Read Excel and write it back SUBMIT zdemo_excel16 with p_path = p_path AND RETURN. &quot; Drawing
SUBMIT zdemo_excel17 AND RETURN. &quot; Lock sheet SUBMIT zdemo_excel17 with p_path = p_path AND RETURN. &quot; Lock sheet
SUBMIT zdemo_excel18 AND RETURN. &quot; Lock workbook</source> SUBMIT zdemo_excel18 with p_path = p_path AND RETURN. &quot; Lock workbook</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL1" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100904" VERN="000036" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163357" IDATE="20100904" ITIME="183249" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL1" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000062" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153901" IDATE="20100924" ITIME="153901" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -21,7 +21,34 @@ DATA: lo_excel TYPE REF TO zcl_excel,
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;01_HelloWorld.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -36,21 +63,13 @@ lo_worksheet-&gt;set_cell( ip_column = &apos;C&apos; ip_row = 3 ip_value = sy-uz
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = xstrlen( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\HelloWorld.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL10" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100719" UNAM="VONDRUSKA" UDAT="20100917" VERN="000058" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100917" STIME="105913" IDATE="20100917" ITIME="105913" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL10" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100719" UNAM="FEMIA" UDAT="20100924" VERN="000061" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153901" IDATE="20100924" ITIME="153901" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,17 +16,46 @@
REPORT zdemo_excel10. REPORT zdemo_excel10.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_conditional2 TYPE REF TO zcl_excel_style_conditional, lo_style_conditional2 TYPE REF TO zcl_excel_style_conditional,
column_dimension TYPE REF TO zcl_excel_worksheet_columndime. column_dimension TYPE REF TO zcl_excel_worksheet_columndime.
DATA: lt_field_catalog TYPE zexcel_t_fieldcatalog,
ls_field_catalog TYPE zexcel_s_fieldcatalog,
ls_table_settings TYPE zexcel_s_table_settings.
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_field_catalog TYPE zexcel_t_fieldcatalog, lt_file_tab TYPE solix_tab.
ls_field_catalog TYPE zexcel_s_fieldcatalog,
ls_table_settings TYPE zexcel_s_table_settings, DATA: lv_file_name TYPE string,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;10_iTabFieldCatalog.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
FIELD-SYMBOLS: &lt;fs_field_catalog&gt; TYPE zexcel_s_fieldcatalog. FIELD-SYMBOLS: &lt;fs_field_catalog&gt; TYPE zexcel_s_fieldcatalog.
@ -79,24 +108,16 @@ lo_worksheet-&gt;bind_table( ip_table = lt_test
column_dimension = lo_worksheet-&gt;get_column_dimension( &apos;D&apos; ). &quot;make date field a bit wider column_dimension = lo_worksheet-&gt;get_column_dimension( &apos;D&apos; ). &quot;make date field a bit wider
column_dimension-&gt;set_width( ip_width = 13 ). column_dimension-&gt;set_width( ip_width = 13 ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\iTabFieldCatalog.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL11" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100809" UNAM="VONDRUSKA" UDAT="20100917" VERN="000041" RSTAT="K" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100917" STIME="110149" IDATE="20100917" ITIME="110149" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL11" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100809" UNAM="FEMIA" UDAT="20100924" VERN="000043" RSTAT="K" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153901" IDATE="20100924" ITIME="153901" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Export Organisation and Contact Persons using ABAP2XLSX" LENGTH="55 "/> <textElement ID="R" ENTRY="Export Organisation and Contact Persons using ABAP2XLSX" LENGTH="55 "/>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL12" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100811" UNAM="VONDRUSKA" UDAT="20100917" VERN="000024" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100917" STIME="110247" IDATE="20100917" ITIME="110247" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL12" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100811" UNAM="FEMIA" UDAT="20100924" VERN="000027" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Hide Columns" LENGTH="12 "/> <textElement ID="R" ENTRY="Hide Columns" LENGTH="12 "/>
@ -23,7 +23,35 @@ DATA: lo_excel TYPE REF TO zcl_excel,
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;12_HideSizeOutlineRowsAndColumns.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -75,21 +103,13 @@ row_dimension-&gt;set_outline_level( 2 ).
create object lo_excel_writer type zcl_excel_writer_2007. create object lo_excel_writer type zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = xstrlen( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( exporting bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\HideSizeOutlineRowsAndColumns.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES changing data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL13" VARCL="X" SUBC="1" CNAM="ATEJADA" CDAT="20100812" UNAM="FEMIA" UDAT="20100905" VERN="000018" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="164207" IDATE="20100905" ITIME="164207" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL13" VARCL="X" SUBC="1" CNAM="ATEJADA" CDAT="20100812" UNAM="FEMIA" UDAT="20100924" VERN="000022" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,17 +16,45 @@
REPORT zdemo_excel13. REPORT zdemo_excel13.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_range TYPE REF TO zcl_excel_range, lo_range TYPE REF TO zcl_excel_range,
lv_file TYPE xstring,
lv_style_number_guid TYPE zexcel_cell_style, lv_style_number_guid TYPE zexcel_cell_style,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1,
lv_style_bold_border_guid TYPE zexcel_cell_style, lv_style_bold_border_guid TYPE zexcel_cell_style,
lo_style_bold_border TYPE REF TO zcl_excel_style, lo_style_bold_border TYPE REF TO zcl_excel_style,
lo_border_dark TYPE REF TO zcl_excel_style_border. lo_border_dark TYPE REF TO zcl_excel_style_border.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;13_MergedCells.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
&quot; Get active sheet &quot; Get active sheet
@ -55,23 +83,16 @@ lo_worksheet-&gt;set_cell( ip_row = 2 ip_column = &apos;F&apos; ip_value = &apos
lo_worksheet-&gt;set_cell( ip_row = 2 ip_column = &apos;G&apos; ip_value = &apos;&apos; ip_style = lv_style_bold_border_guid ). lo_worksheet-&gt;set_cell( ip_row = 2 ip_column = &apos;G&apos; ip_value = &apos;&apos; ip_style = lv_style_bold_border_guid ).
lo_worksheet-&gt;set_merge( ip_row = 2 ip_column_start = &apos;B&apos; ip_column_end = &apos;G&apos; ). lo_worksheet-&gt;set_merge( ip_row = 2 ip_column_start = &apos;B&apos; ip_column_end = &apos;G&apos; ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Merged_Cells.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL14" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100817" UNAM="FEMIA" UDAT="20100912" VERN="000038" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100912" STIME="205336" IDATE="20100912" ITIME="205336" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL14" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100817" UNAM="FEMIA" UDAT="20100924" VERN="000041" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -18,9 +18,6 @@ REPORT zdemo_excel14.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer TYPE REF TO zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1,
lo_style_center TYPE REF TO zcl_excel_style, lo_style_center TYPE REF TO zcl_excel_style,
lo_style_right TYPE REF TO zcl_excel_style, lo_style_right TYPE REF TO zcl_excel_style,
lo_style_left TYPE REF TO zcl_excel_style, lo_style_left TYPE REF TO zcl_excel_style,
@ -48,6 +45,36 @@ DATA: lo_excel TYPE REF TO zcl_excel,
DATA: lo_row_dimension TYPE REF TO zcl_excel_worksheet_rowdimensi. DATA: lo_row_dimension TYPE REF TO zcl_excel_worksheet_rowdimensi.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;14_Alignment.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -149,20 +176,13 @@ lo_worksheet-&gt;set_cell( ip_row = 10 ip_column = &apos;D&apos;
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Alignment.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL15" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100820" UNAM="FEMIA" UDAT="20100905" VERN="000007" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100915" STIME="094448" IDATE="20100905" ITIME="164325" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL15" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100820" UNAM="FEMIA" UDAT="20100924" VERN="000012" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="ABAP2XLSX Reader Demo" LENGTH="21 "/> <textElement ID="R" ENTRY="ABAP2XLSX Reader Demo" LENGTH="21 "/>
@ -21,32 +21,51 @@ DATA: excel TYPE REF TO zcl_excel,
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_workdir TYPE string,
lv_path TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;15_iTabFromReader.xlsx&apos;,
lv_default_input TYPE string VALUE &apos;03_iTab.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
TRY. TRY.
CONCATENATE p_path lv_file_separator lv_default_input INTO lv_path.
CREATE OBJECT reader TYPE zcl_excel_reader_2007. CREATE OBJECT reader TYPE zcl_excel_reader_2007.
excel = reader-&gt;load_file( &apos;C:\iTab.xlsx&apos; ). excel = reader-&gt;load_file( lv_path ).
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( excel ). lv_file = lo_excel_writer-&gt;write_file( excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\iTabFromReader.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).
data_tab = lt_file_tab.
CATCH zcx_excel. &quot; Exceptions for ABAP2XLSX CATCH zcx_excel. &quot; Exceptions for ABAP2XLSX
ENDTRY.</source> ENDTRY.</source>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL16" VARCL="X" SUBC="1" CNAM="VONDRUSKA" CDAT="20100914" UNAM="VONDRUSKA" UDAT="20100917" VERN="000051" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100917" STIME="082516" IDATE="20100917" ITIME="082516" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL16" VARCL="X" SUBC="1" CNAM="VONDRUSKA" CDAT="20100914" UNAM="FEMIA" UDAT="20100924" VERN="000054" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel - drawings" LENGTH="25 "/> <textElement ID="R" ENTRY="Test for excel - drawings" LENGTH="25 "/>
@ -23,7 +23,31 @@ DATA: lo_excel TYPE REF TO zcl_excel,
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;16_Drawings.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -113,21 +137,13 @@ lo_worksheet-&gt;add_drawing( lo_drawing ).
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Drawings.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL17" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100921" UNAM="FEMIA" UDAT="20100922" VERN="000016" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100922" STIME="001419" IDATE="20100922" ITIME="001419" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL17" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100921" UNAM="FEMIA" UDAT="20100924" VERN="000018" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -19,10 +19,35 @@ DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer TYPE REF TO zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_protection TYPE REF TO zcl_excel_style, lo_style_protection TYPE REF TO zcl_excel_style,
lv_style_protection_guid TYPE zexcel_cell_style, lv_style_protection_guid TYPE zexcel_cell_style.
lv_file TYPE xstring,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;17_SheetProtection.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -45,20 +70,13 @@ lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Protection.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL18" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100923" UNAM="FEMIA" UDAT="20100923" VERN="000016" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100923" STIME="233508" IDATE="20100923" ITIME="233508" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL18" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100923" UNAM="FEMIA" UDAT="20100924" VERN="000019" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -19,10 +19,35 @@ DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer TYPE REF TO zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_protection TYPE REF TO zcl_excel_style, lo_style_protection TYPE REF TO zcl_excel_style,
lv_style_protection_guid TYPE zexcel_cell_style, lv_style_protection_guid TYPE zexcel_cell_style.
lv_file TYPE xstring,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;18_BookProtection.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -39,20 +64,13 @@ lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;C&apos; ip_value = &apos
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Protection.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL2" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100905" VERN="000017" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163545" IDATE="20100905" ITIME="163545" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL2" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000022" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test Styles for ABAP2XLSX" LENGTH="25 "/> <textElement ID="R" ENTRY="Test Styles for ABAP2XLSX" LENGTH="25 "/>
@ -16,7 +16,7 @@
REPORT zdemo_excel2. REPORT zdemo_excel2.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_bold TYPE REF TO zcl_excel_style, lo_style_bold TYPE REF TO zcl_excel_style,
lo_style_underline TYPE REF TO zcl_excel_style, lo_style_underline TYPE REF TO zcl_excel_style,
@ -35,7 +35,34 @@ DATA: lv_style_bold_guid TYPE zexcel_cell_style,
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;02_Styles.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -94,24 +121,16 @@ lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 6 ip_value =
&quot; Change the style &quot; Change the style
lo_worksheet-&gt;set_cell_style( ip_column = &apos;B&apos; ip_row = 6 ip_style = lv_style_filled_green_guid ). lo_worksheet-&gt;set_cell_style( ip_column = &apos;B&apos; ip_row = 6 ip_style = lv_style_filled_green_guid ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Styles.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL3" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100905" VERN="000019" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163630" IDATE="20100905" ITIME="163630" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL3" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000024" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool/> <textPool/>
<source>*&amp;---------------------------------------------------------------------* <source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL *&amp; Report ZIFE_TEST_EXCEL
@ -12,7 +12,7 @@
REPORT zdemo_excel3. REPORT zdemo_excel3.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
column_dimension TYPE REF TO zcl_excel_worksheet_columndime. column_dimension TYPE REF TO zcl_excel_worksheet_columndime.
@ -20,7 +20,34 @@ DATA: ls_table_settings TYPE zexcel_s_table_settings.
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;03_iTab.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -46,21 +73,13 @@ column_dimension-&gt;set_width( 11 ).
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\iTab.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL4" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="VONDRUSKA" UDAT="20100921" VERN="000034" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100921" STIME="073036" IDATE="20100921" ITIME="073036" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL4" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000040" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -21,7 +21,34 @@ DATA: lo_excel TYPE REF TO zcl_excel,
DATA: lv_file TYPE xstring, DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;04_Sheets.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -50,21 +77,13 @@ lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 2 ip_value = &apos
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot; Convert to binary * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Sheets.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL5" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100905" VERN="000015" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163754" IDATE="20100905" ITIME="163754" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL5" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000020" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,12 +16,40 @@
REPORT zdemo_excel5. REPORT zdemo_excel5.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional, lo_style_conditional TYPE REF TO zcl_excel_style_conditional.
lv_file TYPE xstring,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;05_Conditional.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -44,23 +72,16 @@ lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;C&apos; ip_value = 150 )
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = 10 ). lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = 10 ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = 500 ). lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = 500 ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\CondFormatting.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL6" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100905" VERN="000021" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163817" IDATE="20100905" ITIME="163817" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL6" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000026" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,11 +16,39 @@
REPORT zdemo_excel6. REPORT zdemo_excel6.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet.
lv_file TYPE xstring,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;06_Formulas.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -34,23 +62,16 @@ lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = -10
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = 500 ). lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = 500 ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;C&apos; ip_formula = &apos;SUM(C4:C8)&apos; ). lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;C&apos; ip_formula = &apos;SUM(C4:C8)&apos; ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Formula.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL7" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100905" VERN="000017" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163844" IDATE="20100905" ITIME="163844" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL7" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100924" VERN="000022" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,12 +16,40 @@
REPORT zdemo_excel7. REPORT zdemo_excel7.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional, lo_style_conditional TYPE REF TO zcl_excel_style_conditional.
lv_file TYPE xstring,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;07_ConditionalAll.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -299,23 +327,16 @@ lo_worksheet-&gt;set_cell( ip_row = 21 ip_column = &apos;E&apos; ip_value = 30 )
lo_worksheet-&gt;set_cell( ip_row = 22 ip_column = &apos;E&apos; ip_value = 40 ). lo_worksheet-&gt;set_cell( ip_row = 22 ip_column = &apos;E&apos; ip_value = 40 ).
lo_worksheet-&gt;set_cell( ip_row = 23 ip_column = &apos;E&apos; ip_value = 50 ). lo_worksheet-&gt;set_cell( ip_row = 23 ip_column = &apos;E&apos; ip_value = 50 ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Iconset.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL8" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100713" UNAM="FEMIA" UDAT="20100905" VERN="000016" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163905" IDATE="20100905" ITIME="163905" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL8" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100713" UNAM="FEMIA" UDAT="20100924" VERN="000020" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,13 +16,41 @@
REPORT zdemo_excel8. REPORT zdemo_excel8.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_range TYPE REF TO zcl_excel_range, lo_range TYPE REF TO zcl_excel_range,
lv_file TYPE xstring, lv_style_number_guid TYPE zexcel_cell_style.
lv_style_number_guid TYPE zexcel_cell_style,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;08_Range.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -44,23 +72,16 @@ lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;C&apos; ip_value = &apos
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;Ananas&apos; ). lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;Ananas&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;Grapes&apos; ). lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;Grapes&apos; ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\Range.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?> <?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL9" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100713" UNAM="FEMIA" UDAT="20100905" VERN="000017" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100905" STIME="163927" IDATE="20100905" ITIME="163927" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL9" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100713" UNAM="FEMIA" UDAT="20100924" VERN="000021" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100924" STIME="153902" IDATE="20100924" ITIME="153902" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/> <textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
@ -16,14 +16,43 @@
REPORT zdemo_excel9. REPORT zdemo_excel9.
DATA: lo_excel TYPE REF TO zcl_excel, DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer type ref to zif_excel_writer, lo_excel_writer TYPE REF TO zif_excel_writer,
lo_worksheet TYPE REF TO zcl_excel_worksheet, lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_range TYPE REF TO zcl_excel_range, lo_range TYPE REF TO zcl_excel_range,
lo_data_validation TYPE REF TO zcl_excel_data_validation, lo_data_validation TYPE REF TO zcl_excel_data_validation,
lv_file TYPE xstring, lv_style_number_guid TYPE zexcel_cell_style.
lv_style_number_guid TYPE zexcel_cell_style,
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;09_DataValidation.xlsx&apos;.
PARAMETERS: p_path TYPE string.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path
CHANGING selected_folder = p_path ).
INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir.
START-OF-SELECTION.
IF p_path IS INITIAL.
p_path = lv_workdir.
ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ).
CONCATENATE p_path lv_file_separator lv_default_file_name INTO p_path.
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -51,23 +80,16 @@ lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;C&apos; ip_value = &apos
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;Ananas&apos; ). lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;Ananas&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;Grapes&apos; ). lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;Grapes&apos; ).
create object lo_excel_writer type zcl_excel_writer_2007. CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_2007.
lv_file = lo_excel_writer-&gt;write_file( lo_excel ). lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
&quot;convert to table * Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos; lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
EXPORTING lv_bytecount = XSTRLEN( lv_file ).
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file &quot; Save the file
CALL FUNCTION &apos;GUI_DOWNLOAD&apos; cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
EXPORTING filename = p_path
bin_filesize = lv_bytecount
filename = &apos;C:\DataValidation.xlsx&apos;
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
TABLES CHANGING data_tab = lt_file_tab ).</source>
data_tab = lt_file_tab.</source>
</PROG> </PROG>

View File

@ -1,5 +1,5 @@
abap2xlsx" abap2xlsx
Copyright (c) 2010 - 2011 Plinky.it Copyright (c) 2010 - 2011 Plinky.it
@ -12,7 +12,7 @@
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
@category ABAP xlsx Manager @category ABAP xlsx Manager
@package ZABAP2XLSX @package ZA2X
@author Ivan Femia @author Ivan Femia
@company Techedge SpA @company Techedge SpA
@homepage http://www.plinky.it/software @homepage http://www.plinky.it/software

View File

@ -1 +1 @@
Check out the Installation Guide at http://code.google.com/p/abap2xlsx/wiki/InstallationGuide Check out the Installation Guide at http://wiki.sdn.sap.com/wiki/display/ABAP/Installation+Guide