Macro-Enabled workbook issue #89

git-svn-id: https://subversion.assembla.com/svn/abap2xlsx/trunk@194 b7d68dce-7c3c-4a99-8ce0-9ea847f5d049
This commit is contained in:
Ivan Femia 2011-06-02 09:23:58 +00:00
parent 0ac55d2d3b
commit d3f95ed657
14 changed files with 1174 additions and 234 deletions

View File

@ -1,16 +1,18 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" UUID="E150494D16947660E1000000C0A8FA28" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<implementing CLSNAME="ZCL_EXCEL" REFCLSNAME="ZIF_EXCEL_BOOK_PROTECTION" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" RELTYPE="1"/>
<CLAS CLSNAME="ZCL_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" UUID="E150494D16947660E1000000C0A8FA28" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20110528" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<implementing CLSNAME="ZCL_EXCEL" REFCLSNAME="ZIF_EXCEL_BOOK_PROTECTION" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" RELTYPE="1" EDITORDER="1 "/>
<implementing CLSNAME="ZCL_EXCEL" REFCLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" RELTYPE="1" EDITORDER="2 "/>
<publicSection>class ZCL_EXCEL definition
public
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL
*&quot;* do not include other source files here!!!
public section.
interfaces ZIF_EXCEL_BOOK_PROTECTION .
interfaces ZIF_EXCEL_BOOK_VBA_PROJECT .
data PROPERTIES type ref to ZCL_EXCEL_PROPERTIES .
data SECURITY type ref to ZCL_EXCEL_SECURITY .
@ -84,12 +86,12 @@ private section.
*&quot;* implementation or private method&apos;s signature</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWINGS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="PROPERTIES" VERSION="1" LANGU="E" DESCRIPT="Document properties" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_PROPERTIES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="RANGES" VERSION="1" LANGU="E" DESCRIPT="Ranges collection" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="SECURITY" VERSION="1" LANGU="E" DESCRIPT="Security" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_SECURITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles collection" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="WORKSHEETS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEETS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWINGS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="PROPERTIES" VERSION="1" LANGU="E" DESCRIPT="Document properties" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_PROPERTIES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="RANGES" VERSION="1" LANGU="E" DESCRIPT="Ranges collection" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="SECURITY" VERSION="1" LANGU="E" DESCRIPT="Security" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_SECURITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles collection" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="WORKSHEETS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEETS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_PROTECTION~INITIALIZE">
<source>method ZIF_EXCEL_BOOK_PROTECTION~INITIALIZE.
me-&gt;zif_excel_book_protection~protected = zif_excel_book_protection=&gt;c_unprotected.
@ -100,9 +102,24 @@ private section.
CLEAR me-&gt;zif_excel_book_protection~revisionspassword.
endmethod.</source>
</interfaceMethod>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Create a new drawing" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" SCONAME="EO_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Drawing" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME">
<source>method ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME.
me-&gt;zif_excel_book_vba_project~codename = ip_codename.
endmethod.</source>
</interfaceMethod>
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME_PR">
<source>method ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME_PR.
me-&gt;zif_excel_book_vba_project~codename_pr = ip_codename_pr.
endmethod.</source>
</interfaceMethod>
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_VBA_PROJECT~SET_VBAPROJECT">
<source>METHOD zif_excel_book_vba_project~set_vbaproject.
me-&gt;zif_excel_book_vba_project~vbaproject = ip_vbaproject.
ENDMETHOD.</source>
</interfaceMethod>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Create a new drawing" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" SCONAME="EO_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Drawing" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>method ADD_NEW_DRAWING.
DATA: lv_guid TYPE guid_16.
* Create default blank worksheet
@ -112,16 +129,16 @@ endmethod.</source>
drawings-&gt;add( eo_drawing ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_RANGE" VERSION="1" LANGU="E" DESCRIPT="Create a new range" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_RANGE" SCONAME="EO_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_RANGE" VERSION="1" LANGU="E" DESCRIPT="Create a new range" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_RANGE" SCONAME="EO_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>method ADD_NEW_RANGE.
* Create default blank range
CREATE OBJECT eo_range.
ranges-&gt;add( eo_range ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" VERSION="1" LANGU="E" DESCRIPT="Create a new style" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" SCONAME="EO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" VERSION="1" LANGU="E" DESCRIPT="Create a new style" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" SCONAME="EO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>method ADD_NEW_STYLE.
* Create default style
CREATE OBJECT eo_style.
@ -129,9 +146,9 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Create a new worksheet" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Create a new worksheet" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>method ADD_NEW_WORKSHEET.
DATA: lv_guid TYPE guid_16.
* Create default blank worksheet
@ -143,7 +160,7 @@ endmethod.</source>
worksheets-&gt;active_worksheet = worksheets-&gt;size( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
DATA: lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style TYPE REF TO zcl_excel_style.
@ -164,30 +181,30 @@ endmethod.</source>
lo_style-&gt;fill-&gt;filltype = zcl_excel_style_fill=&gt;c_fill_pattern_gray125.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_SHEET_INDEX" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet index" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_SHEET_INDEX" SCONAME="R_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_SHEET_INDEX" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet index" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_SHEET_INDEX" SCONAME="R_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<source>method GET_ACTIVE_SHEET_INDEX.
r_active_worksheet = me-&gt;worksheets-&gt;active_worksheet.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_WORKSHEET" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_WORKSHEET" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>method GET_ACTIVE_WORKSHEET.
eo_worksheet = me-&gt;worksheets-&gt;get( me-&gt;worksheets-&gt;active_worksheet ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get drawing iterator" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get drawing iterator" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>method GET_DRAWINGS_ITERATOR.
eo_iterator = me-&gt;drawings-&gt;get_iterator( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_NEXT_TABLE_ID" VERSION="1" LANGU="E" DESCRIPT="Get table ID unique across sheets" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_NEXT_TABLE_ID" SCONAME="EP_ID" VERSION="1" LANGU="E" DESCRIPT="ID" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_NEXT_TABLE_ID" VERSION="1" LANGU="E" DESCRIPT="Get table ID unique across sheets" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_NEXT_TABLE_ID" SCONAME="EP_ID" VERSION="1" LANGU="E" DESCRIPT="ID" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>method GET_NEXT_TABLE_ID.
DATA: lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_iterator TYPE REF TO cl_object_collection_iterator,
@ -206,54 +223,54 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_RANGES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get ranges iterator" EXPOSURE="2" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_RANGES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_RANGES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get ranges iterator" EXPOSURE="2" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_RANGES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>method GET_RANGES_ITERATOR.
eo_iterator = me-&gt;ranges-&gt;get_iterator( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get styles iterator" EXPOSURE="2" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get styles iterator" EXPOSURE="2" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>method GET_STYLES_ITERATOR.
eo_iterator = me-&gt;styles-&gt;get_iterator( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get worksheets iterator" EXPOSURE="2" STATE="1" EDITORDER="12 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get worksheets iterator" EXPOSURE="2" STATE="1" EDITORDER="12 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>method GET_WORKSHEETS_ITERATOR.
eo_iterator = me-&gt;worksheets-&gt;get_iterator( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_NAME" VERSION="1" LANGU="E" DESCRIPT="Returns the name of worksheets" EXPOSURE="2" STATE="1" EDITORDER="13 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_NAME" SCONAME="EP_NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_NAME" VERSION="1" LANGU="E" DESCRIPT="Returns the name of worksheets" EXPOSURE="2" STATE="1" EDITORDER="13 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_NAME" SCONAME="EP_NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME"/>
<source>method GET_WORKSHEETS_NAME.
ep_name = me-&gt;worksheets-&gt;name.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_SIZE" VERSION="1" LANGU="E" DESCRIPT="Returns the number of worksheets" EXPOSURE="2" STATE="1" EDITORDER="14 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_SIZE" VERSION="1" LANGU="E" DESCRIPT="Returns the number of worksheets" EXPOSURE="2" STATE="1" EDITORDER="14 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>method GET_WORKSHEETS_SIZE.
ep_size = me-&gt;worksheets-&gt;size( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX" VERSION="1" LANGU="E" DESCRIPT="Set active worksheet index" EXPOSURE="2" STATE="1" EDITORDER="15 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX" SCONAME="I_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX" VERSION="1" LANGU="E" DESCRIPT="Set active worksheet index" EXPOSURE="2" STATE="1" EDITORDER="15 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX" SCONAME="I_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<source>method SET_ACTIVE_SHEET_INDEX.
me-&gt;worksheets-&gt;active_worksheet = i_active_worksheet.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX_BY_NAME" VERSION="1" LANGU="E" DESCRIPT="Set active worksheet index by name" EXPOSURE="2" STATE="1" EDITORDER="16 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDBY="FEMIA" CHANGEDON="20110505" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX_BY_NAME" SCONAME="I_WORKSHEET_NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110205" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME"/>
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX_BY_NAME" VERSION="1" LANGU="E" DESCRIPT="Set active worksheet index by name" EXPOSURE="2" STATE="1" EDITORDER="16 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX_BY_NAME" SCONAME="I_WORKSHEET_NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME"/>
<source>method SET_ACTIVE_SHEET_INDEX_BY_NAME.
DATA: ws_it TYPE REF TO cl_object_collection_iterator,

View File

@ -0,0 +1,25 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_CUSTOMUI" VERSION="1" LANGU="E" DESCRIPT="Excel customUI" UUID="0202322174CD1ED0A39E69743DBD5775" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_CUSTOMUI definition
public
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL_CUSTOMUI
*&quot;* do not include other source files here!!!</publicSection>
<protectedSection>protected section.
*&quot;* protected components of class ZCL_EXCEL_CUSTOMUI
*&quot;* do not include other source files here!!!</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_CUSTOMUI
*&quot;* do not include other source files here!!!</privateSection>
<localImplementation>*&quot;* use this source file for the definition and implementation of
*&quot;* local helper classes, interface definitions and type
*&quot;* declarations</localImplementation>
<localTypes>*&quot;* use this source file for any type of declarations (class
*&quot;* definitions, interfaces or type declarations) you need for
*&quot;* components in the private section</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
</CLAS>

View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_CUSTOMUI_BUTTON" VERSION="1" LANGU="E" DESCRIPT="Excel customUI Button" UUID="0202322174CD1ED0A39E7C6776BB9775" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<implementing CLSNAME="ZCL_EXCEL_CUSTOMUI_BUTTON" REFCLSNAME="ZIF_EXCEL_CUSTOMUI_ELEMENT" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" RELTYPE="1" EDITORDER="1 "/>
<publicSection>class ZCL_EXCEL_CUSTOMUI_BUTTON definition
public
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL_CUSTOMUI_BUTTON
*&quot;* do not include other source files here!!!
interfaces ZIF_EXCEL_CUSTOMUI_ELEMENT .</publicSection>
<protectedSection>protected section.
*&quot;* protected components of class ZCL_EXCEL_CUSTOMUI_BUTTON
*&quot;* do not include other source files here!!!</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_CUSTOMUI_BUTTON
*&quot;* do not include other source files here!!!</privateSection>
<localImplementation>*&quot;* use this source file for the definition and implementation of
*&quot;* local helper classes, interface definitions and type
*&quot;* declarations</localImplementation>
<localTypes>*&quot;* use this source file for any type of declarations (class
*&quot;* definitions, interfaces or type declarations) you need for
*&quot;* components in the private section</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
</CLAS>

View File

@ -1,24 +1,24 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_PROPERTIES" VERSION="1" LANGU="E" DESCRIPT="Document properties" UUID="A161274C8A34602DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<CLAS CLSNAME="ZCL_EXCEL_PROPERTIES" VERSION="1" LANGU="E" DESCRIPT="Document properties" UUID="0B51494D16947660E1000000C0A8FA28" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20110528" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_PROPERTIES definition
public
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL_PROPERTIES
*&quot;* do not include other source files here!!!
public section.
data CREATOR type ZEXCEL_CREATOR value &apos;Unknown Creator&apos;. &quot;#EC NOTEXT .
data LASTMODIFIEDBY type ZEXCEL_CREATOR value &apos;Unknown Creator&apos;. &quot;#EC NOTEXT .
data CREATOR type ZEXCEL_CREATOR value &apos;Ivan Femia&apos;. &quot;#EC NOTEXT .
data LASTMODIFIEDBY type ZEXCEL_CREATOR value &apos;Ivan Femia&apos;. &quot;#EC NOTEXT .
data CREATED type TIMESTAMPL .
data MODIFIED type TIMESTAMPL .
data TITLE type ZEXCEL_TITLE value &apos;Untitled Spreadsheet&apos;. &quot;#EC NOTEXT .
data TITLE type ZEXCEL_TITLE value &apos;abap2xlsx&apos;. &quot;#EC NOTEXT .
data SUBJECT type ZEXCEL_SUBJECT .
data DESCRIPTION type ZEXCEL_DESCRIPTION .
data DESCRIPTION type ZEXCEL_DESCRIPTION value &apos;Created using abap2xlsx&apos;. &quot;#EC NOTEXT .
data KEYWORDS type ZEXCEL_KEYWORDS .
data CATEGORY type ZEXCEL_CATEGORY .
data COMPANY type ZEXCEL_COMPANY value &apos;Microsoft Corporation&apos;. &quot;#EC NOTEXT .
data COMPANY type ZEXCEL_COMPANY value &apos;abap2xlsx&apos;. &quot;#EC NOTEXT .
data APPLICATION type ZEXCEL_APPLICATION value &apos;Microsoft Excel&apos;. &quot;#EC NOTEXT .
data DOCSECURITY type ZEXCEL_DOCSECURITY value &apos;0&apos;. &quot;#EC NOTEXT .
data SCALECROP type ZEXCEL_SCALECROP value &apos;&apos;. &quot;#EC NOTEXT .
@ -42,24 +42,24 @@ private section.</privateSection>
*&quot;* implementation or private method&apos;s signature</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="APPLICATION" VERSION="1" LANGU="E" DESCRIPT="Application" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;Microsoft Excel&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_APPLICATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="APPVERSION" VERSION="1" LANGU="E" DESCRIPT="Application version" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;12.0000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_APPVERSION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CATEGORY" VERSION="1" LANGU="E" DESCRIPT="Category" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CATEGORY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="COMPANY" VERSION="1" LANGU="E" DESCRIPT="Company" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;Microsoft Corporation&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_COMPANY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CREATED" VERSION="1" LANGU="E" DESCRIPT="Created on" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="TIMESTAMPL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CREATOR" VERSION="1" LANGU="E" DESCRIPT="Creator" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;Unknown Creator&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CREATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="DESCRIPTION" VERSION="1" LANGU="E" DESCRIPT="Description" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DESCRIPTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="DOCSECURITY" VERSION="1" LANGU="E" DESCRIPT="DocSecurity" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;0&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DOCSECURITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="HYPERLINKSCHANGED" VERSION="1" LANGU="E" DESCRIPT="Hyperlinks changed" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="KEYWORDS" VERSION="1" LANGU="E" DESCRIPT="Keywords" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_KEYWORDS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="LASTMODIFIEDBY" VERSION="1" LANGU="E" DESCRIPT="Modified by" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;Unknown Creator&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CREATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="LINKSUPTODATE" VERSION="1" LANGU="E" DESCRIPT="Links up to date" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="MODIFIED" VERSION="1" LANGU="E" DESCRIPT="Modified on" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="TIMESTAMPL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="SCALECROP" VERSION="1" LANGU="E" DESCRIPT="ScaleCrop" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SCALECROP" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="SHAREDDOC" VERSION="1" LANGU="E" DESCRIPT="Shared document" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="SUBJECT" VERSION="1" LANGU="E" DESCRIPT="Subject" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SUBJECT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" ATTDECLTYP="0" ATTVALUE="&apos;Untitled Spreadsheet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_TITLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100809" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="APPLICATION" VERSION="1" LANGU="E" DESCRIPT="Application" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTVALUE="&apos;Microsoft Excel&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_APPLICATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="APPVERSION" VERSION="1" LANGU="E" DESCRIPT="Application version" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTVALUE="&apos;12.0000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_APPVERSION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CATEGORY" VERSION="1" LANGU="E" DESCRIPT="Category" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CATEGORY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="COMPANY" VERSION="1" LANGU="E" DESCRIPT="Company" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTVALUE="&apos;abap2xlsx&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_COMPANY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CREATED" VERSION="1" LANGU="E" DESCRIPT="Created on" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="TIMESTAMPL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CREATOR" VERSION="1" LANGU="E" DESCRIPT="Creator" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTVALUE="&apos;Ivan Femia&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CREATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="DESCRIPTION" VERSION="1" LANGU="E" DESCRIPT="Description" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTVALUE="&apos;Created using abap2xlsx&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DESCRIPTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="DOCSECURITY" VERSION="1" LANGU="E" DESCRIPT="DocSecurity" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTVALUE="&apos;0&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DOCSECURITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="HYPERLINKSCHANGED" VERSION="1" LANGU="E" DESCRIPT="Hyperlinks changed" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="KEYWORDS" VERSION="1" LANGU="E" DESCRIPT="Keywords" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_KEYWORDS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="LASTMODIFIEDBY" VERSION="1" LANGU="E" DESCRIPT="Modified by" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTVALUE="&apos;Ivan Femia&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CREATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="LINKSUPTODATE" VERSION="1" LANGU="E" DESCRIPT="Links up to date" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="MODIFIED" VERSION="1" LANGU="E" DESCRIPT="Modified on" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="TIMESTAMPL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="SCALECROP" VERSION="1" LANGU="E" DESCRIPT="ScaleCrop" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SCALECROP" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="SHAREDDOC" VERSION="1" LANGU="E" DESCRIPT="Shared document" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="SUBJECT" VERSION="1" LANGU="E" DESCRIPT="Subject" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SUBJECT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTVALUE="&apos;abap2xlsx&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_TITLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_PROPERTIES" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
DATA: lv_timestamp TYPE timestampl.

View File

@ -1,9 +1,37 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_READER_2007" VERSION="1" LANGU="E" DESCRIPT="Read Excel 2007 into ZCL_EXCEL" UUID="DFAC2E4C81CE84F1B39B000C29B7D360" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="BCUSER" CREATEDON="20100820" CHANGEDBY="BCUSER" CHANGEDON="20110414" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<implementing CLSNAME="ZCL_EXCEL_READER_2007" REFCLSNAME="ZIF_EXCEL_READER" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" RELTYPE="1" EDITORDER="0 "/>
<CLAS CLSNAME="ZCL_EXCEL_READER_2007" VERSION="1" LANGU="E" DESCRIPT="Read Excel 2007 into ZCL_EXCEL" UUID="DFAC2E4C81CE84F1B39B000C29B7D360" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="BCUSER" CREATEDON="20100820" CHANGEDBY="FEMIA" CHANGEDON="20110601" CHGDANYON="00000000" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<types CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="T_RELATIONSHIP" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDBY="FEMIA" CHANGEDON="20110602" TYPTYPE="4" SRCROW1="6 " SRCCOLUMN1="4 " SRCROW2="10 " SRCCOLUMN2="29 " TYPESRC_LENG="154 " TYPESRC="BEGIN OF t_relationship,
id TYPE string,
type TYPE string,
target TYPE string,
END OF t_relationship
"/>
<types CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="T_FILEVERSION" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" TYPTYPE="4" SRCROW1="12 " SRCCOLUMN1="4 " SRCROW2="18 " SRCCOLUMN2="26 " TYPESRC_LENG="254 " TYPESRC="BEGIN OF t_fileversion,
appname TYPE string,
lastedited TYPE string,
lowestedited TYPE string,
rupbuild TYPE string,
codename TYPE string,
END OF t_fileversion
"/>
<types CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="T_SHEET" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" TYPTYPE="4" SRCROW1="20 " SRCCOLUMN1="4 " SRCROW2="24 " SRCCOLUMN2="22 " TYPESRC_LENG="152 " TYPESRC="BEGIN OF t_sheet,
name TYPE string,
sheetid TYPE string,
id TYPE string,
END OF t_sheet
"/>
<types CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="T_WORKBOOKPR" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" TYPTYPE="4" SRCROW1="26 " SRCCOLUMN1="4 " SRCROW2="29 " SRCCOLUMN2="27 " TYPESRC_LENG="150 " TYPESRC="BEGIN OF t_workbookpr,
codename TYPE string,
defaultthemeversion TYPE string,
END OF t_workbookpr
"/>
<types CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="T_SHEETPR" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" TYPTYPE="4" SRCROW1="31 " SRCCOLUMN1="4 " SRCROW2="33 " SRCCOLUMN2="24 " TYPESRC_LENG="96 " TYPESRC="BEGIN OF t_sheetpr,
codename TYPE string,
END OF t_sheetpr
"/>
<implementing CLSNAME="ZCL_EXCEL_READER_2007" REFCLSNAME="ZIF_EXCEL_READER" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" RELTYPE="1" EDITORDER="0 "/>
<publicSection>class ZCL_EXCEL_READER_2007 definition
public
final
create public .
public section.
@ -12,9 +40,67 @@ public section.
type-pools IXML .
interfaces ZIF_EXCEL_READER .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_READER_2007
<protectedSection>PROTECTED SECTION.
*&quot;* protected components of class ZCL_EXCEL_READER_2007
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
TYPES:
BEGIN OF t_relationship,
id TYPE string,
type TYPE string,
target TYPE string,
END OF t_relationship .
TYPES:
BEGIN OF t_fileversion,
appname TYPE string,
lastedited TYPE string,
lowestedited TYPE string,
rupbuild TYPE string,
codename TYPE string,
END OF t_fileversion .
TYPES:
BEGIN OF t_sheet,
name TYPE string,
sheetid TYPE string,
id TYPE string,
END OF t_sheet .
TYPES:
BEGIN OF t_workbookpr,
codename TYPE string,
defaultthemeversion TYPE string,
END OF t_workbookpr .
TYPES:
BEGIN OF t_sheetpr,
codename TYPE string,
END OF t_sheetpr .
METHODS fill_struct_from_attributes
IMPORTING
!ip_element TYPE REF TO if_ixml_element
CHANGING
!cp_structure TYPE any .
METHODS get_from_zip_archive
IMPORTING
!i_filename TYPE string
RETURNING
value(r_content) TYPE xstring
RAISING
zcx_excel .
METHODS get_ixml_from_zip_archive
IMPORTING
!i_filename TYPE string
RETURNING
value(r_ixml) TYPE REF TO if_ixml_document
RAISING
zcx_excel .
METHODS load_workbook
IMPORTING
!ip_path TYPE string
!ip_excel TYPE REF TO zcl_excel .
METHODS load_worksheet
IMPORTING
!ip_path TYPE string
!io_worksheet TYPE REF TO zcl_excel_worksheet .</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_READER_2007
*&quot;* do not include other source files here!!!
@ -24,30 +110,10 @@ protected section.</protectedSection>
data SHARED_STRINGS type STRINGTAB .
data STYLES type T_STYLE_REFS .
methods GET_FROM_ZIP_ARCHIVE
methods LOAD_SHARED_STRINGS
importing
!I_FILENAME type STRING
returning
value(R_CONTENT) type XSTRING
raising
ZCX_EXCEL .
methods GET_IXML_FROM_ZIP_ARCHIVE
importing
!I_FILENAME type STRING
returning
value(R_IXML) type ref to IF_IXML_DOCUMENT
raising
ZCX_EXCEL .
methods LOAD_WORKSHEET
importing
!IP_PATH type STRING
!IO_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET .
methods FILL_STRUCT_FROM_ATTRIBUTES
importing
!IP_ELEMENT type ref to IF_IXML_ELEMENT
changing
!CP_STRUCTURE type ANY .
methods LOAD_WORKBOOK
!IP_PATH type STRING .
methods LOAD_STYLES
importing
!IP_PATH type STRING
!IP_EXCEL type ref to ZCL_EXCEL .
@ -56,28 +122,21 @@ protected section.</protectedSection>
!IP_XML type ref to IF_IXML_DOCUMENT
returning
value(EP_BORDERS) type T_BORDERS .
methods LOAD_STYLE_FONTS
importing
!IP_XML type ref to IF_IXML_DOCUMENT
returning
value(EP_FONTS) type T_FONTS .
methods LOAD_STYLE_FILLS
importing
!IP_XML type ref to IF_IXML_DOCUMENT
returning
value(EP_FILLS) type T_FILLS .
methods LOAD_STYLE_FONTS
importing
!IP_XML type ref to IF_IXML_DOCUMENT
returning
value(EP_FONTS) type T_FONTS .
methods LOAD_STYLE_NUM_FORMATS
importing
!IP_XML type ref to IF_IXML_DOCUMENT
returning
value(EP_NUM_FORMATS) type T_NUM_FORMATS .
methods LOAD_STYLES
importing
!IP_PATH type STRING
!IP_EXCEL type ref to ZCL_EXCEL .
methods LOAD_SHARED_STRINGS
importing
!IP_PATH type STRING .</privateSection>
value(EP_NUM_FORMATS) type T_NUM_FORMATS .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes
@ -112,12 +171,12 @@ protected section.</protectedSection>
*&quot;* in the implementation part of the class</localMacros>
<typeUsage CLSNAME="ZCL_EXCEL_READER_2007" TYPEGROUP="IXML" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>IXML</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="EXCEL2007" VERSION="1" LANGU="E" DESCRIPT="Excel 2007 data" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110415" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="XSTRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Table with Strings" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRINGTAB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="STYLES" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="BCUSER" CREATEDON="20110419" CHANGEDBY="BCUSER" CHANGEDON="20110419" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="T_STYLE_REFS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="ZIP" VERSION="1" LANGU="E" DESCRIPT="Zip Utility" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110415" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_ABAP_ZIP" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="EXCEL2007" VERSION="1" LANGU="E" DESCRIPT="Excel 2007 data" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="XSTRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Table with Strings" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRINGTAB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="STYLES" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="T_STYLE_REFS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="ZIP" VERSION="1" LANGU="E" DESCRIPT="Zip Utility" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_ABAP_ZIP" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<interfaceMethod CLSNAME="ZCL_EXCEL_READER_2007" CPDNAME="ZIF_EXCEL_READER~LOAD">
<source>METHOD zif_excel_reader~load.
<source>method ZIF_EXCEL_READER~LOAD.
CONSTANTS:
lc_core_properties TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties&apos;,
@ -151,7 +210,7 @@ protected section.</protectedSection>
node ?= node-&gt;get_next( ).
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</interfaceMethod>
<interfaceMethod CLSNAME="ZCL_EXCEL_READER_2007" CPDNAME="ZIF_EXCEL_READER~LOAD_FILE">
<source>method ZIF_EXCEL_READER~LOAD_FILE.
@ -218,10 +277,10 @@ ENDMETHOD.</source>
r_excel = me-&gt;zif_excel_reader~load( excel_data ).
endmethod.</source>
</interfaceMethod>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="FILL_STRUCT_FROM_ATTRIBUTES" VERSION="1" LANGU="E" DESCRIPT="Fills structure fields based on XML node attributes" EXPOSURE="0" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDBY="BCUSER" CHANGEDON="20110421" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="FILL_STRUCT_FROM_ATTRIBUTES" SCONAME="IP_ELEMENT" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_ELEMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_ELEMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="FILL_STRUCT_FROM_ATTRIBUTES" SCONAME="CP_STRUCTURE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDON="00000000" PARDECLTYP="2" PARPASSTYP="1" TYPTYPE="1" TYPE="ANY"/>
<source>METHOD fill_struct_from_attributes.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="FILL_STRUCT_FROM_ATTRIBUTES" VERSION="1" LANGU="E" DESCRIPT="Fills structure fields based on XML node attributes" EXPOSURE="1" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="FILL_STRUCT_FROM_ATTRIBUTES" SCONAME="IP_ELEMENT" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_ELEMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_ELEMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="FILL_STRUCT_FROM_ATTRIBUTES" SCONAME="CP_STRUCTURE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="2" PARPASSTYP="1" TYPTYPE="1" TYPE="ANY"/>
<source>method FILL_STRUCT_FROM_ATTRIBUTES.
DATA: name TYPE string,
attributes TYPE REF TO if_ixml_named_node_map,
attribute TYPE REF TO if_ixml_attribute,
@ -243,12 +302,12 @@ endmethod.</source>
ENDIF.
attribute ?= iterator-&gt;get_next( ).
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" VERSION="1" LANGU="E" DESCRIPT="Read file from ZIP Archive" EXPOSURE="0" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" SCONAME="I_FILENAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" SCONAME="R_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<exception CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414"/>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" VERSION="1" LANGU="E" DESCRIPT="Read file from ZIP Archive" EXPOSURE="1" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" SCONAME="I_FILENAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" SCONAME="R_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<exception CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_FROM_ZIP_ARCHIVE" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602"/>
<source>method GET_FROM_ZIP_ARCHIVE.
IF me-&gt;zip IS NOT BOUND.
@ -285,10 +344,10 @@ ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" VERSION="1" LANGU="E" DESCRIPT="Read file from ZIP Archive" EXPOSURE="0" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" SCONAME="I_FILENAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" SCONAME="R_IXML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<exception CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 " AUTHOR="BCUSER" CREATEDON="20110408" CHANGEDBY="BCUSER" CHANGEDON="20110414"/>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" VERSION="1" LANGU="E" DESCRIPT="Read file from ZIP Archive" EXPOSURE="1" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" SCONAME="I_FILENAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" SCONAME="R_IXML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<exception CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="GET_IXML_FROM_ZIP_ARCHIVE" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602"/>
<source>method GET_IXML_FROM_ZIP_ARCHIVE.
TYPE-POOLS: ixml.
@ -313,9 +372,9 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Loads shared strings table" EXPOSURE="0" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDBY="BCUSER" CHANGEDON="20110425" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_SHARED_STRINGS" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD load_shared_strings.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Loads shared strings table" EXPOSURE="0" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_SHARED_STRINGS" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<source>method LOAD_SHARED_STRINGS.
DATA: value TYPE string,
shared_strings_xml TYPE REF TO if_ixml_document,
tag_name TYPE string,
@ -337,12 +396,12 @@ endmethod.</source>
node ?= node-&gt;get_next( ).
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLES" VERSION="1" LANGU="E" DESCRIPT="Loads styles" EXPOSURE="0" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110416" CHANGEDBY="BCUSER" CHANGEDON="20110425" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLES" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110416" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLES" SCONAME="IP_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110419" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<source>METHOD load_styles.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLES" VERSION="1" LANGU="E" DESCRIPT="Loads styles" EXPOSURE="0" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLES" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLES" SCONAME="IP_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<source>method LOAD_STYLES.
TYPES: BEGIN OF t_xf,
applyalignment TYPE string,
applyborder TYPE string,
@ -508,12 +567,12 @@ ENDMETHOD.</source>
ENDWHILE.
ENDIF.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_BORDERS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;borders&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_BORDERS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_BORDERS" SCONAME="EP_BORDERS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_BORDERS"/>
<source>METHOD load_style_borders.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_BORDERS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;borders&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_BORDERS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_BORDERS" SCONAME="EP_BORDERS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_BORDERS"/>
<source>method LOAD_STYLE_BORDERS.
DATA: node TYPE REF TO if_ixml_element,
node2 TYPE REF TO if_ixml_element,
node3 TYPE REF TO if_ixml_element,
@ -580,12 +639,12 @@ ENDMETHOD.</source>
INSERT cell_border INTO TABLE ep_borders.
node ?= node-&gt;get_next( ).
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FILLS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;fills&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDBY="BCUSER" CHANGEDON="20110425" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FILLS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FILLS" SCONAME="EP_FILLS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_FILLS"/>
<source>METHOD load_style_fills.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FILLS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;fills&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FILLS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FILLS" SCONAME="EP_FILLS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_FILLS"/>
<source>method LOAD_STYLE_FILLS.
DATA: value TYPE string,
node TYPE REF TO if_ixml_element,
node2 TYPE REF TO if_ixml_element,
@ -649,12 +708,12 @@ ENDMETHOD.</source>
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FONTS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;fonts&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FONTS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FONTS" SCONAME="EP_FONTS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_FONTS"/>
<source>METHOD load_style_fonts.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FONTS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;fonts&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FONTS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_FONTS" SCONAME="EP_FONTS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_FONTS"/>
<source>method LOAD_STYLE_FONTS.
DATA: value TYPE string,
node TYPE REF TO if_ixml_element,
node2 TYPE REF TO if_ixml_element,
@ -727,12 +786,12 @@ ENDMETHOD.</source>
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_NUM_FORMATS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;number format&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDBY="BCUSER" CHANGEDON="20110425" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_NUM_FORMATS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDBY="BCUSER" CHANGEDON="20110425" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_NUM_FORMATS" SCONAME="EP_NUM_FORMATS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110425" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_NUM_FORMATS"/>
<source>METHOD LOAD_STYLE_NUM_FORMATS.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_NUM_FORMATS" VERSION="1" LANGU="E" DESCRIPT="Loads &apos;number format&apos; part of styles" EXPOSURE="0" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_NUM_FORMATS" SCONAME="IP_XML" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_STYLE_NUM_FORMATS" SCONAME="EP_NUM_FORMATS" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="T_NUM_FORMATS"/>
<source>method LOAD_STYLE_NUM_FORMATS.
DATA: node TYPE REF TO if_ixml_element,
num_format TYPE t_num_format.
@ -748,17 +807,12 @@ ENDMETHOD.</source>
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" VERSION="1" LANGU="E" DESCRIPT="Loads workbook" EXPOSURE="0" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDBY="BCUSER" CHANGEDON="20110421" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" SCONAME="IP_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" VERSION="1" LANGU="E" DESCRIPT="Loads workbook" EXPOSURE="1" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" SCONAME="IP_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<source>METHOD load_workbook.
TYPES: BEGIN OF t_sheet,
name TYPE string,
sheetid TYPE string,
id TYPE string,
END OF t_sheet.
CONSTANTS: lc_shared_strings TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings&apos;,
lc_worksheet TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet&apos;,
@ -854,10 +908,10 @@ ENDMETHOD.</source>
ENDWHILE.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Loads worksheet" EXPOSURE="0" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110414" CHANGEDBY="BCUSER" CHANGEDON="20110421" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110414" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" SCONAME="IO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="BCUSER" CREATEDON="20110415" CHANGEDBY="BCUSER" CHANGEDON="20110415" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD load_worksheet.
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Loads worksheet" EXPOSURE="1" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" SCONAME="IO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>method LOAD_WORKSHEET.
TYPES: BEGIN OF t_cell,
r TYPE string,
t TYPE string,
@ -949,6 +1003,6 @@ ENDMETHOD.</source>
row ?= iterator-&gt;get_next( ).
ENDWHILE.
ENDMETHOD.</source>
endmethod.</source>
</method>
</CLAS>

View File

@ -0,0 +1,161 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_READER_XLSM" VERSION="1" LANGU="E" DESCRIPT="Excel with macro reader" UUID="0202322174CD1EE0A390E386CB9ED10B" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="20110602" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 " REFCLSNAME="ZCL_EXCEL_READER_2007" CHANGEDBY="FEMIA">
<publicSection>class ZCL_EXCEL_READER_XLSM definition
public
inheriting from ZCL_EXCEL_READER_2007
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL_READER_XLSM
*&quot;* do not include other source files here!!!</publicSection>
<protectedSection>protected section.
*&quot;* protected components of class ZCL_EXCEL_READER_XLSM
*&quot;* do not include other source files here!!!
methods LOAD_WORKBOOK
redefinition .
methods LOAD_WORKSHEET
redefinition .</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_READER_XLSM
*&quot;* do not include other source files here!!!
methods LOAD_VBAPROJECT
importing
!IP_PATH type STRING
!IP_EXCEL type ref to ZCL_EXCEL .</privateSection>
<localImplementation>*&quot;* use this source file for the definition and implementation of
*&quot;* local helper classes, interface definitions and type
*&quot;* declarations</localImplementation>
<localTypes>*&quot;* use this source file for any type of declarations (class
*&quot;* definitions, interfaces or type declarations) you need for
*&quot;* components in the private section</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
<inheritance CLSNAME="ZCL_EXCEL_READER_XLSM" REFCLSNAME="ZCL_EXCEL_READER_2007" VERSION="1" STATE="1" AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDBY="FEMIA" CHANGEDON="20110602">
<redefinition CLSNAME="ZCL_EXCEL_READER_XLSM" REFCLSNAME="ZCL_EXCEL_READER_2007" VERSION="1" MTDNAME="LOAD_WORKBOOK" EXPOSURE="1"/>
<redefinition CLSNAME="ZCL_EXCEL_READER_XLSM" REFCLSNAME="ZCL_EXCEL_READER_2007" VERSION="1" MTDNAME="LOAD_WORKSHEET" EXPOSURE="1"/>
</inheritance>
<method CLSNAME="ZCL_EXCEL_READER_XLSM" CMPNAME="LOAD_VBAPROJECT" VERSION="1" LANGU="E" DESCRIPT="Load VBA binary" EXPOSURE="0" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_READER_XLSM" CMPNAME="LOAD_VBAPROJECT" SCONAME="IP_PATH" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
<parameter CLSNAME="ZCL_EXCEL_READER_XLSM" CMPNAME="LOAD_VBAPROJECT" SCONAME="IP_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDBY="FEMIA" CHANGEDON="20110602" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<source>METHOD load_vbaproject.
DATA lv_content TYPE xstring.
lv_content = me-&gt;get_from_zip_archive( ip_path ).
ip_excel-&gt;zif_excel_book_vba_project~set_vbaproject( lv_content ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKBOOK" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD load_workbook.
super-&gt;load_workbook( EXPORTING ip_path = ip_path
ip_excel = ip_excel ).
CONSTANTS: lc_vba_project TYPE string VALUE &apos;http://schemas.microsoft.com/office/2006/relationships/vbaProject&apos;.
DATA: rels_workbook_path TYPE string,
rels_workbook TYPE REF TO if_ixml_document,
path TYPE string,
node TYPE REF TO if_ixml_element,
workbook TYPE REF TO if_ixml_document,
stripped_name TYPE chkfile,
dirname TYPE string,
relationship TYPE t_relationship,
fileversion TYPE t_fileversion,
workbookPr TYPE t_workbookPr.
FIELD-SYMBOLS: &lt;worksheet&gt; TYPE t_relationship.
CALL FUNCTION &apos;TRINT_SPLIT_FILE_AND_PATH&apos;
EXPORTING
full_name = ip_path
IMPORTING
stripped_name = stripped_name
file_path = dirname.
&quot; Read Workbook Relationships
CONCATENATE dirname &apos;_rels/&apos; stripped_name &apos;.rels&apos;
INTO rels_workbook_path.
rels_workbook = me-&gt;get_ixml_from_zip_archive( rels_workbook_path ).
node ?= rels_workbook-&gt;find_from_name( &apos;Relationship&apos; ).
WHILE node IS BOUND.
me-&gt;fill_struct_from_attributes( EXPORTING ip_element = node CHANGING cp_structure = relationship ).
CASE relationship-type.
WHEN lc_vba_project.
&quot; Read VBA binary
CONCATENATE dirname relationship-target INTO path.
me-&gt;load_vbaproject( ip_path = path
ip_excel = ip_excel ).
WHEN OTHERS.
ENDCASE.
node ?= node-&gt;get_next( ).
ENDWHILE.
&quot; Read Workbook codeName
workbook = me-&gt;get_ixml_from_zip_archive( ip_path ).
node ?= workbook-&gt;find_from_name( &apos;fileVersion&apos; ).
IF node IS BOUND.
fill_struct_from_attributes( EXPORTING ip_element = node
CHANGING cp_structure = fileversion ).
ip_excel-&gt;zif_excel_book_vba_project~set_codename( fileversion-codename ).
ENDIF.
&quot; Read Workbook codeName
workbook = me-&gt;get_ixml_from_zip_archive( ip_path ).
node ?= workbook-&gt;find_from_name( &apos;workbookPr&apos; ).
IF node IS BOUND.
fill_struct_from_attributes( EXPORTING ip_element = node
CHANGING cp_structure = workbookPr ).
ip_excel-&gt;zif_excel_book_vba_project~set_codename_pr( workbookPr-codename ).
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_READER_2007" CMPNAME="LOAD_WORKSHEET" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD load_worksheet.
super-&gt;load_worksheet( EXPORTING ip_path = ip_path
io_worksheet = io_worksheet ).
DATA: path TYPE string,
node TYPE REF TO if_ixml_element,
worksheet TYPE REF TO if_ixml_document,
sheetPr TYPE t_sheetPr.
* &quot; Read Workbook codeName
* workbook = me-&gt;get_ixml_from_zip_archive( ip_path ).
* node ?= workbook-&gt;find_from_name( &apos;fileVersion&apos; ).
* IF node IS BOUND.
*
* fill_struct_from_attributes( EXPORTING ip_element = node
* CHANGING cp_structure = fileversion ).
*
* IO_WORKSHEET-&gt;zif_excel_book_vba_project~set_codename( fileversion-codename ).
* ENDIF.
&quot; Read Workbook codeName
worksheet = me-&gt;get_ixml_from_zip_archive( ip_path ).
node ?= worksheet-&gt;find_from_name( &apos;sheetPr&apos; ).
IF node IS BOUND.
fill_struct_from_attributes( EXPORTING ip_element = node
CHANGING cp_structure = sheetpr ).
io_worksheet-&gt;zif_excel_sheet_vba_project~set_codename_pr( sheetpr-codename ).
ENDIF.
ENDMETHOD.</source>
</method>
</CLAS>

View File

@ -1,7 +1,8 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" UUID="C1BF274C8A345F2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20110528" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<implementing CLSNAME="ZCL_EXCEL_WORKSHEET" REFCLSNAME="ZIF_EXCEL_SHEET_PROPERTIES" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" RELTYPE="1" EDITORDER="0 "/>
<implementing CLSNAME="ZCL_EXCEL_WORKSHEET" REFCLSNAME="ZIF_EXCEL_SHEET_PROTECTION" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" RELTYPE="1" EDITORDER="0 "/>
<implementing CLSNAME="ZCL_EXCEL_WORKSHEET" REFCLSNAME="ZIF_EXCEL_SHEET_PROPERTIES" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" RELTYPE="1" EDITORDER="1 "/>
<implementing CLSNAME="ZCL_EXCEL_WORKSHEET" REFCLSNAME="ZIF_EXCEL_SHEET_PROTECTION" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110602" RELTYPE="1" EDITORDER="2 "/>
<implementing CLSNAME="ZCL_EXCEL_WORKSHEET" REFCLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" RELTYPE="1" EDITORDER="3 "/>
<publicSection>class ZCL_EXCEL_WORKSHEET definition
public
final
@ -14,6 +15,7 @@ public section.
interfaces ZIF_EXCEL_SHEET_PROPERTIES .
interfaces ZIF_EXCEL_SHEET_PROTECTION .
interfaces ZIF_EXCEL_SHEET_VBA_PROJECT .
constants C_BREAK_COLUMN type ZEXCEL_BREAK value 2. &quot;#EC NOTEXT
constants C_BREAK_NONE type ZEXCEL_BREAK value 0. &quot;#EC NOTEXT
@ -472,6 +474,16 @@ endmethod.</source>
me-&gt;zif_excel_sheet_protection~sort = zif_excel_sheet_protection=&gt;c_noactive.
endmethod.</source>
</interfaceMethod>
<interfaceMethod CLSNAME="ZCL_EXCEL_WORKSHEET" CPDNAME="ZIF_EXCEL_SHEET_VBA_PROJECT~SET_CODENAME">
<source>METHOD zif_excel_sheet_vba_project~set_codename.
me-&gt;zif_excel_sheet_vba_project~codename = ip_codename.
ENDMETHOD.</source>
</interfaceMethod>
<interfaceMethod CLSNAME="ZCL_EXCEL_WORKSHEET" CPDNAME="ZIF_EXCEL_SHEET_VBA_PROJECT~SET_CODENAME_PR">
<source>METHOD zif_excel_sheet_vba_project~set_codename_pr.
me-&gt;zif_excel_sheet_vba_project~codename_pr = ip_codename_pr.
ENDMETHOD.</source>
</interfaceMethod>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ADD_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Add drawing to the sheet" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ADD_DRAWING" SCONAME="IP_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Drawing" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>

View File

@ -1,28 +1,22 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" LANGU="E" DESCRIPT="Excel writer 2007" UUID="9551494D16947660E1000000C0A8FA28" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20110528" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<CLAS CLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" LANGU="E" DESCRIPT="Excel writer 2007" UUID="9551494D16947660E1000000C0A8FA28" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20110601" CHGDANYON="00000000" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<implementing CLSNAME="ZCL_EXCEL_WRITER_2007" REFCLSNAME="ZIF_EXCEL_WRITER" VERSION="1" EXPOSURE="2" STATE="1" AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" RELTYPE="1" EDITORDER="0 "/>
<publicSection>class ZCL_EXCEL_WRITER_2007 definition
public
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
public section.
interfaces ZIF_EXCEL_WRITER .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_WRITER_2007
<protectedSection>protected section.
*&quot;* protected components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
constants C_CONTENT_TYPES type STRING value &apos;[Content_Types].xml&apos;. &quot;#EC NOTEXT
constants C_DOCPROPS_APP type STRING value &apos;docProps/app.xml&apos;. &quot;#EC NOTEXT
constants C_DOCPROPS_CORE type STRING value &apos;docProps/core.xml&apos;. &quot;#EC NOTEXT
constants C_OFF type STRING value &apos;0&apos;. &quot;#EC NOTEXT
constants C_ON type STRING value &apos;1&apos;. &quot;#EC NOTEXT
constants C_RELATIONSHIPS type STRING value &apos;_rels/.rels&apos;. &quot;#EC NOTEXT
constants C_XL_DRAWINGS type STRING value &apos;xl/drawings/drawing#.xml&apos;. &quot;#EC NOTEXT
constants C_XL_DRAWINGS_RELS type STRING value &apos;xl/drawings/_rels/drawing#.xml.rels&apos;. &quot;#EC NOTEXT
@ -34,9 +28,6 @@ protected section.</protectedSection>
constants C_XL_THEME type STRING value &apos;xl/theme/theme1.xml&apos;. &quot;#EC NOTEXT
constants C_XL_WORKBOOK type STRING value &apos;xl/workbook.xml&apos;. &quot;#EC NOTEXT
data EXCEL type ref to ZCL_EXCEL .
data SHARED_STRINGS type ZEXCEL_T_SHARED_STRING .
data STYLES_COND_MAPPING type ZEXCEL_T_STYLES_COND_MAPPING .
data STYLES_MAPPING type ZEXCEL_T_STYLES_MAPPING .
methods CREATE
returning
@ -100,7 +91,17 @@ protected section.</protectedSection>
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_WORKBOOK
returning
value(EP_CONTENT) type XSTRING .
value(EP_CONTENT) type XSTRING .</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
constants C_OFF type STRING value &apos;0&apos;. &quot;#EC NOTEXT
constants C_ON type STRING value &apos;1&apos;. &quot;#EC NOTEXT
data SHARED_STRINGS type ZEXCEL_T_SHARED_STRING .
data STYLES_COND_MAPPING type ZEXCEL_T_STYLES_COND_MAPPING .
data STYLES_MAPPING type ZEXCEL_T_STYLES_MAPPING .
methods FLAG2BOOL
importing
!IP_FLAG type FLAG
@ -119,22 +120,22 @@ protected section.</protectedSection>
*&quot;* implementation or private method&apos;s signature</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_CONTENT_TYPES" VERSION="1" LANGU="E" DESCRIPT="Content Type XML File Name" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;[Content_Types].xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_DOCPROPS_APP" VERSION="1" LANGU="E" DESCRIPT="App XML File Name" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;docProps/app.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_DOCPROPS_CORE" VERSION="1" LANGU="E" DESCRIPT="Core XML File Name" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;docProps/core.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_CONTENT_TYPES" VERSION="1" LANGU="E" DESCRIPT="Content Type XML File Name" EXPOSURE="1" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;[Content_Types].xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_DOCPROPS_APP" VERSION="1" LANGU="E" DESCRIPT="App XML File Name" EXPOSURE="1" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;docProps/app.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_DOCPROPS_CORE" VERSION="1" LANGU="E" DESCRIPT="Core XML File Name" EXPOSURE="1" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;docProps/core.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_OFF" VERSION="1" LANGU="E" DESCRIPT="Byte Value" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;0&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_ON" VERSION="1" LANGU="E" DESCRIPT="Byte Value" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;1&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Rels XML File Name" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;_rels/.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="xlDrawings XML File Name" EXPOSURE="0" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/drawings/drawing#.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_DRAWINGS_RELS" VERSION="1" LANGU="E" DESCRIPT="xlDrawings XML File Name" EXPOSURE="0" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/drawings/_rels/drawing#.xml.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="xlRels XML File Name" EXPOSURE="0" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/_rels/workbook.xml.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_SHAREDSTRINGS" VERSION="1" LANGU="E" DESCRIPT="xlSharedStrings XML File Name" EXPOSURE="0" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/sharedStrings.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_SHEET" VERSION="1" LANGU="E" DESCRIPT="xlSheet XML File Name Template" EXPOSURE="0" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/worksheets/sheet#.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_SHEET_RELS" VERSION="1" LANGU="E" DESCRIPT="xlSheetRels XML File Name Template" EXPOSURE="0" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/worksheets/_rels/sheet#.xml.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_STYLES" VERSION="1" LANGU="E" DESCRIPT="xlStyles XML File Name" EXPOSURE="0" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/styles.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_THEME" VERSION="1" LANGU="E" DESCRIPT="xlTheme XML File Name" EXPOSURE="0" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/theme/theme1.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_WORKBOOK" VERSION="1" LANGU="E" DESCRIPT="xlWorkbook XML File Name" EXPOSURE="0" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="2" ATTVALUE="&apos;xl/workbook.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" EXPOSURE="0" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Rels XML File Name" EXPOSURE="1" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;_rels/.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="xlDrawings XML File Name" EXPOSURE="1" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/drawings/drawing#.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_DRAWINGS_RELS" VERSION="1" LANGU="E" DESCRIPT="xlDrawings XML File Name" EXPOSURE="1" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/drawings/_rels/drawing#.xml.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="xlRels XML File Name" EXPOSURE="1" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/_rels/workbook.xml.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_SHAREDSTRINGS" VERSION="1" LANGU="E" DESCRIPT="xlSharedStrings XML File Name" EXPOSURE="1" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/sharedStrings.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_SHEET" VERSION="1" LANGU="E" DESCRIPT="xlSheet XML File Name Template" EXPOSURE="1" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/worksheets/sheet#.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_SHEET_RELS" VERSION="1" LANGU="E" DESCRIPT="xlSheetRels XML File Name Template" EXPOSURE="1" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/worksheets/_rels/sheet#.xml.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_STYLES" VERSION="1" LANGU="E" DESCRIPT="xlStyles XML File Name" EXPOSURE="1" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/styles.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_THEME" VERSION="1" LANGU="E" DESCRIPT="xlTheme XML File Name" EXPOSURE="1" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/theme/theme1.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_WORKBOOK" VERSION="1" LANGU="E" DESCRIPT="xlWorkbook XML File Name" EXPOSURE="1" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="2" ATTVALUE="&apos;xl/workbook.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" EXPOSURE="1" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Shared Strings" EXPOSURE="0" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_SHARED_STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="STYLES_COND_MAPPING" VERSION="1" LANGU="E" DESCRIPT="Styles mapping" EXPOSURE="0" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110530" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_STYLES_COND_MAPPING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="STYLES_MAPPING" VERSION="1" LANGU="E" DESCRIPT="Styles mapping" EXPOSURE="0" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_STYLES_MAPPING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
@ -144,7 +145,7 @@ protected section.</protectedSection>
ep_file = me-&gt;create( ).
endmethod.</source>
</interfaceMethod>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE" VERSION="1" LANGU="E" DESCRIPT="Create Excel" EXPOSURE="0" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE" VERSION="1" LANGU="E" DESCRIPT="Create Excel" EXPOSURE="1" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE" SCONAME="EP_EXCEL" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE.
@ -315,7 +316,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_CONTENT_TYPES" VERSION="1" LANGU="E" DESCRIPT="Create &apos;[Content_Types].xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_CONTENT_TYPES" VERSION="1" LANGU="E" DESCRIPT="Create &apos;[Content_Types].xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_CONTENT_TYPES" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_CONTENT_TYPES.
@ -396,23 +397,6 @@ endmethod.</source>
**********************************************************************
* STEP 4: Create subnodes
&quot; Theme node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_partname
value = lc_xml_node_theme_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_theme_ct ).
lo_element_root-&gt;append_child( new_child = lo_element ).
&quot; Styles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_partname
value = lc_xml_node_styles_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_styles_ct ).
lo_element_root-&gt;append_child( new_child = lo_element ).
&quot; rels node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_default
@ -432,6 +416,24 @@ endmethod.</source>
value = lc_xml_node_xml_ct ).
lo_element_root-&gt;append_child( new_child = lo_element ).
&quot; Theme node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_partname
value = lc_xml_node_theme_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_theme_ct ).
lo_element_root-&gt;append_child( new_child = lo_element ).
&quot; Styles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_partname
value = lc_xml_node_styles_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_styles_ct ).
lo_element_root-&gt;append_child( new_child = lo_element ).
&quot; Workbook node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
@ -569,7 +571,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_DOCPROPS_APP" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/app.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_DOCPROPS_APP" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/app.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_DOCPROPS_APP" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_DOCPROPS_APP.
@ -790,7 +792,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_DOCPROPS_CORE" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/core.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_DOCPROPS_CORE" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/core.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_DOCPROPS_CORE" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_DOCPROPS_CORE.
@ -906,7 +908,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;_rels/.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;_rels/.rels&apos;" EXPOSURE="1" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_RELATIONSHIPS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_RELATIONSHIPS.
@ -1005,7 +1007,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/drawings/drawing1.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/drawings/drawing1.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS" SCONAME="IO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_DRAWINGS.
@ -1235,7 +1237,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS_RELS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/drawings/_rels/drawing1.xml.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS_RELS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/drawings/_rels/drawing1.xml.rels&apos;" EXPOSURE="1" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS_RELS" SCONAME="IO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_DRAWINGS_RELS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_DRAWINGS_RELS.
@ -1321,7 +1323,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/_rels/workbook.xml.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/_rels/workbook.xml.rels&apos;" EXPOSURE="1" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_RELATIONSHIPS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_RELATIONSHIPS.
@ -1469,7 +1471,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHAREDSTRINGS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/sharedStrings.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHAREDSTRINGS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/sharedStrings.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHAREDSTRINGS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_SHAREDSTRINGS.
@ -1586,7 +1588,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/sheet.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/sheet.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET" SCONAME="IO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET" SCONAME="IV_ACTIVE" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="FLAG" PARVALUE="&apos;&apos;"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
@ -2829,7 +2831,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/workbook/_rels/sheet.xml.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/workbook/_rels/sheet.xml.rels&apos;" EXPOSURE="1" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" SCONAME="IO_WORKSHEET" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" SCONAME="IV_DRAWING_INDEX" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="I"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
@ -2974,7 +2976,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/styles.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="13 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/styles.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="13 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_styles.
@ -3852,7 +3854,7 @@ endmethod.</source>
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES_COLOR_NODE" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/styles.xml&apos; color node" EXPOSURE="0" STATE="1" EDITORDER="12 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES_COLOR_NODE" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/styles.xml&apos; color node" EXPOSURE="1" STATE="1" EDITORDER="12 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES_COLOR_NODE" SCONAME="IO_DOCUMENT" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_DOCUMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_DOCUMENT"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES_COLOR_NODE" SCONAME="IO_PARENT" VERSION="1" LANGU="E" DESCRIPT="IF_IXML_ELEMENT" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="IF_IXML_ELEMENT"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_STYLES_COLOR_NODE" SCONAME="IV_COLOR_ELEM_NAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING" PARVALUE="&apos;color&apos;"/>
@ -3903,7 +3905,7 @@ ENDMETHOD.</source>
io_parent-&gt;append_child( new_child = lo_sub_element ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_TABLE" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="14 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_TABLE" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="14 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_TABLE" SCONAME="IO_TABLE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_TABLE"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_TABLE" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_TABLE.
@ -4074,7 +4076,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_THEME" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/theme/theme1.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="15 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_THEME" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/theme/theme1.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="15 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_THEME" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_THEME.
@ -4163,7 +4165,7 @@ endmethod.</source>
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_WORKBOOK" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/workbook.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="16 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_WORKBOOK" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/workbook.xml&apos;" EXPOSURE="1" STATE="1" EDITORDER="16 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110601" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_WORKBOOK" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110528" CHANGEDBY="FEMIA" CHANGEDON="20110528" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>method CREATE_XL_WORKBOOK.

View File

@ -0,0 +1,519 @@
<?xml version="1.0" encoding="utf-16"?>
<CLAS CLSNAME="ZCL_EXCEL_WRITER_XLSM" VERSION="1" LANGU="E" DESCRIPT="Excel with macro writer" UUID="0202322174CD1EE0A391D25CAFCCC6E6" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="20110602" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="702" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 " REFCLSNAME="ZCL_EXCEL_WRITER_2007" CHANGEDBY="FEMIA">
<publicSection>class ZCL_EXCEL_WRITER_XLSM definition
public
inheriting from ZCL_EXCEL_WRITER_2007
final
create public .
public section.
*&quot;* public components of class ZCL_EXCEL_WRITER_XLSM
*&quot;* do not include other source files here!!!
methods ZIF_EXCEL_WRITER~WRITE_FILE
redefinition .</publicSection>
<protectedSection>protected section.
*&quot;* protected components of class ZCL_EXCEL_WRITER_XLSM
*&quot;* do not include other source files here!!!
constants C_XL_VBAPROJECT type STRING value &apos;xl/vbaProject.bin&apos;. &quot;#EC NOTEXT
methods CREATE
redefinition .
methods CREATE_XL_RELATIONSHIPS
redefinition .
methods CREATE_XL_SHEET
redefinition .
methods CREATE_XL_WORKBOOK
redefinition .
methods CREATE_CONTENT_TYPES
redefinition .</protectedSection>
<privateSection>private section.
*&quot;* private components of class ZCL_EXCEL_WRITER_XLSM
*&quot;* do not include other source files here!!!</privateSection>
<localImplementation>*&quot;* use this source file for the definition and implementation of
*&quot;* local helper classes, interface definitions and type
*&quot;* declarations</localImplementation>
<localTypes>*&quot;* use this source file for any type of declarations (class
*&quot;* definitions, interfaces or type declarations) you need for
*&quot;* components in the private section</localTypes>
<localMacros>*&quot;* use this source file for any macro definitions you need
*&quot;* in the implementation part of the class</localMacros>
<attribute CLSNAME="ZCL_EXCEL_WRITER_XLSM" CMPNAME="C_XL_VBAPROJECT" VERSION="1" LANGU="E" EXPOSURE="1" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;xl/vbaProject.bin&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<inheritance CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" STATE="1" AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDBY="FEMIA" CHANGEDON="20110602">
<redefinition CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" MTDNAME="CREATE" EXPOSURE="1"/>
<redefinition CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" MTDNAME="CREATE_CONTENT_TYPES" EXPOSURE="1"/>
<redefinition CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" MTDNAME="CREATE_XL_RELATIONSHIPS" EXPOSURE="1"/>
<redefinition CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" MTDNAME="CREATE_XL_SHEET" EXPOSURE="1"/>
<redefinition CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" MTDNAME="CREATE_XL_WORKBOOK" EXPOSURE="1"/>
<redefinition CLSNAME="ZCL_EXCEL_WRITER_XLSM" REFCLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" MTDNAME="ZIF_EXCEL_WRITER~WRITE_FILE" EXPOSURE="2"/>
</inheritance>
<interfaceMethod CLSNAME="ZCL_EXCEL_WRITER_XLSM" CPDNAME="ZIF_EXCEL_WRITER~WRITE_FILE">
<source>METHOD zif_excel_writer~write_file.
me-&gt;excel = io_excel.
ep_file = me-&gt;create( ).
ENDMETHOD.</source>
</interfaceMethod>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD create.
* Office 2007 file format is a cab of several xml files with extension .xlsx
DATA: lo_zip TYPE REF TO cl_abap_zip,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_active_worksheet TYPE REF TO zcl_excel_worksheet,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_nested_iterator TYPE REF TO cl_object_collection_iterator,
lo_table TYPE REF TO zcl_excel_table,
lo_drawing TYPE REF TO zcl_excel_drawing,
lo_drawings TYPE REF TO zcl_excel_drawings.
DATA: lv_content TYPE xstring,
lv_active TYPE flag,
lv_xl_sheet TYPE string,
lv_xl_sheet_rels TYPE string,
lv_xl_drawing TYPE string,
lv_xl_drawing_rels TYPE string,
lv_syindex TYPE string,
lv_value TYPE string,
lv_drawing_index TYPE i.
**********************************************************************
* STEP 1: Create archive object file (ZIP)
CREATE OBJECT lo_zip.
**********************************************************************
* STEP 2: Add [Content_Types].xml to zip
lv_content = me-&gt;create_content_types( ).
lo_zip-&gt;add( name = me-&gt;c_content_types
content = lv_content ).
**********************************************************************
* STEP 3: Add _rels/.rels to zip
lv_content = me-&gt;create_relationships( ).
lo_zip-&gt;add( name = me-&gt;c_relationships
content = lv_content ).
**********************************************************************
* STEP 4: Add docProps/app.xml to zip
lv_content = me-&gt;create_docprops_app( ).
lo_zip-&gt;add( name = me-&gt;c_docprops_app
content = lv_content ).
**********************************************************************
* STEP 5: Add docProps/core.xml to zip
lv_content = me-&gt;create_docprops_core( ).
lo_zip-&gt;add( name = me-&gt;c_docprops_core
content = lv_content ).
**********************************************************************
* STEP 6: Add xl/_rels/workbook.xml.rels to zip
lv_content = me-&gt;create_xl_relationships( ).
lo_zip-&gt;add( name = me-&gt;c_xl_relationships
content = lv_content ).
**********************************************************************
* STEP 6: Add xl/_rels/workbook.xml.rels to zip
lv_content = me-&gt;create_xl_theme( ).
lo_zip-&gt;add( name = me-&gt;c_xl_theme
content = lv_content ).
**********************************************************************
* STEP 7: Add xl/workbook.xml to zip
lv_content = me-&gt;create_xl_workbook( ).
lo_zip-&gt;add( name = me-&gt;c_xl_workbook
content = lv_content ).
**********************************************************************
* STEP 8: Add xl/workbook.xml to zip
* lv_content = me-&gt;create_xl_styles_static( ).
lv_content = me-&gt;create_xl_styles( ).
lo_zip-&gt;add( name = me-&gt;c_xl_styles
content = lv_content ).
**********************************************************************
* STEP 9: Add sharedStrings.xml to zip
lv_content = me-&gt;create_xl_sharedstrings( ).
lo_zip-&gt;add( name = me-&gt;c_xl_sharedstrings
content = lv_content ).
**********************************************************************
* STEP 10: Add sheet#.xml and drawing#.xml to zip
lo_iterator = me-&gt;excel-&gt;get_worksheets_iterator( ).
lo_active_worksheet = me-&gt;excel-&gt;get_active_worksheet( ).
lv_drawing_index = 1.
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
IF lo_active_worksheet-&gt;get_guid( ) EQ lo_worksheet-&gt;get_guid( ).
lv_active = abap_true.
ELSE.
lv_active = abap_false.
ENDIF.
lv_content = me-&gt;create_xl_sheet( io_worksheet = lo_worksheet
iv_active = lv_active ).
lv_xl_sheet = me-&gt;c_xl_sheet.
MOVE sy-index TO lv_syindex.
SHIFT lv_syindex RIGHT DELETING TRAILING space.
SHIFT lv_syindex LEFT DELETING LEADING space.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xl_sheet WITH lv_syindex.
lo_zip-&gt;add( name = lv_xl_sheet
content = lv_content ).
lv_xl_sheet_rels = me-&gt;c_xl_sheet_rels.
lv_content = me-&gt;create_xl_sheet_rels( io_worksheet = lo_worksheet
iv_drawing_index = lv_drawing_index ).
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xl_sheet_rels WITH lv_syindex.
lo_zip-&gt;add( name = lv_xl_sheet_rels
content = lv_content ).
lo_nested_iterator = lo_worksheet-&gt;get_tables_iterator( ).
WHILE lo_nested_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_table ?= lo_nested_iterator-&gt;if_object_collection_iterator~get_next( ).
lv_content = me-&gt;create_xl_table( lo_table ).
lv_value = lo_table-&gt;get_name( ).
CONCATENATE &apos;xl/tables/&apos; lv_value &apos;.xml&apos; INTO lv_value.
lo_zip-&gt;add( name = lv_value
content = lv_content ).
ENDWHILE.
* Add drawings **********************************
lo_drawings = lo_worksheet-&gt;get_drawings( ).
IF lo_drawings-&gt;is_empty( ) = abap_false.
MOVE lv_drawing_index TO lv_syindex.
SHIFT lv_syindex RIGHT DELETING TRAILING space.
SHIFT lv_syindex LEFT DELETING LEADING space.
lv_content = me-&gt;create_xl_drawings( lo_worksheet ).
lv_xl_drawing = me-&gt;c_xl_drawings.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xl_drawing WITH lv_syindex.
lo_zip-&gt;add( name = lv_xl_drawing
content = lv_content ).
lv_content = me-&gt;create_xl_drawings_rels( lo_worksheet ).
lv_xl_drawing_rels = me-&gt;c_xl_drawings_rels.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xl_drawing_rels WITH lv_syindex.
lo_zip-&gt;add( name = lv_xl_drawing_rels
content = lv_content ).
ADD 1 TO lv_drawing_index.
ENDIF.
ENDWHILE.
**********************************************************************
* STEP 11: Add media
lo_iterator = me-&gt;excel-&gt;get_drawings_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_drawing ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
lv_content = lo_drawing-&gt;get_media( ).
lv_value = lo_drawing-&gt;get_media_name( ).
CONCATENATE &apos;xl/media/&apos; lv_value INTO lv_value.
lo_zip-&gt;add( name = lv_value
content = lv_content ).
ENDWHILE.
**********************************************************************
* STEP 9: Add vbaProject.bin to zip
lo_zip-&gt;add( name = me-&gt;c_xl_vbaproject
content = me-&gt;excel-&gt;zif_excel_book_vba_project~vbaproject ).
**********************************************************************
* STEP 12: Create the final zip
ep_excel = lo_zip-&gt;save( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_CONTENT_TYPES" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD create_content_types.
** Constant node name
DATA: lc_xml_node_workb_ct TYPE string VALUE &apos;application/vnd.ms-excel.sheet.macroEnabled.main+xml&apos;,
lc_xml_node_default TYPE string VALUE &apos;Default&apos;,
&quot; Node attributes
lc_xml_attr_partname TYPE string VALUE &apos;PartName&apos;,
lc_xml_attr_extension TYPE string VALUE &apos;Extension&apos;,
lc_xml_attr_contenttype TYPE string VALUE &apos;ContentType&apos;,
lc_xml_attr_codename TYPE string VALUE &apos;codeName&apos;,
lc_xml_node_workb_pn TYPE string VALUE &apos;/xl/workbook.xml&apos;,
lc_xml_node_bin_ext TYPE string VALUE &apos;bin&apos;,
lc_xml_node_bin_ct TYPE string VALUE &apos;application/vnd.ms-office.vbaProject&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_document_xml TYPE REF TO cl_xml_document,
lo_element_root TYPE REF TO if_ixml_node,
lo_element TYPE REF TO if_ixml_element,
lo_collection TYPE REF TO if_ixml_node_collection,
lo_iterator TYPE REF TO if_ixml_node_iterator,
lo_node TYPE REF TO if_ixml_node,
lo_encoding TYPE REF TO if_ixml_encoding,
lo_streamfactory TYPE REF TO if_ixml_stream_factory,
lo_ostream TYPE REF TO if_ixml_ostream,
lo_renderer TYPE REF TO if_ixml_renderer.
DATA: lv_subrc TYPE sysubrc,
lv_contenttype TYPE string,
lv_syindex(2) TYPE c.
**********************************************************************
* STEP 3: Create standard contentType
ep_content = super-&gt;create_content_types( ).
**********************************************************************
* STEP 2: modify XML adding the extension bin definition
CREATE OBJECT lo_document_xml.
lv_subrc = lo_document_xml-&gt;parse_xstring( ep_content ).
lo_document ?= lo_document_xml-&gt;m_document.
lo_element_root = lo_document-&gt;if_ixml_node~get_first_child( ).
&quot; extension node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_default
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_extension
value = lc_xml_node_bin_ext ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_bin_ct ).
lo_element_root-&gt;append_child( new_child = lo_element ).
**********************************************************************
* STEP 3: modify XML changing the contentType of node Override /xl/workbook.xml
lo_collection = lo_document-&gt;get_elements_by_tag_name( &apos;Override&apos; ).
lo_iterator = lo_collection-&gt;create_iterator( ).
lo_element ?= lo_iterator-&gt;get_next( ).
WHILE lo_element IS BOUND.
lv_contenttype = lo_element-&gt;get_attribute_ns( lc_xml_attr_partname ).
IF lv_contenttype EQ lc_xml_node_workb_pn.
lo_element-&gt;remove_attribute_ns( lc_xml_attr_contenttype ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_workb_ct ).
EXIT.
ENDIF.
lo_element ?= lo_iterator-&gt;get_next( ).
ENDWHILE.
**********************************************************************
* STEP 3: Create xstring stream
CLEAR ep_content.
lo_ixml = cl_ixml=&gt;create( ).
lo_streamfactory = lo_ixml-&gt;create_stream_factory( ).
lo_ostream = lo_streamfactory-&gt;create_ostream_xstring( string = ep_content ).
lo_renderer = lo_ixml-&gt;create_renderer( ostream = lo_ostream document = lo_document ).
lo_renderer-&gt;render( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_RELATIONSHIPS" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD create_xl_relationships.
** Constant node name
DATA: lc_xml_node_relationships TYPE string VALUE &apos;Relationships&apos;,
lc_xml_node_relationship TYPE string VALUE &apos;Relationship&apos;,
&quot; Node attributes
lc_xml_attr_id TYPE string VALUE &apos;Id&apos;,
lc_xml_attr_type TYPE string VALUE &apos;Type&apos;,
lc_xml_attr_target TYPE string VALUE &apos;Target&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;,
&quot; Node type
lc_xml_node_rid_vba_tp TYPE string VALUE &apos;http://schemas.microsoft.com/office/2006/relationships/vbaProject&apos;,
&quot; Node target
lc_xml_node_rid_vba_tg TYPE string VALUE &apos;vbaProject.bin&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_document_xml TYPE REF TO cl_xml_document,
lo_element_root TYPE REF TO if_ixml_node,
lo_element TYPE REF TO if_ixml_element,
lo_node TYPE REF TO if_ixml_node,
lo_encoding TYPE REF TO if_ixml_encoding,
lo_streamfactory TYPE REF TO if_ixml_stream_factory,
lo_ostream TYPE REF TO if_ixml_ostream,
lo_renderer TYPE REF TO if_ixml_renderer.
DATA: lv_xml_node_ridx_tg TYPE string,
lv_xml_node_ridx_id TYPE string,
lv_size TYPE i,
lv_subrc TYPE sysubrc,
lv_syindex(2) TYPE c.
**********************************************************************
* STEP 3: Create standard relationship
ep_content = super-&gt;create_xl_relationships( ).
**********************************************************************
* STEP 2: modify XML adding the vbaProject relation
CREATE OBJECT lo_document_xml.
lv_subrc = lo_document_xml-&gt;parse_xstring( ep_content ).
lo_document ?= lo_document_xml-&gt;m_document.
lo_element_root = lo_document-&gt;if_ixml_node~get_first_child( ).
lv_size = excel-&gt;get_worksheets_size( ).
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
ADD 4 TO lv_size.
lv_syindex = lv_size.
SHIFT lv_syindex RIGHT DELETING TRAILING space.
SHIFT lv_syindex LEFT DELETING LEADING space.
lv_xml_node_ridx_id = lc_xml_node_ridx_id.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_ridx_id WITH lv_syindex.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lv_xml_node_ridx_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rid_vba_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_vba_tg ).
lo_element_root-&gt;append_child( new_child = lo_element ).
**********************************************************************
* STEP 3: Create xstring stream
CLEAR ep_content.
lo_ixml = cl_ixml=&gt;create( ).
lo_streamfactory = lo_ixml-&gt;create_stream_factory( ).
lo_ostream = lo_streamfactory-&gt;create_ostream_xstring( string = ep_content ).
lo_renderer = lo_ixml-&gt;create_renderer( ostream = lo_ostream document = lo_document ).
lo_renderer-&gt;render( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD create_xl_sheet.
** Constant node name
DATA: lc_xml_attr_codename TYPE string VALUE &apos;codeName&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_document_xml TYPE REF TO cl_xml_document,
lo_element_root TYPE REF TO if_ixml_node,
lo_element TYPE REF TO if_ixml_element,
lo_collection TYPE REF TO if_ixml_node_collection,
lo_iterator TYPE REF TO if_ixml_node_iterator,
lo_node TYPE REF TO if_ixml_node,
lo_encoding TYPE REF TO if_ixml_encoding,
lo_streamfactory TYPE REF TO if_ixml_stream_factory,
lo_ostream TYPE REF TO if_ixml_ostream,
lo_renderer TYPE REF TO if_ixml_renderer.
DATA: lv_subrc TYPE sysubrc,
lv_syindex(2) TYPE c.
**********************************************************************
* STEP 3: Create standard relationship
ep_content = super-&gt;create_xl_sheet( io_worksheet = io_worksheet
iv_active = iv_active ).
**********************************************************************
* STEP 2: modify XML adding the vbaProject relation
CREATE OBJECT lo_document_xml.
lv_subrc = lo_document_xml-&gt;parse_xstring( ep_content ).
lo_document ?= lo_document_xml-&gt;m_document.
lo_element_root = lo_document-&gt;if_ixml_node~get_first_child( ).
* lo_collection = lo_document-&gt;get_elements_by_tag_name( &apos;fileVersion&apos; ).
* lo_iterator = lo_collection-&gt;create_iterator( ).
* lo_element ?= lo_iterator-&gt;get_next( ).
* WHILE lo_element IS BOUND.
* lo_element-&gt;set_attribute_ns( name = lc_xml_attr_codename
* value = me-&gt;excel-&gt;zif_excel_book_vba_project~codename ).
* lo_element ?= lo_iterator-&gt;get_next( ).
* ENDWHILE.
lo_collection = lo_document-&gt;get_elements_by_tag_name( &apos;sheetPr&apos; ).
lo_iterator = lo_collection-&gt;create_iterator( ).
lo_element ?= lo_iterator-&gt;get_next( ).
WHILE lo_element IS BOUND.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_codename
value = io_worksheet-&gt;zif_excel_sheet_vba_project~codename_pr ).
lo_element ?= lo_iterator-&gt;get_next( ).
ENDWHILE.
**********************************************************************
* STEP 3: Create xstring stream
CLEAR ep_content.
lo_ixml = cl_ixml=&gt;create( ).
lo_streamfactory = lo_ixml-&gt;create_stream_factory( ).
lo_ostream = lo_streamfactory-&gt;create_ostream_xstring( string = ep_content ).
lo_renderer = lo_ixml-&gt;create_renderer( ostream = lo_ostream document = lo_document ).
lo_renderer-&gt;render( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_WORKBOOK" VERSION="0" EXPOSURE="0" STATE="0" EDITORDER="0 " DISPID="0 " CREATEDON="00000000" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD create_xl_workbook.
** Constant node name
DATA: lc_xml_attr_codename TYPE string VALUE &apos;codeName&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_document_xml TYPE REF TO cl_xml_document,
lo_element_root TYPE REF TO if_ixml_node,
lo_element TYPE REF TO if_ixml_element,
lo_collection TYPE REF TO if_ixml_node_collection,
lo_iterator TYPE REF TO if_ixml_node_iterator,
lo_node TYPE REF TO if_ixml_node,
lo_encoding TYPE REF TO if_ixml_encoding,
lo_streamfactory TYPE REF TO if_ixml_stream_factory,
lo_ostream TYPE REF TO if_ixml_ostream,
lo_renderer TYPE REF TO if_ixml_renderer.
DATA: lv_subrc TYPE sysubrc,
lv_syindex(2) TYPE c.
**********************************************************************
* STEP 3: Create standard relationship
ep_content = super-&gt;create_xl_workbook( ).
**********************************************************************
* STEP 2: modify XML adding the vbaProject relation
CREATE OBJECT lo_document_xml.
lv_subrc = lo_document_xml-&gt;parse_xstring( ep_content ).
lo_document ?= lo_document_xml-&gt;m_document.
lo_element_root = lo_document-&gt;if_ixml_node~get_first_child( ).
lo_collection = lo_document-&gt;get_elements_by_tag_name( &apos;fileVersion&apos; ).
lo_iterator = lo_collection-&gt;create_iterator( ).
lo_element ?= lo_iterator-&gt;get_next( ).
WHILE lo_element IS BOUND.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_codename
value = me-&gt;excel-&gt;zif_excel_book_vba_project~codename ).
lo_element ?= lo_iterator-&gt;get_next( ).
ENDWHILE.
lo_collection = lo_document-&gt;get_elements_by_tag_name( &apos;workbookPr&apos; ).
lo_iterator = lo_collection-&gt;create_iterator( ).
lo_element ?= lo_iterator-&gt;get_next( ).
WHILE lo_element IS BOUND.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_codename
value = me-&gt;excel-&gt;zif_excel_book_vba_project~codename_pr ).
lo_element ?= lo_iterator-&gt;get_next( ).
ENDWHILE.
**********************************************************************
* STEP 3: Create xstring stream
CLEAR ep_content.
lo_ixml = cl_ixml=&gt;create( ).
lo_streamfactory = lo_ixml-&gt;create_stream_factory( ).
lo_ostream = lo_streamfactory-&gt;create_ostream_xstring( string = ep_content ).
lo_renderer = lo_ixml-&gt;create_renderer( ostream = lo_ostream document = lo_document ).
lo_renderer-&gt;render( ).
ENDMETHOD.</source>
</method>
</CLAS>

View File

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-16"?>
<INTF CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" VERSION="1" LANGU="E" DESCRIPT="Excel workbook VBA Project" UUID="0202322174CD1EE0A3917E189976C6E6" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" CHGDANYON="00000000" UNICODE="X" R3RELEASE="702">
<attribute CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="CODENAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="CODENAME_PR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="VBAPROJECT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="1" TYPE="XSTRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<method CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="SET_CODENAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="SET_CODENAME" SCONAME="IP_CODENAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
</method>
<method CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="SET_CODENAME_PR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="SET_CODENAME_PR" SCONAME="IP_CODENAME_PR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
</method>
<method CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="SET_VBAPROJECT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" CMPNAME="SET_VBAPROJECT" SCONAME="IP_VBAPROJECT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110601" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="XSTRING"/>
</method>
</INTF>

View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding="utf-16"?>
<INTF CLSNAME="ZIF_EXCEL_CUSTOMUI_ELEMENT" VERSION="1" LANGU="E" DESCRIPT="Excel customUI element" UUID="0202322174CD1ED0A39E8884ABB15775" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" CHGDANYON="00000000" UNICODE="X" R3RELEASE="702">
<attribute CLSNAME="ZIF_EXCEL_CUSTOMUI_ELEMENT" CMPNAME="ID" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZIF_EXCEL_CUSTOMUI_ELEMENT" CMPNAME="LABEL" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
</INTF>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-16"?>
<INTF CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" VERSION="1" LANGU="E" DESCRIPT="Excel workbook VBA Project" UUID="0202322174CD1EE0A394580C5E3E46E6" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" CHGDANYON="00000000" UNICODE="X" R3RELEASE="702">
<attribute CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="CODENAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="CODENAME_PR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="VBAPROJECT" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="1" TYPE="XSTRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="702" TYPESRC_LENG="0 "/>
<method CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="SET_CODENAME" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="SET_CODENAME" SCONAME="IP_CODENAME" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
</method>
<method CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="SET_CODENAME_PR" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDBY="FEMIA" CHANGEDON="20110602" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="702" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZIF_EXCEL_SHEET_VBA_PROJECT" CMPNAME="SET_CODENAME_PR" SCONAME="IP_CODENAME_PR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20110602" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING"/>
</method>
</INTF>

View File

@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100817" UNAM="FEMIA" UDAT="20110528" VERN="000048" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20110528" STIME="183344" IDATE="20110528" ITIME="183344" UCCHECK="X">
<PROG NAME="ZDEMO_EXCEL" VARCL="X" SUBC="1" CNAM="BCUSER" CDAT="20100817" UNAM="FEMIA" UDAT="20110602" VERN="000049" RSTAT="T" RMAND="000" RLOAD="E" FIXPT="X" SDATE="20110602" STIME="111342" IDATE="20110602" ITIME="111342" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Run all ABAP2XLSX Demo Programs" LENGTH="31 "/>
@ -64,5 +64,6 @@ START-OF-SELECTION.
SUBMIT zdemo_excel25 AND RETURN. &quot; abap2xlsx Demo: Create and xlsx on Application Server (could be executed in batch mode)
SUBMIT zdemo_excel26 WITH p_path = p_path AND RETURN. &quot; abap2xlsx Demo: Reader demo
SUBMIT zdemo_excel27 WITH p_path = p_path AND RETURN. &quot; abap2xlsx Demo: Conditional Formatting
SUBMIT zdemo_excel28 WITH p_path = p_path AND RETURN. &quot; abap2xlsx Demo: CSV writer</source>
SUBMIT zdemo_excel28 WITH p_path = p_path AND RETURN. &quot; abap2xlsx Demo: CSV writer
* SUBMIT zdemo_excel29 WITH p_path = p_path AND RETURN. &quot; abap2xlsx Demo: Macro enabled workbook</source>
</PROG>

View File

@ -0,0 +1,89 @@
<?xml version="1.0" encoding="utf-16"?>
<PROG NAME="ZDEMO_EXCEL29" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20110601" UNAM="FEMIA" UDAT="20110602" VERN="000015" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20110602" STIME="111927" IDATE="20110602" ITIME="111927" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="abap2xlsx Demo: Marco-Enabled workbook" LENGTH="38 "/>
<textElement ID="S" KEY="P_PATH" ENTRY=" Macro-enabled Workbook" LENGTH="30 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZDEMO_EXCEL26
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel29.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_excel_writer TYPE REF TO zif_excel_writer,
lo_excel_reader TYPE REF TO zif_excel_reader.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE solix_tab.
DATA: lv_full_path TYPE string,
lv_filename TYPE string,
lv_workdir TYPE string,
lv_file_separator TYPE c.
PARAMETERS: p_path TYPE zexcel_export_dir OBLIGATORY.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_path.
DATA: lt_filetable TYPE filetable,
lv_rc TYPE i.
cl_gui_frontend_services=&gt;get_sapgui_workdir( CHANGING sapworkdir = lv_workdir ).
cl_gui_cfw=&gt;flush( ).
p_path = lv_workdir.
CALL METHOD cl_gui_frontend_services=&gt;file_open_dialog
EXPORTING
window_title = &apos;Select Macro-Enabled Workbook template&apos;
default_extension = &apos;*.xlsm&apos;
file_filter = &apos;Excel Macro-Enabled Workbook (*.xlsm)|*.xlsm&apos;
initial_directory = lv_workdir
CHANGING
file_table = lt_filetable
rc = lv_rc
EXCEPTIONS
file_open_dialog_failed = 1
cntl_error = 2
error_no_gui = 3
not_supported_by_gui = 4
OTHERS = 5.
IF sy-subrc &lt;&gt; 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
READ TABLE lt_filetable INTO lv_filename INDEX 1.
p_path = lv_filename.
START-OF-SELECTION.
lv_full_path = p_path.
CREATE OBJECT lo_excel_reader TYPE zcl_excel_reader_xlsm.
CREATE OBJECT lo_excel_writer TYPE zcl_excel_writer_xlsm.
lo_excel = lo_excel_reader-&gt;load_file( lv_full_path ).
lv_file = lo_excel_writer-&gt;write_file( lo_excel ).
REPLACE &apos;.xlsm&apos; IN lv_full_path WITH &apos;FromReader.xlsm&apos;.
&quot; Convert to binary
CALL FUNCTION &apos;SCMS_XSTRING_TO_BINARY&apos;
EXPORTING
buffer = lv_file
IMPORTING
output_length = lv_bytecount
TABLES
binary_tab = lt_file_tab.
&quot; Save the file
cl_gui_frontend_services=&gt;gui_download( EXPORTING bin_filesize = lv_bytecount
filename = lv_full_path
filetype = &apos;BIN&apos;
CHANGING data_tab = lt_file_tab ).</source>
</PROG>