Fixes for Issue #55. New data element ZEXCEL_EXPORT_DIR to support demo reports on AS ABAP 6.40. First adjusted reports ZDEMO_EXCEL and ZDEMO_EXCEL1.

git-svn-id: https://subversion.assembla.com/svn/abap2xlsx/trunk@88 b7d68dce-7c3c-4a99-8ce0-9ea847f5d049
This commit is contained in:
Gregor Wolf 2010-12-24 09:22:42 +00:00
parent 9573bcea90
commit 54163801d2
3 changed files with 33 additions and 19 deletions

View File

@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-16"?>
<DTEL ROLLNAME="ZEXCEL_EXPORT_DIR" DDLANGUAGE="E" DOMNAME="TEXT255" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Export Directory" REPTEXT="Export Directory" SCRTEXT_S="Exprt D" SCRTEXT_M="Exprt D" SCRTEXT_L="Export Directory" AUTHCLASS="00" AS4USER="BCUSER" AS4DATE="20101224" AS4TIME="081532" DTELMASTER="E" DATATYPE="CHAR" LENG="000255" DECIMALS="000000" OUTPUTLEN="000255" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>

View File

@ -1,11 +1,12 @@
<?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="20101221" VERN="000031" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20101221" STIME="151127" IDATE="20101221" ITIME="151127" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100817" UNAM="BCUSER" UDAT="20101224" VERN="000033" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20101224" STIME="081810" IDATE="20101224" ITIME="081810" 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 "/> <textElement ID="S" KEY="P_PATH" ENTRY=" Select output path" LENGTH="26 "/>
</language> </language>
</textPool> </textPool>
<programDocumentation/>
<source>*&amp;---------------------------------------------------------------------* <source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZDEMO_EXCEL *&amp; Report ZDEMO_EXCEL
*&amp; *&amp;
@ -18,13 +19,13 @@ REPORT zdemo_excel.
DATA: lv_workdir TYPE string. DATA: lv_workdir TYPE string.
PARAMETERS: p_path TYPE string. PARAMETERS: p_path TYPE zexcel_export_dir.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path. AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
lv_workdir = p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = lv_workdir
CHANGING selected_folder = p_path ). CHANGING selected_folder = lv_workdir ).
p_path = lv_workdir.
INITIALIZATION. INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ). cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
p_path = lv_workdir. p_path = lv_workdir.

View File

@ -1,10 +1,12 @@
<?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="20101217" VERN="000045" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20101217" STIME="224830" IDATE="20101217" ITIME="224830" UCCHECK="X"> <PROG NAME="ZDEMO_EXCEL1" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="BCUSER" UDAT="20101224" VERN="000051" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20101224" STIME="101943" IDATE="20101224" ITIME="101943" UCCHECK="X">
<textPool> <textPool>
<language SPRAS="E"> <language SPRAS="E">
<textElement ID="R" ENTRY="abap2xlsx Demo: Hello World" LENGTH="27 "/> <textElement ID="R" ENTRY="abap2xlsx Demo: Hello World" LENGTH="27 "/>
<textElement ID="S" KEY="P_PATH" ENTRY="D ." LENGTH="9 "/>
</language> </language>
</textPool> </textPool>
<programDocumentation/>
<source>*&amp;---------------------------------------------------------------------* <source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL *&amp; Report ZIFE_TEST_EXCEL
*&amp; *&amp;
@ -25,20 +27,19 @@ DATA: lv_file TYPE xstring,
lv_bytecount TYPE i, lv_bytecount TYPE i,
lt_file_tab TYPE solix_tab. lt_file_tab TYPE solix_tab.
DATA: lv_file_name TYPE string, DATA: lv_full_path TYPE string,
lv_file_path TYPE string,
lv_full_path TYPE string,
lv_workdir TYPE string, lv_workdir TYPE string,
lv_file_separator TYPE c. lv_file_separator TYPE c.
CONSTANTS: lv_default_file_name TYPE string VALUE &apos;01_HelloWorld.xlsx&apos;. CONSTANTS: lv_default_file_name TYPE string VALUE &apos;01_HelloWorld.xlsx&apos;.
PARAMETERS: p_path TYPE string. PARAMETERS: p_path TYPE zexcel_export_dir.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path. AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
lv_workdir = p_path.
cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = p_path cl_gui_frontend_services=&gt;directory_browse( EXPORTING initial_folder = lv_workdir
CHANGING selected_folder = p_path ). CHANGING selected_folder = lv_workdir ).
p_path = lv_workdir.
INITIALIZATION. INITIALIZATION.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ). cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
@ -50,7 +51,7 @@ START-OF-SELECTION.
p_path = lv_workdir. p_path = lv_workdir.
ENDIF. ENDIF.
cl_gui_frontend_services=&gt;get_file_separator( CHANGING file_separator = lv_file_separator ). 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. CONCATENATE p_path lv_file_separator lv_default_file_name INTO lv_full_path.
&quot; Creates active sheet &quot; Creates active sheet
CREATE OBJECT lo_excel. CREATE OBJECT lo_excel.
@ -70,13 +71,21 @@ START-OF-SELECTION.
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 ).
* Convert to binary &quot; Convert to binary
lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ). CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos;
lv_bytecount = xstrlen( lv_file ). EXPORTING
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
* &quot; This method is only available on AS ABAP &gt; 6.40
* lt_file_tab = cl_bcs_convert=&gt;xstring_to_solix( iv_xstring = lv_file ).
* lv_bytecount = xstrlen( lv_file ).
&quot; Save the file &quot; Save the file
cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
filename = p_path filename = lv_full_path
filetype = &apos;BIN&apos; filetype = &apos;BIN&apos;
CHANGING data_tab = lt_file_tab ).</source> CHANGING data_tab = lt_file_tab ).</source>
</PROG> </PROG>