abap2xlsx/build/old_releases/NUGG_ABAP2XLSX_V_1_0.nugg

11527 lines
994 KiB
XML

<?xml version="1.0" encoding="utf-16"?>
<nugget name="ABAP2XLSX">
<CLAS CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="E8BF274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_ALIGNMENT definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_ALIGNMENT
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data HORIZONTAL type ZEXCEL_ALIGNMENT .
data VERTICAL type ZEXCEL_ALIGNMENT .
data TEXTROTATION type ZEXCEL_TEXT_ROTATION value 0. &quot;#EC NOTEXT .
data WRAPTEXT type FLAG .
data SHRINKTOFIT type FLAG .
data INDENT type ZEXCEL_INDENT value 0. &quot;#EC NOTEXT .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_ALIGNMENT
*&quot;* do not include other source files here!!!
private section.
constants C_HORIZONTAL_GENERAL type ZEXCEL_ALIGNMENT value &apos;general&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_LEFT type ZEXCEL_ALIGNMENT value &apos;left&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_RIGHT type ZEXCEL_ALIGNMENT value &apos;right&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_CENTER type ZEXCEL_ALIGNMENT value &apos;center&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_CENTER_CONTINUOUS type ZEXCEL_ALIGNMENT value &apos;centerContinuous&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_JUSTIFY type ZEXCEL_ALIGNMENT value &apos;justify&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_BOTTOM type ZEXCEL_ALIGNMENT value &apos;bottom&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_TOP type ZEXCEL_ALIGNMENT value &apos;top&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_CENTER type ZEXCEL_ALIGNMENT value &apos;center&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_JUSTIFY type ZEXCEL_ALIGNMENT value &apos;justify&apos;. &quot;#EC NOTEXT</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_CENTER" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;center&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_CENTER_CONTINUOUS" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;centerContinuous&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_GENERAL" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;general&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_JUSTIFY" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;justify&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_LEFT" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;left&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_RIGHT" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;right&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_BOTTOM" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;bottom&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_CENTER" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;center&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_JUSTIFY" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;justify&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_TOP" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;top&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="HORIZONTAL" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="INDENT" VERSION="1" LANGU="E" DESCRIPT="Indent" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_INDENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="SHRINKTOFIT" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_STYLE_ALIGNMENT" CMPNAME="TEXTROTATION" VERSION="1" LANGU="E" DESCRIPT="Text Rotation" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_TEXT_ROTATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="VERTICAL" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="WRAPTEXT" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
horizontal = me-&gt;c_horizontal_general.
vertical = me-&gt;c_vertical_bottom.
wrapText = abap_false.
shrinkToFit = abap_false.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_BORDER" VERSION="1" LANGU="E" DESCRIPT="Border" UUID="85E3284C6D8F5D2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_STYLE_BORDER definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_BORDER
*&quot;* do not include other source files here!!!
public section.
data BORDER_STYLE type ZEXCEL_BORDER .
data BORDER_COLOR type ZEXCEL_STYLE_COLOR_ARGB .
class-data C_BORDER_NONE type ZEXCEL_BORDER value &apos;none&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DASHDOT type ZEXCEL_BORDER value &apos;dashDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DASHDOTDOT type ZEXCEL_BORDER value &apos;dashDotDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DASHED type ZEXCEL_BORDER value &apos;dashed&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DOTTED type ZEXCEL_BORDER value &apos;dotted&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DOUBLE type ZEXCEL_BORDER value &apos;double&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_HAIR type ZEXCEL_BORDER value &apos;hair&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUM type ZEXCEL_BORDER value &apos;medium&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUMDASHDOT type ZEXCEL_BORDER value &apos;mediumDashDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUMDASHDOTDOT type ZEXCEL_BORDER value &apos;mediumDashDotDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUMDASHED type ZEXCEL_BORDER value &apos;mediumDashed&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_SLANTDASHDOT type ZEXCEL_BORDER value &apos;slantDashDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_THICK type ZEXCEL_BORDER value &apos;thick&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_THIN type ZEXCEL_BORDER value &apos;thin&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_BORDER
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_BORDER" CMPNAME="BORDER_COLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="BORDER_STYLE" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DASHDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dashDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DASHDOTDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dashDotDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DASHED" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dashed&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DOTTED" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dotted&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DOUBLE" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;double&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_HAIR" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;hair&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUM" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;medium&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUMDASHDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;mediumDashDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUMDASHDOTDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;mediumDashDotDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUMDASHED" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;mediumDashed&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_NONE" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_SLANTDASHDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;slantDashDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_THICK" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;thick&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_THIN" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;thin&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
border_style = zcl_excel_style_border=&gt;c_border_none.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_BORDERS" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="FFBF274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_BORDERS definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_BORDERS
*&quot;* do not include other source files here!!!
public section.
data LEFT type ref to ZCL_EXCEL_STYLE_BORDER .
data RIGHT type ref to ZCL_EXCEL_STYLE_BORDER .
data TOP type ref to ZCL_EXCEL_STYLE_BORDER .
data DOWN type ref to ZCL_EXCEL_STYLE_BORDER .
data DIAGONAL type ref to ZCL_EXCEL_STYLE_BORDER .
data ALLBORDERS type ref to ZCL_EXCEL_STYLE_BORDER .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(ES_FILL) type ZEXCEL_S_STYLE_BORDER .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_BORDERS
*&quot;* do not include other source files here!!!
private section.
constants C_DIAGONAL_NONE type ZEXCEL_DIAGONAL value 0. &quot;#EC NOTEXT
constants C_DIAGONAL_UP type ZEXCEL_DIAGONAL value 1. &quot;#EC NOTEXT
constants C_DIAGONAL_DOWN type ZEXCEL_DIAGONAL value 2. &quot;#EC NOTEXT
constants C_DIAGONAL_BOTH type ZEXCEL_DIAGONAL value 3. &quot;#EC NOTEXT</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_BORDERS" CMPNAME="ALLBORDERS" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_BOTH" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="3" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_DOWN" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_NONE" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_UP" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="DIAGONAL" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="DOWN" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="LEFT" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="RIGHT" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="TOP" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" DESCRIPT="Get structure" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="GET_STRUCTURE" SCONAME="ES_FILL" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLE_BORDER"/>
<source>METHOD get_structure.
* Check if all borders is set otherwise check single border
IF me-&gt;allborders IS BOUND.
es_fill-left_color = me-&gt;allborders-&gt;border_color.
es_fill-left_style = me-&gt;allborders-&gt;border_style.
es_fill-right_color = me-&gt;allborders-&gt;border_color.
es_fill-right_style = me-&gt;allborders-&gt;border_style.
es_fill-top_color = me-&gt;allborders-&gt;border_color.
es_fill-top_style = me-&gt;allborders-&gt;border_style.
es_fill-bottom_color = me-&gt;allborders-&gt;border_color.
es_fill-bottom_style = me-&gt;allborders-&gt;border_style.
ELSE.
IF me-&gt;left IS BOUND.
es_fill-left_color = me-&gt;left-&gt;border_color.
es_fill-left_style = me-&gt;left-&gt;border_style.
ENDIF.
IF me-&gt;right IS BOUND.
es_fill-right_color = me-&gt;right-&gt;border_color.
es_fill-right_style = me-&gt;right-&gt;border_style.
ENDIF.
IF me-&gt;top IS BOUND.
es_fill-top_color = me-&gt;top-&gt;border_color.
es_fill-top_style = me-&gt;top-&gt;border_style.
ENDIF.
IF me-&gt;down IS BOUND.
es_fill-bottom_color = me-&gt;down-&gt;border_color.
es_fill-bottom_style = me-&gt;down-&gt;border_style.
ENDIF.
ENDIF.
* Check if diagonal is set
IF me-&gt;diagonal IS BOUND.
es_fill-diagonal_color = me-&gt;diagonal-&gt;border_color.
es_fill-diagonal_style = me-&gt;diagonal-&gt;border_style.
ENDIF.
ENDMETHOD. &quot;get_structure</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_COLOR" VERSION="1" LANGU="E" DESCRIPT="Excel Style Color" UUID="AE8C304C8769E92CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_STYLE_COLOR definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_COLOR
*&quot;* do not include other source files here!!!
public section.
class-data C_BLACK type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF000000&apos;. &quot;#EC NOTEXT .
class-data C_BLUE type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF0000FF&apos;. &quot;#EC NOTEXT .
class-data C_DARKBLUE type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF000080&apos;. &quot;#EC NOTEXT .
class-data C_DARKGREEN type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF008000&apos;. &quot;#EC NOTEXT .
class-data C_DARKRED type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF800000&apos;. &quot;#EC NOTEXT .
class-data C_DARKYELLOW type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF808000&apos;. &quot;#EC NOTEXT .
class-data C_GRAY type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFCCCCCC&apos;. &quot;#EC NOTEXT .
class-data C_GREEN type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF00FF00&apos;. &quot;#EC NOTEXT .
class-data C_RED type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFFF0000&apos;. &quot;#EC NOTEXT .
class-data C_WHITE type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFFFFFFF&apos;. &quot;#EC NOTEXT .
class-data C_YELLOW type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFFFFF00&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .
class-methods CREATE_NEW_ARGB
importing
!IP_RED type ZEXCEL_STYLE_COLOR_COMPONENT
!IP_GREEN type ZEXCEL_STYLE_COLOR_COMPONENT
!IP_BLU type ZEXCEL_STYLE_COLOR_COMPONENT
returning
value(EP_COLOR_ARGB) type ZEXCEL_STYLE_COLOR_ARGB .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_STYLE_COLOR
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_COLOR
*&quot;* do not include other source files here!!!
private section.
class-data C_ALPHA type CHAR2 value &apos;FF&apos;. &quot;#EC NOTEXT .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_COLOR" CMPNAME="C_ALPHA" VERSION="1" LANGU="E" DESCRIPT="Color Alpha" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_BLACK" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF000000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_BLUE" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF0000FF&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKBLUE" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF000080&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKGREEN" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF008000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKRED" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF800000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKYELLOW" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF808000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_GRAY" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFCCCCCC&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_GREEN" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF00FF00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_RED" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFFF0000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_WHITE" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFFFFFFF&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_YELLOW" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFFFFF00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" VERSION="1" LANGU="E" DESCRIPT="Create a custom ARGB color from RGB" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100705" MTDTYPE="0" MTDDECLTYP="1" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="IP_RED" VERSION="1" LANGU="E" DESCRIPT="Color Component" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_COMPONENT"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="IP_GREEN" VERSION="1" LANGU="E" DESCRIPT="Color Component" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_COMPONENT"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="IP_BLU" VERSION="1" LANGU="E" DESCRIPT="Color Component" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_COMPONENT"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="EP_COLOR_ARGB" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100705" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB"/>
<source>METHOD create_new_argb.
CONCATENATE zcl_excel_style_color=&gt;c_alpha ip_red ip_green ip_blu INTO ep_color_argb.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="25C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_CONDITIONAL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_CONDITIONAL
*&quot;* do not include other source files here!!!
public section.
class-data C_ICONSET_3ARROWS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Arrows&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3ARROWSGRAY type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3ArrowsGray&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3FLAGS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Flags&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3SIGNS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Signs&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3SYMBOLS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Symbols&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3SYMBOLS2 type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Symbols2&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3TRAFFICLIGHTS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3TRAFFICLIGHTS2 type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3TrafficLights2&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4ARROWS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4Arrows&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4ARROWSGRAY type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4ArrowsGray&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4RATING type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4Rating&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4REDTOBLACK type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4RedToBlack&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4TRAFFICLIGHTS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4TrafficLights&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5ARROWS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5Arrows&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5ARROWSGRAY type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5ArrowsGray&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5QUARTERS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5Quarters&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5RATING type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5Rating&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_BEGINSWITH type ZEXCEL_CONDITION_OPERATOR value &apos;beginsWith&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_BETWEEN type ZEXCEL_CONDITION_OPERATOR value &apos;between&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_CONTAINSTEXT type ZEXCEL_CONDITION_OPERATOR value &apos;containsText&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_ENDSWITH type ZEXCEL_CONDITION_OPERATOR value &apos;endsWith&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_EQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;equal&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_GREATERTHAN type ZEXCEL_CONDITION_OPERATOR value &apos;greaterThan&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_GREATERTHANOREQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;greaterThanOrEqual&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_LESSTHAN type ZEXCEL_CONDITION_OPERATOR value &apos;lessThan&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_LESSTHANOREQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;lessThanOrEqual&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_NONE type ZEXCEL_CONDITION_OPERATOR value &apos;&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_NOTCONTAINS type ZEXCEL_CONDITION_OPERATOR value &apos;notContains&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_NOTEQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;notEqual&apos;. &quot;#EC NOTEXT .
class-data C_RULE_CELLIS type ZEXCEL_CONDITION_RULE value &apos;cellIs&apos;. &quot;#EC NOTEXT .
class-data C_RULE_CONTAINSTEXT type ZEXCEL_CONDITION_RULE value &apos;containsText&apos;. &quot;#EC NOTEXT .
class-data C_RULE_EXPRESSION type ZEXCEL_CONDITION_RULE value &apos;expression&apos;. &quot;#EC NOTEXT .
class-data C_RULE_ICONSET type ZEXCEL_CONDITION_RULE value &apos;iconSet&apos;. &quot;#EC NOTEXT .
class-data C_RULE_NONE type ZEXCEL_CONDITION_RULE value &apos;none&apos;. &quot;#EC NOTEXT .
data FORMULA type ZEXCEL_STYLE_FORMULA .
data ICONSET type ZEXCEL_CONDITION_RULE_ICONSET .
data OPERATOR type ZEXCEL_CONDITION_OPERATOR .
data PRIORITY type ZEXCEL_STYLE_PRIORITY value 1. &quot;#EC NOTEXT .
data RULE type ZEXCEL_CONDITION_RULE .
methods CONSTRUCTOR .
methods GET_DIMENSION_RANGE
returning
value(EP_DIMENSION_RANGE) type STRING .
methods SET_RANGE
importing
!IP_START_ROW type ZEXCEL_CELL_ROW
!IP_START_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
!IP_STOP_ROW type ZEXCEL_CELL_ROW
!IP_STOP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_CONDITIONAL
*&quot;* do not include other source files here!!!
private section.
data START_CELL type ZEXCEL_S_CELL_DATA .
data STOP_CELL type ZEXCEL_S_CELL_DATA .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3ARROWS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Arrows&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3ARROWSGRAY" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3ArrowsGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3FLAGS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Flags&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3SIGNS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Signs&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3SYMBOLS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Symbols&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3SYMBOLS2" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Symbols2&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3TRAFFICLIGHTS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3TRAFFICLIGHTS2" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3TrafficLights2&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4ARROWS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4Arrows&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4ARROWSGRAY" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4ArrowsGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4RATING" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4Rating&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4REDTOBLACK" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4RedToBlack&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4TRAFFICLIGHTS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4TrafficLights&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5ARROWS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5Arrows&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5ARROWSGRAY" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5ArrowsGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5QUARTERS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5Quarters&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5RATING" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5Rating&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_BEGINSWITH" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;beginsWith&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_BETWEEN" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;between&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_CONTAINSTEXT" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;containsText&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_ENDSWITH" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;endsWith&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_EQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;equal&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_GREATERTHAN" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;greaterThan&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_GREATERTHANOREQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;greaterThanOrEqual&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_LESSTHAN" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;lessThan&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_LESSTHANOREQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="26 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;lessThanOrEqual&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_NONE" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="27 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_NOTCONTAINS" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="28 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;notContains&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_NOTEQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="29 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;notEqual&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_CELLIS" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="30 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;cellIs&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_CONTAINSTEXT" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="31 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;containsText&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_EXPRESSION" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="32 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;expression&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_ICONSET" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="33 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;iconSet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_NONE" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="34 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="FORMULA" VERSION="1" LANGU="E" DESCRIPT="Style formula" EXPOSURE="2" STATE="1" EDITORDER="35 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FORMULA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="ICONSET" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="36 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="OPERATOR" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="37 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="PRIORITY" VERSION="1" LANGU="E" DESCRIPT="Style Priority" EXPOSURE="2" STATE="1" EDITORDER="38 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_PRIORITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="RULE" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="39 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="START_CELL" VERSION="1" LANGU="E" DESCRIPT="Cell data" EXPOSURE="0" STATE="1" EDITORDER="40 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="STOP_CELL" VERSION="1" LANGU="E" DESCRIPT="Cell data" EXPOSURE="0" STATE="1" EDITORDER="41 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
rule = me-&gt;c_rule_none.
operator = me-&gt;c_operator_none.
* inizialize dimension range
stop_cell-cell_row = 1.
stop_cell-cell_column = 1.
start_cell-cell_row = 1.
start_cell-cell_column = 1.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="GET_DIMENSION_RANGE" VERSION="1" LANGU="E" DESCRIPT="Get used range dimension" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDBY="FEMIA" CHANGEDON="20100709" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="GET_DIMENSION_RANGE" SCONAME="EP_DIMENSION_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD get_dimension_range.
IF stop_cell EQ start_cell. &quot;only one cell
ep_dimension_range = start_cell-cell_coords.
ELSE.
CONCATENATE start_cell-cell_coords &apos;:&apos; stop_cell-cell_coords INTO ep_dimension_range.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" VERSION="1" LANGU="E" DESCRIPT="Set range used in conditional formatting" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_START_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_START_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_STOP_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_STOP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<source>METHOD set_range.
DATA: lv_column TYPE zexcel_cell_column,
lv_row_alpha TYPE string.
lv_column = zcl_excel_common=&gt;convert_column2int( ip_stop_column ).
stop_cell-cell_row = 1.
stop_cell-cell_column = lv_column.
lv_row_alpha = ip_stop_row.
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE ip_stop_column lv_row_alpha INTO stop_cell-cell_coords.
lv_column = zcl_excel_common=&gt;convert_column2int( ip_start_column ).
start_cell-cell_row = 1.
start_cell-cell_column = lv_column.
lv_row_alpha = ip_start_row.
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE ip_start_column lv_row_alpha INTO start_cell-cell_coords.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_FILL" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="44C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_FILL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_FILL
*&quot;* do not include other source files here!!!
public section.
class-data C_FILL_NONE type ZEXCEL_FILL_TYPE value &apos;none&apos;. &quot;#EC NOTEXT .
class-data C_FILL_SOLID type ZEXCEL_FILL_TYPE value &apos;solid&apos;. &quot;#EC NOTEXT .
class-data C_FILL_GRADIENT_LINEAR type ZEXCEL_FILL_TYPE value &apos;linear&apos;. &quot;#EC NOTEXT .
class-data C_FILL_GRADIENT_PATH type ZEXCEL_FILL_TYPE value &apos;path&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKDOWN type ZEXCEL_FILL_TYPE value &apos;darkDown&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKGRAY type ZEXCEL_FILL_TYPE value &apos;darkGray&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKGRID type ZEXCEL_FILL_TYPE value &apos;darkGrid&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKHORIZONTAL type ZEXCEL_FILL_TYPE value &apos;darkHorizontal&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKTRELLIS type ZEXCEL_FILL_TYPE value &apos;darkTrellis&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKUP type ZEXCEL_FILL_TYPE value &apos;darkUp&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKVERTICAL type ZEXCEL_FILL_TYPE value &apos;darkVertical&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_GRAY0625 type ZEXCEL_FILL_TYPE value &apos;gray0625&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_GRAY125 type ZEXCEL_FILL_TYPE value &apos;gray125&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTDOWN type ZEXCEL_FILL_TYPE value &apos;lightDown&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTGRAY type ZEXCEL_FILL_TYPE value &apos;lightGray&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTGRID type ZEXCEL_FILL_TYPE value &apos;lightGrid&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTHORIZONTAL type ZEXCEL_FILL_TYPE value &apos;lightHorizontal&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTTRELLIS type ZEXCEL_FILL_TYPE value &apos;lightTrellis&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTUP type ZEXCEL_FILL_TYPE value &apos;lightUp&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTVERTICAL type ZEXCEL_FILL_TYPE value &apos;lightVertical&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_MEDIUMGRAY type ZEXCEL_FILL_TYPE value &apos;mediumGray&apos;. &quot;#EC NOTEXT .
data FILLTYPE type ZEXCEL_FILL_TYPE .
data ROTATION type ZEXCEL_ROTATION .
data FGCOLOR type ZEXCEL_STYLE_COLOR_ARGB .
data BGCOLOR type ZEXCEL_STYLE_COLOR_ARGB value &apos;64&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(ES_FILL) type ZEXCEL_S_STYLE_FILL .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_FILL
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_FILL" CMPNAME="BGCOLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="0" ATTVALUE="&apos;64&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_GRADIENT_LINEAR" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;linear&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_GRADIENT_PATH" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;path&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_NONE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKDOWN" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkDown&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKGRAY" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKGRID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkGrid&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKHORIZONTAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkHorizontal&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKTRELLIS" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkTrellis&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKUP" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkUp&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKVERTICAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkVertical&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_GRAY0625" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;gray0625&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_GRAY125" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;gray125&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTDOWN" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightDown&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTGRAY" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTGRID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightGrid&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTHORIZONTAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightHorizontal&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTTRELLIS" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightTrellis&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTUP" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightUp&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTVERTICAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightVertical&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_MEDIUMGRAY" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;mediumGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_SOLID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;solid&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="FGCOLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="FILLTYPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="ROTATION" VERSION="1" LANGU="E" DESCRIPT="Rotation" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ROTATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
filltype = zcl_excel_style_fill=&gt;c_fill_none.
rotation = 0.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" DESCRIPT="Get structure" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="GET_STRUCTURE" SCONAME="ES_FILL" VERSION="1" LANGU="E" DESCRIPT="Cell Fill" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLE_FILL"/>
<source>METHOD get_structure.
es_fill-rotation = me-&gt;rotation.
es_fill-filltype = me-&gt;filltype.
es_fill-fgColor = me-&gt;fgColor.
es_fill-bgColor = me-&gt;bgColor.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_FONT" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="5BC0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_FONT definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data BOLD type FLAG .
data COLOR type ZEXCEL_STYLE_COLOR_ARGB .
class-data C_SCHEME_MAJOR type ZEXCEL_STYLE_FONT_SCHEME value &apos;major&apos;. &quot;#EC NOTEXT .
class-data C_SCHEME_MINOR type ZEXCEL_STYLE_FONT_SCHEME value &apos;minor&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_DOUBLE type CHAR20 value &apos;double&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_DOUBLEACCOUNTING type CHAR20 value &apos;doubleAccounting&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_NONE type CHAR20 value &apos;none&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_SINGLE type CHAR20 value &apos;single&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_SINGLEACCOUNTING type CHAR20 value &apos;singleAccounting&apos;. &quot;#EC NOTEXT .
data FAMILY type INT1 value 2. &quot;#EC NOTEXT .
data ITALIC type FLAG .
data NAME type CHAR255 value &apos;Calibri&apos;. &quot;#EC NOTEXT .
data SCHEME type ZEXCEL_STYLE_FONT_SCHEME .
data SIZE type INT1 value 11. &quot;#EC NOTEXT .
data STRIKETHROUGH type FLAG .
data UNDERLINE type FLAG .
data UNDERLINE_MODE type CHAR20 .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(ES_FONT) type ZEXCEL_S_STYLE_FONT .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_STYLE_FONT" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="BOLD" VERSION="1" LANGU="E" DESCRIPT="Bold" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="COLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_SCHEME_MAJOR" VERSION="1" LANGU="E" DESCRIPT="Char255" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;major&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FONT_SCHEME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_SCHEME_MINOR" VERSION="1" LANGU="E" DESCRIPT="Char255" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;minor&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FONT_SCHEME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_DOUBLE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;double&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_DOUBLEACCOUNTING" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;doubleAccounting&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_NONE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_SINGLE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;single&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_SINGLEACCOUNTING" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;singleAccounting&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="FAMILY" VERSION="1" LANGU="E" DESCRIPT="Family code" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="0" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="ITALIC" VERSION="1" LANGU="E" DESCRIPT="Italic" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="NAME" VERSION="1" LANGU="E" DESCRIPT="Name" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTVALUE="&apos;Calibri&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR255" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="SCHEME" VERSION="1" LANGU="E" DESCRIPT="Scheme code" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FONT_SCHEME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Size" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTVALUE="11" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="STRIKETHROUGH" VERSION="1" LANGU="E" DESCRIPT="Strikethrough" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="UNDERLINE" VERSION="1" LANGU="E" DESCRIPT="Underline" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="UNDERLINE_MODE" VERSION="1" LANGU="E" DESCRIPT="Underline mode" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
me-&gt;color = zcl_excel_style_color=&gt;c_black.
me-&gt;scheme = zcl_excel_style_font=&gt;c_scheme_minor.
me-&gt;underline_mode = zcl_excel_style_font=&gt;c_underline_single.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" DESCRIPT="Get class as a structure" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="GET_STRUCTURE" SCONAME="ES_FONT" VERSION="1" LANGU="E" DESCRIPT="Cell Font" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLE_FONT"/>
<source>METHOD get_structure.
es_font-bold = me-&gt;bold.
es_font-italic = me-&gt;italic.
es_font-underline = me-&gt;underline.
es_font-underline_mode = me-&gt;underline_mode.
es_font-strikethrough = me-&gt;strikethrough.
es_font-size = me-&gt;size.
es_font-color = me-&gt;color.
es_font-name = me-&gt;name.
es_font-family = me-&gt;family.
es_font-scheme = me-&gt;scheme.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="7FC0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_NUMBER_FORMAT definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_NUMBER_FORMAT
*&quot;* do not include other source files here!!!
public section.
class-data C_FORMAT_NUMBER type ZEXCEL_NUMBER_FORMAT value &apos;0&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_NUMBER_00 type ZEXCEL_NUMBER_FORMAT value &apos;0.00&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_NUMBER_COMMA_SEP1 type ZEXCEL_NUMBER_FORMAT value &apos;#,##0.00&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_NUMBER_COMMA_SEP2 type ZEXCEL_NUMBER_FORMAT value &apos;#,##0.00_-&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_PERCENTAGE type ZEXCEL_NUMBER_FORMAT value &apos;0%&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_PERCENTAGE_00 type ZEXCEL_NUMBER_FORMAT value &apos;0.00%&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_YYYYMMDD2 type ZEXCEL_NUMBER_FORMAT value &apos;yyyy-mm-dd&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_YYYYMMDD type ZEXCEL_NUMBER_FORMAT value &apos;yy-mm-dd&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DDMMYYYY type ZEXCEL_NUMBER_FORMAT value &apos;dd/mm/yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DMYSLASH type ZEXCEL_NUMBER_FORMAT value &apos;d/m/y&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DMYMINUS type ZEXCEL_NUMBER_FORMAT value &apos;d-m-y&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DMMINUS type ZEXCEL_NUMBER_FORMAT value &apos;d-m&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_MYMINUS type ZEXCEL_NUMBER_FORMAT value &apos;m-y&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX14 type ZEXCEL_NUMBER_FORMAT value &apos;mm-dd-yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX15 type ZEXCEL_NUMBER_FORMAT value &apos;d-mmm-yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX16 type ZEXCEL_NUMBER_FORMAT value &apos;d-mmm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX17 type ZEXCEL_NUMBER_FORMAT value &apos;mmm-yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX22 type ZEXCEL_NUMBER_FORMAT value &apos;m/d/yy h:mm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DATETIME type ZEXCEL_NUMBER_FORMAT value &apos;d/m/y h:mm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME1 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm AM/PM&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME2 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss AM/PM&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME3 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME4 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME5 type ZEXCEL_NUMBER_FORMAT value &apos;mm:ss&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME6 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME7 type ZEXCEL_NUMBER_FORMAT value &apos;i:s.S&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME8 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss@&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_YYYYMMDDSLASH type ZEXCEL_NUMBER_FORMAT value &apos;yy/mm/dd@&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_CURRENCY_USD_SIMPLE type ZEXCEL_NUMBER_FORMAT value &apos;&quot;$&quot;#,##0.00_-&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_CURRENCY_USD type ZEXCEL_NUMBER_FORMAT value &apos;$#,##0_-&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_CURRENCY_EUR_SIMPLE type ZEXCEL_NUMBER_FORMAT value &apos;[$EUR ]#,##0.00_-&apos;. &quot;#EC NOTEXT .
data FORMAT_CODE type ZEXCEL_NUMBER_FORMAT .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(EP_NUMBER_FORMAT) type ZEXCEL_NUMBER_FORMAT .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_NUMBER_FORMAT
*&quot;* do not include other source files here!!!
private section.
class-data C_FORMAT_GENERAL type ZEXCEL_NUMBER_FORMAT value &apos;&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_TEXT type ZEXCEL_NUMBER_FORMAT value &apos;@&apos;. &quot;#EC NOTEXT .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_CURRENCY_EUR_SIMPLE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="33 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;[$EUR ]#,##0.00_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_CURRENCY_USD" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="32 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;$#,##0_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_CURRENCY_USD_SIMPLE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="31 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;&quot;$&quot;#,##0.00_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DATETIME" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d/m/y h:mm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DDMMYYYY" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;dd/mm/yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DMMINUS" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-m&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DMYMINUS" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-m-y&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DMYSLASH" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d/m/y&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_MYMINUS" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;m-y&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME1" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm AM/PM&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME2" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss AM/PM&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME3" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME4" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME5" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="26 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;mm:ss&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME6" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="27 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME7" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="28 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;i:s.S&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME8" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="29 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss@&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX14" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;mm-dd-yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX15" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-mmm-yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX16" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-mmm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX17" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;mmm-yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX22" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;m/d/yy h:mm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_YYYYMMDD" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;yy-mm-dd&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_YYYYMMDD2" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;yyyy-mm-dd&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_YYYYMMDDSLASH" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="30 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;yy/mm/dd@&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_GENERAL" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER_00" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0.00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER_COMMA_SEP1" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;#,##0.00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER_COMMA_SEP2" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;#,##0.00_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_PERCENTAGE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0%&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_PERCENTAGE_00" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0.00%&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_TEXT" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;@&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="FORMAT_CODE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="34 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
format_code = me-&gt;c_format_general.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="GET_STRUCTURE" SCONAME="EP_NUMBER_FORMAT" VERSION="1" LANGU="E" DESCRIPT="Number format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT"/>
<source>METHOD get_structure.
ep_number_format = me-&gt;format_code.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="96C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_PROTECTION definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_PROTECTION
*&quot;* do not include other source files here!!!
public section.
constants C_PROTECTION_INHERIT type ZEXCEL_PROTECTION value &apos;inherit&apos;. &quot;#EC NOTEXT
constants C_PROTECTION_PROTECTED type ZEXCEL_PROTECTION value &apos;protected&apos;. &quot;#EC NOTEXT
constants C_PROTECTION_UNPROTECTED type ZEXCEL_PROTECTION value &apos;unprotected&apos;. &quot;#EC NOTEXT
data LOCKED type ZEXCEL_PROTECTION .
data HIDDEN type ZEXCEL_PROTECTION .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_PROTECTION
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_PROTECTION" CMPNAME="C_PROTECTION_INHERIT" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;inherit&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="C_PROTECTION_PROTECTED" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;protected&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="C_PROTECTION_UNPROTECTED" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;unprotected&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="HIDDEN" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="LOCKED" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
locked = me-&gt;c_protection_inherit.
hidden = me-&gt;c_protection_inherit.
ENDMETHOD.</source>
</method>
</CLAS>
<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" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_WORKSHEET definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
class-data C_BREAK_COLUMN type ZEXCEL_BREAK value 2. &quot;#EC NOTEXT .
class-data C_BREAK_NONE type ZEXCEL_BREAK value 0. &quot;#EC NOTEXT .
class-data C_BREAK_ROW type ZEXCEL_BREAK value 1. &quot;#EC NOTEXT .
class-data C_SHEET_STATE_HIDDEN type ZEXCEL_SHEET_STATE value &apos;hidden&apos;. &quot;#EC NOTEXT .
class-data C_SHEET_STATE_VERYHIDDEN type ZEXCEL_SHEET_STATE value &apos;veryHidden&apos;. &quot;#EC NOTEXT .
class-data C_SHEET_STATE_VISIBLE type ZEXCEL_SHEET_STATE value &apos;visible&apos;. &quot;#EC NOTEXT .
data DEFAULTROWHEIGHT type INT1 value 15. &quot;#EC NOTEXT .
data SHEET_CONTENT type ZEXCEL_T_CELL_DATA .
data SHEET_SETUP type ref to ZCL_EXCEL_SHEET_SETUP .
data SHEET_STATE type ZEXCEL_SHEET_STATE .
data TITLE type ZEXCEL_SHEET_TITLE value &apos;Worksheet&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional .
methods GET_ACTIVE_CELL
returning
value(EP_ACTIVE_CELL) type STRING .
methods GET_CELL
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
!IP_ROW type ZEXCEL_CELL_ROW
exporting
!EP_VALUE type ZEXCEL_CELL_VALUE
!EP_RC type SYSUBRC .
methods GET_DIMENSION_RANGE
returning
value(EP_DIMENSION_RANGE) type STRING .
methods GET_GUID
returning
value(EP_GUID) type GUID_16 .
methods SET_CELL
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
!IP_ROW type ZEXCEL_CELL_ROW
!IP_VALUE type ZEXCEL_CELL_VALUE
!IP_FORMULA type ZEXCEL_CELL_FORMULA optional
!IP_STYLE type ZEXCEL_CELL_STYLE optional .
methods SET_TABLE
importing
!IP_TABLE type STANDARD TABLE
!IP_HDR_STYLE type ZEXCEL_CELL_STYLE optional
!IP_BODY_STYLE type ZEXCEL_CELL_STYLE optional
!IP_TABLE_TITLE type STRING optional
!IP_TOP_LEFT_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA default &apos;B&apos;
!IP_TOP_LEFT_ROW type ZEXCEL_CELL_ROW default 3 .
methods ADD_NEW_CONDITIONAL_STYLE
returning
value(EO_CONDITIONAL_STYLE) type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods GET_COND_STYLES_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
private section.
data ACTIVE_CELL type ZEXCEL_S_CELL_DATA .
data CONDITIONAL_STYLES type ref to ZCL_EXCEL_STYLES_CONDITIONAL .
data GUID type GUID_16 .
data LOWER_CELL type ZEXCEL_S_CELL_DATA .
data UPPER_CELL type ZEXCEL_S_CELL_DATA .
methods UPDATE_DIMENSION_RANGE .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_WORKSHEET" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ACTIVE_CELL" VERSION="1" LANGU="E" DESCRIPT="Version Number Component" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="CONDITIONAL_STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles conditional collection" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLES_CONDITIONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_BREAK_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Worksheet Break" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BREAK" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_BREAK_NONE" VERSION="1" LANGU="E" DESCRIPT="Worksheet Break" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BREAK" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_BREAK_ROW" VERSION="1" LANGU="E" DESCRIPT="Worksheet Break" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BREAK" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_SHEET_STATE_HIDDEN" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;hidden&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_SHEET_STATE_VERYHIDDEN" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;veryHidden&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_SHEET_STATE_VISIBLE" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;visible&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="DEFAULTROWHEIGHT" VERSION="1" LANGU="E" DESCRIPT="Default row height" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTVALUE="15" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" EXPOSURE="0" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="GUID_16" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="LOWER_CELL" VERSION="1" LANGU="E" DESCRIPT="Bottom right range cell" EXPOSURE="0" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SHEET_CONTENT" VERSION="1" LANGU="E" DESCRIPT="Excel worksheet content" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SHEET_SETUP" VERSION="1" LANGU="E" DESCRIPT="Sheet setup" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_SHEET_SETUP" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SHEET_STATE" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTVALUE="&apos;Worksheet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="UPPER_CELL" VERSION="1" LANGU="E" DESCRIPT="Top left range cell" EXPOSURE="0" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ADD_NEW_CONDITIONAL_STYLE" VERSION="1" LANGU="E" DESCRIPT="Creates a new conditional formatting" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ADD_NEW_CONDITIONAL_STYLE" SCONAME="EO_CONDITIONAL_STYLE" VERSION="1" LANGU="E" DESCRIPT="Font Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD add_new_conditional_style.
CREATE OBJECT eo_conditional_style.
conditional_styles-&gt;add( eo_conditional_style ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="CONSTRUCTOR" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="2" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<source>METHOD constructor.
CALL FUNCTION &apos;GUID_CREATE&apos;
IMPORTING
ev_guid_16 = me-&gt;guid.
IF ip_title IS NOT INITIAL.
title = ip_title.
ELSE.
title = me-&gt;guid.
ENDIF.
sheet_state = me-&gt;c_sheet_state_visible.
CREATE OBJECT sheet_setup.
CREATE OBJECT conditional_styles.
* initialize active cell coordinates
active_cell-cell_row = 1.
active_cell-cell_column = 1.
* inizialize dimension range
lower_cell-cell_row = 1.
lower_cell-cell_column = 1.
upper_cell-cell_row = 1.
upper_cell-cell_column = 1.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_ACTIVE_CELL" VERSION="1" LANGU="E" DESCRIPT="Get used range dimension" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_ACTIVE_CELL" SCONAME="EP_ACTIVE_CELL" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD get_active_cell.
DATA: lv_active_column TYPE zexcel_cell_column_alpha,
lv_active_row TYPE string.
lv_active_column = zcl_excel_common=&gt;convert_column2alpha( active_cell-cell_column ).
lv_active_row = active_cell-cell_row.
SHIFT lv_active_row RIGHT DELETING TRAILING space.
SHIFT lv_active_row LEFT DELETING LEADING space.
CONCATENATE lv_active_column lv_active_row INTO ep_active_cell.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" VERSION="1" LANGU="E" DESCRIPT="Get cell value" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="IP_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="EP_VALUE" VERSION="1" LANGU="E" DESCRIPT="Cell Value" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" PARDECLTYP="1" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_VALUE"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="EP_RC" VERSION="1" LANGU="E" DESCRIPT="Return Value of ABAP Statements" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="1" PARPASSTYP="1" TYPTYPE="1" TYPE="SYSUBRC"/>
<source>METHOD get_cell.
DATA: lv_column TYPE zexcel_cell_column,
ls_sheet_content TYPE zexcel_s_cell_data.
FIELD-SYMBOLS: &lt;fs_sheet_content&gt; TYPE zexcel_s_cell_data.
lv_column = zcl_excel_common=&gt;convert_column2int( ip_column ).
READ TABLE sheet_content INTO ls_sheet_content WITH TABLE KEY cell_row = ip_row
cell_column = lv_column.
ep_rc = sy-subrc.
ep_value = ls_sheet_content-cell_value.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_COND_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get conditional styles iterator" EXPOSURE="2" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_COND_STYLES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>method GET_COND_STYLES_ITERATOR.
eo_iterator = me-&gt;conditional_styles-&gt;get_iterator( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_DIMENSION_RANGE" VERSION="1" LANGU="E" DESCRIPT="Get used range dimension" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_DIMENSION_RANGE" SCONAME="EP_DIMENSION_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD get_dimension_range.
me-&gt;update_dimension_range( ).
IF upper_cell EQ lower_cell. &quot;only one cell
ep_dimension_range = upper_cell-cell_coords.
ELSE.
CONCATENATE upper_cell-cell_coords &apos;:&apos; lower_cell-cell_coords INTO ep_dimension_range.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_GUID" VERSION="1" LANGU="E" DESCRIPT="Get sheet guid" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="GUID_16"/>
<source>method GET_GUID.
ep_guid = me-&gt;guid.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" VERSION="1" LANGU="E" DESCRIPT="Set cell value" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_VALUE" VERSION="1" LANGU="E" DESCRIPT="Cell Value" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_VALUE"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_FORMULA" VERSION="1" LANGU="E" DESCRIPT="Cell Formula" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_FORMULA" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100710" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
<source>METHOD set_cell.
DATA: lv_column TYPE zexcel_cell_column,
ls_sheet_content TYPE zexcel_s_cell_data,
lv_row_alpha TYPE string.
FIELD-SYMBOLS: &lt;fs_sheet_content&gt; TYPE zexcel_s_cell_data.
lv_column = ZCL_EXCEL_COMMON=&gt;convert_column2int( ip_column ).
READ TABLE sheet_content ASSIGNING &lt;fs_sheet_content&gt; WITH KEY cell_row = ip_row
cell_column = lv_column.
IF sy-subrc EQ 0.
&lt;fs_sheet_content&gt;-cell_value = ip_value.
&lt;fs_sheet_content&gt;-cell_formula = ip_formula.
&lt;fs_sheet_content&gt;-cell_style = ip_style.
ELSE.
ls_sheet_content-cell_row = ip_row.
ls_sheet_content-cell_column = lv_column.
ls_sheet_content-cell_value = ip_value.
ls_sheet_content-cell_formula = ip_formula.
ls_sheet_content-cell_style = ip_style.
lv_row_alpha = ip_row.
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE ip_column lv_row_alpha INTO ls_sheet_content-cell_coords.
APPEND ls_sheet_content TO sheet_content.
SORT sheet_content BY cell_row cell_column.
* me-&gt;update_dimension_range( ).
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" VERSION="1" LANGU="E" DESCRIPT="Set cell value from a table" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TABLE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STANDARD TABLE"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_HDR_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_BODY_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TABLE_TITLE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TOP_LEFT_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100707" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA" PARVALUE="&apos;B&apos;"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TOP_LEFT_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100707" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW" PARVALUE="3"/>
<source>METHOD set_table.
DATA: lo_tabdescr TYPE REF TO cl_abap_structdescr,
lr_data TYPE REF TO data,
ls_newline TYPE REF TO data,
ls_header TYPE x030l,
lt_dfies TYPE ddfields,
lv_row_header TYPE zexcel_cell_row VALUE &apos;2&apos;,
lv_col_header TYPE zexcel_cell_column_alpha VALUE &apos;B&apos;,
lv_row_int TYPE zexcel_cell_row,
lv_column_int TYPE zexcel_cell_column,
lv_column_alpha TYPE zexcel_cell_column_alpha,
lv_cell_value TYPE zexcel_cell_value.
FIELD-SYMBOLS: &lt;fs_table_line&gt; TYPE ANY,
&lt;fs_fldval&gt; TYPE ANY,
&lt;fs_dfies&gt; TYPE dfies,
&lt;fs_cell_value&gt; TYPE zexcel_cell_value.
lv_column_int = zcl_excel_common=&gt;convert_column2int( ip_top_left_column ).
lv_row_int = ip_top_left_row.
CREATE DATA lr_data LIKE LINE OF ip_table.
lo_tabdescr ?= cl_abap_structdescr=&gt;describe_by_data_ref( lr_data ).
ls_header = lo_tabdescr-&gt;get_ddic_header( ).
lt_dfies = lo_tabdescr-&gt;get_ddic_field_list( ).
* It is better to loop column by column
LOOP AT lt_dfies ASSIGNING &lt;fs_dfies&gt;.
lv_column_alpha = zcl_excel_common=&gt;convert_column2alpha( lv_column_int ).
&quot; First of all write column header
lv_cell_value = &lt;fs_dfies&gt;-scrtext_m.
me-&gt;set_cell( ip_column = lv_column_alpha
ip_row = lv_row_int
ip_value = lv_cell_value
ip_style = ip_hdr_style ).
ADD 1 TO lv_row_int.
LOOP AT ip_table ASSIGNING &lt;fs_table_line&gt;.
ASSIGN COMPONENT &lt;fs_dfies&gt;-fieldname OF STRUCTURE &lt;fs_table_line&gt; TO &lt;fs_fldval&gt;.
MOVE &lt;fs_fldval&gt; TO lv_cell_value.
me-&gt;set_cell( ip_column = lv_column_alpha
ip_row = lv_row_int
ip_value = lv_cell_value
ip_style = ip_body_style ).
ADD 1 TO lv_row_int.
ENDLOOP.
lv_row_int = ip_top_left_row.
ADD 1 TO lv_column_int.
ENDLOOP.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="UPDATE_DIMENSION_RANGE" VERSION="1" LANGU="E" DESCRIPT="Update dimension range" EXPOSURE="0" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD update_dimension_range.
DATA: ls_sheet_content TYPE zexcel_s_cell_data,
lt_sheet_content TYPE zexcel_t_cell_data_unsorted,
lv_row_alpha TYPE string,
lv_column_alpha TYPE zexcel_cell_column_alpha.
* update dimension range
lt_sheet_content = sheet_content.
&quot;upper left corner
SORT lt_sheet_content BY cell_row.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
upper_cell-cell_row = ls_sheet_content-cell_row.
SORT lt_sheet_content BY cell_column.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
upper_cell-cell_column = ls_sheet_content-cell_column.
lv_row_alpha = upper_cell-cell_row.
lv_column_alpha = zcl_excel_common=&gt;convert_column2alpha( upper_cell-cell_column ).
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE lv_column_alpha lv_row_alpha INTO upper_cell-cell_coords.
&quot;bottom right corner
SORT lt_sheet_content BY cell_row DESCENDING.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
lower_cell-cell_row = ls_sheet_content-cell_row.
SORT lt_sheet_content BY cell_column DESCENDING.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
lower_cell-cell_column = ls_sheet_content-cell_column.
lv_row_alpha = lower_cell-cell_row.
lv_column_alpha = zcl_excel_common=&gt;convert_column2alpha( lower_cell-cell_column ).
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE lv_column_alpha lv_row_alpha INTO lower_cell-cell_coords.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_WORKSHEETS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" UUID="89AF284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_WORKSHEETS definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
public section.
data ACTIVE_WORKSHEET type ZEXCEL_ACTIVE_WORKSHEET value 1. &quot;#EC NOTEXT .
data NAME type ZEXCEL_WORKSHEETS_NAME value &apos;Worksheets&apos;. &quot;#EC NOTEXT .
methods ADD
importing
!IP_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type ZEXCEL_ACTIVE_WORKSHEET
returning
value(EO_WORKSHEET) type ref to ZCL_EXCEL_WORKSHEET .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
private section.
data WORKSHEETS type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_WORKSHEETS" CMPNAME="ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDON="00000000" ATTDECLTYP="0" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" ATTDECLTYP="0" ATTVALUE="&apos;Worksheets&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="WORKSHEETS" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="ADD" SCONAME="IP_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD ADD.
worksheets-&gt;add( ip_worksheet ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
worksheets-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT worksheets.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD get.
DATA lv_index TYPE i.
lv_index = ip_index.
eo_worksheet ?= worksheets-&gt;if_object_collection~get( lv_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= worksheets-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = worksheets-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="REMOVE" SCONAME="IP_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD remove.
worksheets-&gt;remove( ip_worksheet ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = worksheets-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" LANGU="E" DESCRIPT="Excel writer 2007" UUID="B9BE2C4C98855D2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_WRITER_2007 definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
public section.
methods CONSTRUCTOR
importing
!IO_EXCEL type ref to ZCL_EXCEL .
methods CREATE
returning
value(EP_EXCEL) type XSTRING .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
private section.
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_RELATIONSHIPS type STRING value &apos;_rels/.rels&apos;. &quot;#EC NOTEXT
constants C_XL_CALCCHAIN type STRING value &apos;xl/calcChain.xml&apos;. &quot;#EC NOTEXT
constants C_XL_RELATIONSHIPS type STRING value &apos;xl/_rels/workbook.xml.rels&apos;. &quot;#EC NOTEXT
constants C_XL_SHAREDSTRINGS type STRING value &apos;xl/sharedStrings.xml&apos;. &quot;#EC NOTEXT
constants C_XL_SHEET type STRING value &apos;xl/worksheets/sheet#.xml&apos;. &quot;#EC NOTEXT
constants C_XL_SHEET_RELS type STRING value &apos;xl/worksheets/_rels/sheet#.xml.rels&apos;. &quot;#EC NOTEXT
constants C_XL_STYLES type STRING value &apos;xl/styles.xml&apos;. &quot;#EC NOTEXT
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_MAPPING type ZEXCEL_T_STYLES_MAPPING .
methods CREATE_CONTENT_TYPES
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_DOCPROPS_APP
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_DOCPROPS_CORE
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_RELATIONSHIPS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_CALCCHAIN
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_RELATIONSHIPS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_SHAREDSTRINGS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_SHEET
importing
!IO_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET
!IV_ACTIVE type FLAG default &apos;&apos;
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_SHEET_RELS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_STYLES
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_THEME
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_WORKBOOK
returning
value(EP_CONTENT) type XSTRING .
methods FLAG2BOOL
importing
!IP_FLAG type FLAG
returning
value(EP_BOOLEAN) type CHAR5 .
methods GET_SHARED_STRING_INDEX
importing
!IP_CELL_VALUE type ZEXCEL_CELL_VALUE
returning
value(EP_INDEX) type INT4 .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;[Content_Types].xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;docProps/app.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;docProps/core.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="4 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;_rels/.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_CALCCHAIN" VERSION="1" LANGU="E" DESCRIPT="xlCalcChain XML File Name" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;xl/calcChain.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="6 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" 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="701" 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="7 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/sharedStrings.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="8 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/worksheets/sheet#.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="9 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100710" 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="701" 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="10 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/styles.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="11 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/theme/theme1.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="12 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/workbook.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" EXPOSURE="0" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Shared Strings" EXPOSURE="0" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_SHARED_STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="STYLES_MAPPING" VERSION="1" LANGU="E" DESCRIPT="Styles mapping" EXPOSURE="0" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_STYLES_MAPPING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CONSTRUCTOR" SCONAME="IO_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="2" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<source>METHOD constructor.
me-&gt;excel = io_excel.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE" VERSION="1" LANGU="E" DESCRIPT="Create Excel" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<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.
DATA: lv_content TYPE xstring,
lv_active TYPE flag,
lv_xl_sheet TYPE string,
lv_xl_sheet_rels TYPE string,
lv_syindex TYPE string.
**********************************************************************
* 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 sharedStrings.xml to zip
lv_content = me-&gt;create_xl_calcchain( ).
lo_zip-&gt;add( name = me-&gt;c_xl_calcchain
content = lv_content ).
**********************************************************************
* STEP 11: Add sheet#.xml to zip
lo_iterator = me-&gt;excel-&gt;get_worksheets_iterator( ).
lo_active_worksheet = me-&gt;excel-&gt;get_active_worksheet( ).
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_true.
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( ).
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 ).
ENDWHILE.
**********************************************************************
* STEP 11: Create the final zip
ep_excel = lo_zip-&gt;save( ).
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="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_content_types.
** Constant node name
DATA: lc_xml_node_types TYPE string VALUE &apos;Types&apos;,
lc_xml_node_override TYPE string VALUE &apos;Override&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;,
&quot; Node namespace
lc_xml_node_types_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/content-types&apos;,
&quot; Node extension
lc_xml_node_rels_ext TYPE string VALUE &apos;rels&apos;,
lc_xml_node_xml_ext TYPE string VALUE &apos;xml&apos;,
&quot; Node partnumber
lc_xml_node_theme_pn TYPE string VALUE &apos;/xl/theme/theme1.xml&apos;,
lc_xml_node_styles_pn TYPE string VALUE &apos;/xl/styles.xml&apos;,
lc_xml_node_workb_pn TYPE string VALUE &apos;/xl/workbook.xml&apos;,
lc_xml_node_props_pn TYPE string VALUE &apos;/docProps/app.xml&apos;,
lc_xml_node_worksheet_pn TYPE string VALUE &apos;/xl/worksheets/sheet#.xml&apos;,
lc_xml_node_strings_pn TYPE string VALUE &apos;/xl/sharedStrings.xml&apos;,
lc_xml_node_core_pn TYPE string VALUE &apos;/docProps/core.xml&apos;,
&quot; Node contentType
lc_xml_node_theme_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.theme+xml&apos;,
lc_xml_node_styles_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml&apos;,
lc_xml_node_workb_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml&apos;,
lc_xml_node_rels_ct TYPE string VALUE &apos;application/vnd.openxmlformats-package.relationships+xml&apos;,
lc_xml_node_xml_ct TYPE string VALUE &apos;application/xml&apos;,
lc_xml_node_props_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.extended-properties+xml&apos;,
lc_xml_node_worksheet_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml&apos;,
lc_xml_node_strings_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml&apos;,
lc_xml_node_core_ct TYPE string VALUE &apos;application/vnd.openxmlformats-package.core-properties+xml&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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_worksheets_num TYPE i,
lv_worksheets_numc TYPE numc3,
lv_xml_node_worksheet_pn TYPE string,
lv_xml_size TYPE i.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;UTF-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node types
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_types
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_types_ns ).
**********************************************************************
* 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( 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( lo_element ).
&quot; rels 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_rels_ext ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_rels_ct ).
lo_element_root-&gt;append_child( lo_element ).
&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_xml_ext ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_xml_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Workbook 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_workb_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_workb_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Properties 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_props_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_props_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Worksheet node
lv_worksheets_num = excel-&gt;get_worksheets_size( ).
DO lv_worksheets_num TIMES.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
MOVE sy-index TO lv_worksheets_numc.
SHIFT lv_worksheets_numc LEFT DELETING LEADING &apos;0&apos;.
lv_xml_node_worksheet_pn = lc_xml_node_worksheet_pn.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_worksheet_pn WITH lv_worksheets_numc.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_partname
value = lv_xml_node_worksheet_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lv_xml_node_worksheet_pn ).
lo_element_root-&gt;append_child( lo_element ).
ENDDO.
&quot; Strings 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_strings_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_strings_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Strings 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_core_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_core_ct ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_DOCPROPS_APP" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/app.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_docprops_app.
** Constant node name
DATA: lc_xml_node_properties TYPE string VALUE &apos;Properties&apos;,
lc_xml_node_application TYPE string VALUE &apos;Application&apos;,
lc_xml_node_docsecurity TYPE string VALUE &apos;DocSecurity&apos;,
lc_xml_node_scalecrop TYPE string VALUE &apos;ScaleCrop&apos;,
lc_xml_node_headingpairs TYPE string VALUE &apos;HeadingPairs&apos;,
lc_xml_node_vector TYPE string VALUE &apos;vector&apos;,
lc_xml_node_variant TYPE string VALUE &apos;variant&apos;,
lc_xml_node_lpstr TYPE string VALUE &apos;lpstr&apos;,
lc_xml_node_i4 TYPE string VALUE &apos;i4&apos;,
lc_xml_node_titlesofparts TYPE string VALUE &apos;TitlesOfParts&apos;,
lc_xml_node_company TYPE string VALUE &apos;Company&apos;,
lc_xml_node_linksuptodate TYPE string VALUE &apos;LinksUpToDate&apos;,
lc_xml_node_shareddoc TYPE string VALUE &apos;SharedDoc&apos;,
lc_xml_node_hyperlinkschanged TYPE string VALUE &apos;HyperlinksChanged&apos;,
lc_xml_node_appversion TYPE string VALUE &apos;AppVersion&apos;,
&quot; Namespace prefix
lc_vt_ns TYPE string VALUE &apos;vt&apos;,
lc_xml_node_props_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/extended-properties&apos;,
lc_xml_node_props_vt_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes&apos;,
&quot; Node attributes
lc_xml_attr_size TYPE string VALUE &apos;size&apos;,
lc_xml_attr_basetype TYPE string VALUE &apos;baseType&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element_vector TYPE REF TO if_ixml_element,
lo_sub_element_variant TYPE REF TO if_ixml_element,
lo_sub_element_lpstr TYPE REF TO if_ixml_element,
lo_sub_element_i4 TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_value TYPE string.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node properties
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_properties
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_props_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:vt&apos;
value = lc_xml_node_props_vt_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Application
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_application
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;application.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; DocSecurity
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_docsecurity
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;docsecurity.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; ScaleCrop
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_scalecrop
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;scalecrop ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; HeadingPairs
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_headingpairs
parent = lo_document ).
&quot; * vector node
lo_sub_element_vector = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_vector
prefix = lc_vt_ns
parent = lo_document ).
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_size
value = &apos;2&apos; ).
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_basetype
value = lc_xml_node_variant ).
&quot; ** variant node
lo_sub_element_variant = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_variant
prefix = lc_vt_ns
parent = lo_document ).
&quot; *** lpstr node
lo_sub_element_lpstr = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_lpstr
prefix = lc_vt_ns
parent = lo_document ).
lv_value = excel-&gt;get_worksheets_name( ).
lo_sub_element_lpstr-&gt;set_value( lv_value ).
lo_sub_element_variant-&gt;append_child( lo_sub_element_lpstr ). &quot; lpstr node
lo_sub_element_vector-&gt;append_child( lo_sub_element_variant ). &quot; variant node
&quot; ** variant node
lo_sub_element_variant = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_variant
prefix = lc_vt_ns
parent = lo_document ).
&quot; *** i4 node
lo_sub_element_i4 = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_i4
prefix = lc_vt_ns
parent = lo_document ).
lv_value = excel-&gt;get_worksheets_size( ).
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element_i4-&gt;set_value( lv_value ).
lo_sub_element_variant-&gt;append_child( lo_sub_element_i4 ). &quot; lpstr node
lo_sub_element_vector-&gt;append_child( lo_sub_element_variant ). &quot; variant node
lo_element-&gt;append_child( lo_sub_element_vector ). &quot; vector node
lo_element_root-&gt;append_child( lo_element ). &quot; HeadingPairs
&quot; TitlesOfParts
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_titlesofparts
parent = lo_document ).
&quot; * vector node
lo_sub_element_vector = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_vector
prefix = lc_vt_ns
parent = lo_document ).
lv_value = excel-&gt;get_worksheets_size( ).
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_size
value = lv_value ).
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_basetype
value = lc_xml_node_lpstr ).
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
&quot; ** lpstr node
lo_sub_element_lpstr = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_lpstr
prefix = lc_vt_ns
parent = lo_document ).
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
lv_value = lo_worksheet-&gt;title.
lo_sub_element_lpstr-&gt;set_value( lv_value ).
lo_sub_element_vector-&gt;append_child( lo_sub_element_lpstr ). &quot; lpstr node
ENDWHILE.
lo_element-&gt;append_child( lo_sub_element_vector ). &quot; vector node
lo_element_root-&gt;append_child( lo_element ). &quot; TitlesOfParts
&quot; Company
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_company
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;company.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; LinksUpToDate
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_linksuptodate
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;linksuptodate ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; SharedDoc
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_shareddoc
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;shareddoc ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; HyperlinksChanged
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_hyperlinkschanged
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;hyperlinkschanged ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; AppVersion
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_appversion
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;appversion.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_DOCPROPS_CORE" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/core.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_docprops_core.
** Constant node name
DATA: lc_xml_node_coreproperties TYPE string VALUE &apos;coreProperties&apos;,
lc_xml_node_creator TYPE string VALUE &apos;creator&apos;,
lc_xml_node_lastmodifiedby TYPE string VALUE &apos;lastModifiedBy&apos;,
lc_xml_node_created TYPE string VALUE &apos;created&apos;,
lc_xml_node_modified TYPE string VALUE &apos;modified&apos;,
&quot; Node attributes
lc_xml_attr_type TYPE string VALUE &apos;type&apos;,
lc_xml_attr_target TYPE string VALUE &apos;dcterms:W3CDTF&apos;,
&quot; Node namespace
lc_cp_ns TYPE string VALUE &apos;cp&apos;,
lc_dc_ns TYPE string VALUE &apos;dc&apos;,
lc_dcterms_ns TYPE string VALUE &apos;dcterms&apos;,
lc_dcmitype_ns TYPE string VALUE &apos;dcmitype&apos;,
lc_xsi_ns TYPE string VALUE &apos;xsi&apos;,
lc_xml_node_cp_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/metadata/core-properties&apos;,
lc_xml_node_dc_ns TYPE string VALUE &apos;http://purl.org/dc/elements/1.1/&apos;,
lc_xml_node_dcterms_ns TYPE string VALUE &apos;http://purl.org/dc/terms/&apos;,
lc_xml_node_dcmitype_ns TYPE string VALUE &apos;http://purl.org/dc/dcmitype/&apos;,
lc_xml_node_xsi_ns TYPE string VALUE &apos;http://www.w3.org/2001/XMLSchema-instance&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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_value TYPE string.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node coreProperties
lo_element_root = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_coreproperties
prefix = lc_cp_ns
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:cp&apos;
value = lc_xml_node_cp_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:dc&apos;
value = lc_xml_node_dc_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:dcterms&apos;
value = lc_xml_node_dcterms_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:dcmitype&apos;
value = lc_xml_node_dcmitype_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:xsi&apos;
value = lc_xml_node_xsi_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Creator node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_creator
prefix = lc_dc_ns
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;creator.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; lastModifiedBy node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_lastmodifiedby
prefix = lc_cp_ns
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;lastmodifiedby.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Created node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_created
prefix = lc_dcterms_ns
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
prefix = lc_xsi_ns
value = lc_xml_attr_target ).
lv_value = excel-&gt;properties-&gt;created.
lv_value = &apos;2010-07-04T14:58:53Z&apos;.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Modified node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_modified
prefix = lc_dcterms_ns
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
prefix = lc_xsi_ns
value = lc_xml_attr_target ).
lv_value = excel-&gt;properties-&gt;modified.
lv_value = &apos;2010-07-04T14:58:53Z&apos;.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;_rels/.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD CREATE_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 namespace
lc_xml_node_rels_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships&apos;,
&quot; Node id
lc_xml_node_rId1_id TYPE string VALUE &apos;rId1&apos;,
lc_xml_node_rId2_id TYPE string VALUE &apos;rId2&apos;,
lc_xml_node_rId3_id TYPE string VALUE &apos;rId3&apos;,
&quot; Node type
lc_xml_node_rId1_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument&apos;,
lc_xml_node_rId2_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties&apos;,
lc_xml_node_rId3_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties&apos;,
&quot; Node target
lc_xml_node_rId1_tg TYPE string VALUE &apos;xl/workbook.xml&apos;,
lc_xml_node_rId2_tg TYPE string VALUE &apos;docProps/core.xml&apos;,
lc_xml_node_rId3_tg TYPE string VALUE &apos;docProps/app.xml&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_relationships
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_rels_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Theme node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rId3_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rId3_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rId3_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Styles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rId2_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rId2_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rId2_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; rels node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rId1_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rId1_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rId1_tg ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_CALCCHAIN" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/calcChain.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_CALCCHAIN" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_calcchain.
** Constant node name
DATA: lc_xml_node_calcchain TYPE string VALUE &apos;calcChain&apos;,
lc_xml_node_c TYPE string VALUE &apos;c&apos;,
&quot; Node attributes
lc_xml_attr_r TYPE string VALUE &apos;r&apos;,
lc_xml_attr_i TYPE string VALUE &apos;i&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_value TYPE string,
lv_value_i TYPE string,
lv_sheets_count TYPE i.
FIELD-SYMBOLS: &lt;ls_sheet_content&gt; TYPE zexcel_s_cell_data.
**********************************************************************
* STEP 1: Create xl/calcChain.xml
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;UTF-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node calcChain
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_calcchain
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
**********************************************************************
* STEP 4: Create subnodes
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
ADD 1 TO lv_sheets_count.
MOVE lv_sheets_count TO lv_value_i.
SHIFT lv_value_i RIGHT DELETING TRAILING space.
SHIFT lv_value_i LEFT DELETING LEADING space.
LOOP AT lo_worksheet-&gt;sheet_content ASSIGNING &lt;ls_sheet_content&gt; WHERE cell_formula IS NOT INITIAL.
&quot; formula chain node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_c
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_r
value = lv_value ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_i
value = lv_value_i ).
lo_element_root-&gt;append_child( lo_element ).
ENDLOOP.
ENDWHILE.
**********************************************************************
* STEP 5: Create xstring stream
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="1" LANGU="E" DESCRIPT="Create &apos;xl/_rels/workbook.xml.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<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 namespace
lc_xml_node_rels_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;,
&quot; Node type
lc_xml_node_rid_sheet_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet&apos;,
lc_xml_node_rid_theme_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme&apos;,
lc_xml_node_rid_styles_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles&apos;,
lc_xml_node_rid_shared_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings&apos;,
lc_xml_node_rid_calcchain_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain&apos;,
&quot; Node target
lc_xml_node_ridx_tg TYPE string VALUE &apos;worksheets/sheet#.xml&apos;,
lc_xml_node_rid_shared_tg TYPE string VALUE &apos;sharedStrings.xml&apos;,
lc_xml_node_rid_styles_tg TYPE string VALUE &apos;styles.xml&apos;,
lc_xml_node_rid_theme_tg TYPE string VALUE &apos;theme/theme1.xml&apos;,
lc_xml_node_rid_calcchain_tg TYPE string VALUE &apos;calcChain.xml&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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_syindex(2) TYPE c.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_relationships
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_rels_ns ).
**********************************************************************
* STEP 4: Create subnodes
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 ).
lv_size = lv_size + 2.
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_styles_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_styles_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lv_size = lv_size - 1.
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_theme_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_theme_tg ).
lo_element_root-&gt;append_child( lo_element ).
lv_size = excel-&gt;get_worksheets_size( ).
DO lv_size TIMES.
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lv_xml_node_ridx_id = lc_xml_node_ridx_id.
lv_xml_node_ridx_tg = lc_xml_node_ridx_tg.
lv_syindex = sy-index.
SHIFT lv_syindex RIGHT DELETING TRAILING space.
SHIFT lv_syindex LEFT DELETING LEADING space.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_ridx_id WITH lv_syindex.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_ridx_tg 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_sheet_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lv_xml_node_ridx_tg ).
lo_element_root-&gt;append_child( lo_element ).
ENDDO.
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
ADD 3 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_shared_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_shared_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
ADD 1 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_calcchain_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_calcchain_tg ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_SHAREDSTRINGS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/sharedStrings.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_sharedstrings.
** Constant node name
DATA: lc_xml_node_sst TYPE string VALUE &apos;sst&apos;,
lc_xml_node_si TYPE string VALUE &apos;si&apos;,
lc_xml_node_t TYPE string VALUE &apos;t&apos;,
&quot; Node attributes
lc_xml_attr_count TYPE string VALUE &apos;count&apos;,
lc_xml_attr_uniquecount TYPE string VALUE &apos;uniqueCount&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lt_cell_data TYPE zexcel_t_cell_data_unsorted,
ls_shared_string TYPE zexcel_s_shared_string,
lv_value TYPE string,
lv_count_str TYPE string,
lv_uniquecount_str TYPE string,
lv_sytabix TYPE sytabix,
lv_count TYPE i,
lv_uniquecount TYPE i.
FIELD-SYMBOLS: &lt;fs_sheet_content&gt; TYPE zexcel_s_cell_data,
&lt;fs_sheet_string&gt; TYPE zexcel_s_shared_string.
**********************************************************************
* STEP 1: Collect strings from each worksheet
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
APPEND LINES OF lo_worksheet-&gt;sheet_content TO lt_cell_data.
ENDWHILE.
DELETE lt_cell_data WHERE cell_formula IS NOT INITIAL. &quot; delete formula content
DESCRIBE TABLE lt_cell_data LINES lv_count.
MOVE lv_count TO lv_count_str.
SHIFT lv_count_str RIGHT DELETING TRAILING space.
SHIFT lv_count_str LEFT DELETING LEADING space.
SORT lt_cell_data BY cell_value.
DELETE ADJACENT DUPLICATES FROM lt_cell_data COMPARING cell_value.
DESCRIBE TABLE lt_cell_data LINES lv_uniquecount.
MOVE lv_uniquecount TO lv_uniquecount_str.
SHIFT lv_uniquecount_str RIGHT DELETING TRAILING space.
SHIFT lv_uniquecount_str LEFT DELETING LEADING space.
LOOP AT lt_cell_data ASSIGNING &lt;fs_sheet_content&gt;.
lv_sytabix = sy-tabix - 1.
MOVE lv_sytabix TO ls_shared_string-string_no.
MOVE &lt;fs_sheet_content&gt;-cell_value TO ls_shared_string-string_value.
APPEND ls_shared_string TO shared_strings.
ENDLOOP.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_sst
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
lo_element_root-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_count_str ).
lo_element_root-&gt;set_attribute_ns( name = lc_xml_attr_uniquecount
value = lv_uniquecount_str ).
**********************************************************************
* STEP 4: Create subnode
LOOP AT shared_strings ASSIGNING &lt;fs_sheet_string&gt;.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_si
parent = lo_document ).
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_t
parent = lo_document ).
lo_sub_element-&gt;set_value( &lt;fs_sheet_string&gt;-string_value ).
lo_element-&gt;append_child( lo_sub_element ).
lo_element_root-&gt;append_child( lo_element ).
ENDLOOP.
**********************************************************************
* STEP 5: Create xstring stream
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="1" LANGU="E" DESCRIPT="Create &apos;xl/sheet.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" 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="20100702" CHANGEDON="00000000" 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="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100702" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_sheet.
** Constant node name
DATA: lc_xml_node_worksheet TYPE string VALUE &apos;worksheet&apos;,
lc_xml_node_dimension TYPE string VALUE &apos;dimension&apos;,
lc_xml_node_sheetviews TYPE string VALUE &apos;sheetViews&apos;,
lc_xml_node_sheetview TYPE string VALUE &apos;sheetView&apos;,
lc_xml_node_selection TYPE string VALUE &apos;selection&apos;,
lc_xml_node_sheetformatpr TYPE string VALUE &apos;sheetFormatPr&apos;,
lc_xml_node_sheetdata TYPE string VALUE &apos;sheetData&apos;,
lc_xml_node_row TYPE string VALUE &apos;row&apos;,
lc_xml_node_c TYPE string VALUE &apos;c&apos;,
lc_xml_node_v TYPE string VALUE &apos;v&apos;,
lc_xml_node_f TYPE string VALUE &apos;f&apos;,
lc_xml_node_pagemargins TYPE string VALUE &apos;pageMargins&apos;,
lc_xml_node_condformatting TYPE string VALUE &apos;conditionalFormatting&apos;,
lc_xml_node_cfrule TYPE string VALUE &apos;cfRule&apos;,
lc_xml_node_iconset TYPE string VALUE &apos;iconSet&apos;,
lc_xml_node_cfvo TYPE string VALUE &apos;cfvo&apos;,
lc_xml_node_formula TYPE string VALUE &apos;formula&apos;,
&quot; Node attributes
lc_xml_attr_ref TYPE string VALUE &apos;ref&apos;,
lc_xml_attr_tabselected TYPE string VALUE &apos;tabSelected&apos;,
lc_xml_attr_workbookviewid TYPE string VALUE &apos;workbookViewId&apos;,
lc_xml_attr_activecell TYPE string VALUE &apos;activeCell&apos;,
lc_xml_attr_sqref TYPE string VALUE &apos;sqref&apos;,
lc_xml_attr_defaultrowheight TYPE string VALUE &apos;defaultRowHeight&apos;,
lc_xml_attr_r TYPE string VALUE &apos;r&apos;,
lc_xml_attr_s TYPE string VALUE &apos;s&apos;,
lc_xml_attr_spans TYPE string VALUE &apos;spans&apos;,
lc_xml_attr_t TYPE string VALUE &apos;t&apos;,
lc_xml_attr_left TYPE string VALUE &apos;left&apos;,
lc_xml_attr_right TYPE string VALUE &apos;right&apos;,
lc_xml_attr_top TYPE string VALUE &apos;top&apos;,
lc_xml_attr_bottom TYPE string VALUE &apos;bottom&apos;,
lc_xml_attr_header TYPE string VALUE &apos;header&apos;,
lc_xml_attr_footer TYPE string VALUE &apos;footer&apos;,
lc_xml_attr_type TYPE string VALUE &apos;type&apos;,
lc_xml_attr_iconset TYPE string VALUE &apos;iconSet&apos;,
lc_xml_attr_val TYPE string VALUE &apos;val&apos;,
lc_xml_attr_dxfid TYPE string VALUE &apos;dxfId&apos;,
lc_xml_attr_priority TYPE string VALUE &apos;priority&apos;,
lc_xml_attr_operator TYPE string VALUE &apos;operator&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;,
lc_xml_node_r_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_element_2 TYPE REF TO if_ixml_element,
lo_element_3 TYPE REF TO if_ixml_element,
lo_element_4 TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional.
DATA: lv_value TYPE string,
lt_percent_val TYPE TABLE OF string,
ls_percent_val TYPE string,
ls_last_row TYPE zexcel_s_cell_data,
ls_style_mapping TYPE zexcel_s_styles_mapping.
FIELD-SYMBOLS: &lt;ls_sheet_content&gt; TYPE zexcel_s_cell_data.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
***********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_worksheet
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:r&apos;
value = lc_xml_node_r_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; dimension node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_dimension
parent = lo_document ).
lv_value = io_worksheet-&gt;get_dimension_range( ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_ref
value = lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; sheetViews node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetviews
parent = lo_document ).
&quot; sheetView node
lo_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetview
parent = lo_document ).
IF iv_active EQ abap_true.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_tabselected
value = &apos;1&apos; ).
ENDIF.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_workbookviewid
value = &apos;0&apos; ).
&quot; selection node
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_selection
parent = lo_document ).
lv_value = io_worksheet-&gt;get_active_cell( ).
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_activecell
value = lv_value ).
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_sqref
value = lv_value ).
lo_element_2-&gt;append_child( lo_element_3 ). &quot; sheetView node
lo_element-&gt;append_child( lo_element_2 ). &quot; sheetView node
lo_element_root-&gt;append_child( lo_element ). &quot; sheetViews node
&quot; sheetFormatPr node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetformatpr
parent = lo_document ).
lv_value = io_worksheet-&gt;defaultrowheight.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_defaultrowheight
value = lv_value ).
lo_element_root-&gt;append_child( lo_element ). &quot; sheetFormatPr node
&quot; sheetData node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetdata
parent = lo_document ).
LOOP AT io_worksheet-&gt;sheet_content ASSIGNING &lt;ls_sheet_content&gt;.
CLEAR ls_style_mapping.
IF ls_last_row-cell_row NE &lt;ls_sheet_content&gt;-cell_row.
lo_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_row
parent = lo_document ).
lv_value = &lt;ls_sheet_content&gt;-cell_row.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_r
value = lv_value ).
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_spans
value = &apos;1:1&apos; ). &quot; &lt;*******************************
ENDIF.
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_c
parent = lo_document ).
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_r
value = &lt;ls_sheet_content&gt;-cell_coords ).
IF &lt;ls_sheet_content&gt;-cell_style IS NOT INITIAL.
READ TABLE styles_mapping INTO ls_style_mapping WITH KEY guid = &lt;ls_sheet_content&gt;-cell_style.
lv_value = ls_style_mapping-style.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_s
value = lv_value ).
ENDIF.
IF ls_style_mapping-cell_format IS INITIAL. &quot; to avoid errors if no style has been created
IF &lt;ls_sheet_content&gt;-cell_formula IS INITIAL.
ls_style_mapping-cell_format = &apos;S&apos;.
ELSE.
ls_style_mapping-cell_format = &apos;F&apos;.
ENDIF.
ENDIF.
&quot; is a shared string and is not a formula
IF ls_style_mapping-cell_format EQ &apos;S&apos;.
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_t
value = &apos;s&apos; ).
ENDIF.
IF &lt;ls_sheet_content&gt;-cell_formula IS NOT INITIAL.
&quot; fomula node
lo_element_4 = lo_document-&gt;create_simple_element( name = lc_xml_node_f
parent = lo_document ).
lv_value = &lt;ls_sheet_content&gt;-cell_formula.
lo_element_4-&gt;set_value( lv_value ).
lo_element_3-&gt;append_child( lo_element_4 ). &quot; fomula node
ENDIF.
&quot; value node
lo_element_4 = lo_document-&gt;create_simple_element( name = lc_xml_node_v
parent = lo_document ).
IF ls_style_mapping-cell_format EQ &apos;S&apos;.
lv_value = me-&gt;get_shared_string_index( &lt;ls_sheet_content&gt;-cell_value ).
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_4-&gt;set_value( lv_value ).
ELSE.
lv_value = &lt;ls_sheet_content&gt;-cell_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_4-&gt;set_value( lv_value ).
ENDIF.
lo_element_3-&gt;append_child( lo_element_4 ). &quot; value node
lo_element_2-&gt;append_child( lo_element_3 ). &quot; column node
IF ls_last_row-cell_row NE &lt;ls_sheet_content&gt;-cell_row.
lo_element-&gt;append_child( lo_element_2 ). &quot; row node
ls_last_row = &lt;ls_sheet_content&gt;.
ENDIF.
ENDLOOP.
lo_element_root-&gt;append_child( lo_element ). &quot; sheetData node
&quot; Conditional formatting node
lo_iterator = io_worksheet-&gt;get_cond_styles_iterator( ).
WHILE lo_iterator-&gt;has_next( ) EQ abap_true.
lo_style_conditional ?= lo_iterator-&gt;get_next( ).
IF lo_style_conditional-&gt;rule IS INITIAL.
CONTINUE.
ENDIF.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_condformatting
parent = lo_document ).
lv_value = lo_style_conditional-&gt;get_dimension_range( ) .
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_sqref
value = lv_value ).
&quot; cfRule node
lo_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_cfrule
parent = lo_document ).
lv_value = lo_style_conditional-&gt;rule.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lv_value ).
lv_value = lo_style_conditional-&gt;priority.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_priority
value = lv_value ).
CASE lo_style_conditional-&gt;rule.
WHEN zcl_excel_style_conditional=&gt;c_rule_iconset.
CLEAR lt_percent_val.
&quot; iconset node
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_iconset
parent = lo_document ).
IF lo_style_conditional-&gt;iconset NE zcl_excel_style_conditional=&gt;c_iconset_3trafficlights.
lv_value = lo_style_conditional-&gt;iconset.
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_iconset
value = lv_value ).
ENDIF.
CASE lo_style_conditional-&gt;iconset.
WHEN zcl_excel_style_conditional=&gt;c_iconset_3trafficlights2 OR
zcl_excel_style_conditional=&gt;c_iconset_3arrows OR
zcl_excel_style_conditional=&gt;c_iconset_3arrowsgray OR
zcl_excel_style_conditional=&gt;c_iconset_3flags OR
zcl_excel_style_conditional=&gt;c_iconset_3signs OR
zcl_excel_style_conditional=&gt;c_iconset_3symbols OR
zcl_excel_style_conditional=&gt;c_iconset_3symbols2 OR
zcl_excel_style_conditional=&gt;c_iconset_3trafficlights OR
zcl_excel_style_conditional=&gt;c_iconset_3trafficlights2.
APPEND &apos;0&apos; TO lt_percent_val.
APPEND &apos;33&apos; TO lt_percent_val.
APPEND &apos;67&apos; TO lt_percent_val.
WHEN zcl_excel_style_conditional=&gt;c_iconset_4arrows OR
zcl_excel_style_conditional=&gt;c_iconset_4arrowsgray OR
zcl_excel_style_conditional=&gt;c_iconset_4rating OR
zcl_excel_style_conditional=&gt;c_iconset_4redtoblack OR
zcl_excel_style_conditional=&gt;c_iconset_4trafficlights.
APPEND &apos;0&apos; TO lt_percent_val.
APPEND &apos;25&apos; TO lt_percent_val.
APPEND &apos;50&apos; TO lt_percent_val.
APPEND &apos;75&apos; TO lt_percent_val.
WHEN zcl_excel_style_conditional=&gt;c_iconset_5arrows OR
zcl_excel_style_conditional=&gt;c_iconset_5arrowsgray OR
zcl_excel_style_conditional=&gt;c_iconset_5quarters OR
zcl_excel_style_conditional=&gt;c_iconset_5rating.
APPEND &apos;0&apos; TO lt_percent_val.
APPEND &apos;20&apos; TO lt_percent_val.
APPEND &apos;40&apos; TO lt_percent_val.
APPEND &apos;60&apos; TO lt_percent_val.
APPEND &apos;80&apos; TO lt_percent_val.
WHEN OTHERS.
CLEAR lt_percent_val.
ENDCASE.
LOOP AT lt_percent_val INTO ls_percent_val.
&quot; cfvo node
lo_element_4 = lo_document-&gt;create_simple_element( name = lc_xml_node_cfvo
parent = lo_document ).
lo_element_4-&gt;set_attribute_ns( name = lc_xml_attr_type
value = &apos;percent&apos; ).
lo_element_4-&gt;set_attribute_ns( name = lc_xml_attr_val
value = ls_percent_val ).
lo_element_3-&gt;append_child( lo_element_4 ). &quot; cfvo node
ENDLOOP.
lo_element_2-&gt;append_child( lo_element_3 ). &quot; iconset node
WHEN zcl_excel_style_conditional=&gt;c_rule_cellis.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_dxfid
value = &apos;0&apos; ). &quot; @TODO &lt;*****************************
lv_value = lo_style_conditional-&gt;operator.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_operator
value = lv_value ).
&quot; formula node
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_formula
parent = lo_document ).
lv_value = lo_style_conditional-&gt;formula.
lo_element_3-&gt;set_value( lv_value ).
lo_element_2-&gt;append_child( lo_element_3 ). &quot; formula node
ENDCASE.
lo_element-&gt;append_child( lo_element_2 ). &quot; cfRule node
lo_element_root-&gt;append_child( lo_element ). &quot; Conditional formatting node
ENDWHILE.
&quot; pageMargins node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_pagemargins
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_left
value = &apos;0.7&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_right
value = &apos;0.7&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_top
value = &apos;0.75&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_bottom
value = &apos;0.75&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_header
value = &apos;0.3&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_footer
value = &apos;0.3&apos; ). &quot; @TODO &lt;*****************************
lo_element_root-&gt;append_child( lo_element ). &quot; sheetFormatPr node
**********************************************************************
* STEP 5: Create xstring stream
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_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="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_sheet_rels.
** 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 namespace
lc_xml_node_rels_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;,
lc_xml_node_rid_print_id TYPE string VALUE &apos;rId1&apos;,
&quot; Node type
lc_xml_node_rid_print_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/printerSettings&apos;,
&quot; Node target
lc_xml_node_rid_print_tg TYPE string VALUE &apos;../printerSettings/printerSettings1.bin&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_relationships
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_rels_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rid_print_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rid_print_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_print_tg ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_STYLES" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/styles.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="12 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_styles.
** Constant node name
DATA: lc_xml_node_stylesheet TYPE string VALUE &apos;styleSheet&apos;,
&quot; font
lc_xml_node_fonts TYPE string VALUE &apos;fonts&apos;,
lc_xml_node_font TYPE string VALUE &apos;font&apos;,
lc_xml_node_b TYPE string VALUE &apos;b&apos;, &quot;bold
lc_xml_node_i TYPE string VALUE &apos;i&apos;, &quot;italic
lc_xml_node_u TYPE string VALUE &apos;u&apos;, &quot;underline
lc_xml_node_strike TYPE string VALUE &apos;strike&apos;, &quot;strikethrough
lc_xml_node_sz TYPE string VALUE &apos;sz&apos;,
lc_xml_node_color TYPE string VALUE &apos;color&apos;,
lc_xml_node_name TYPE string VALUE &apos;name&apos;,
lc_xml_node_family TYPE string VALUE &apos;family&apos;,
lc_xml_node_scheme TYPE string VALUE &apos;scheme&apos;,
&quot; fill
lc_xml_node_fills TYPE string VALUE &apos;fills&apos;,
lc_xml_node_fill TYPE string VALUE &apos;fill&apos;,
lc_xml_node_patternfill TYPE string VALUE &apos;patternFill&apos;,
lc_xml_node_fgcolor TYPE string VALUE &apos;fgColor&apos;,
lc_xml_node_bgcolor TYPE string VALUE &apos;bgColor&apos;,
lc_xml_node_gradientfill TYPE string VALUE &apos;gradientFill&apos;,
lc_xml_node_stop TYPE string VALUE &apos;stop&apos;,
&quot; borders
lc_xml_node_borders TYPE string VALUE &apos;borders&apos;,
lc_xml_node_border TYPE string VALUE &apos;border&apos;,
lc_xml_node_left TYPE string VALUE &apos;left&apos;,
lc_xml_node_right TYPE string VALUE &apos;right&apos;,
lc_xml_node_top TYPE string VALUE &apos;top&apos;,
lc_xml_node_bottom TYPE string VALUE &apos;bottom&apos;,
lc_xml_node_diagonal TYPE string VALUE &apos;diagonal&apos;,
&quot; Styles
lc_xml_node_cellstylexfs TYPE string VALUE &apos;cellStyleXfs&apos;,
lc_xml_node_xf TYPE string VALUE &apos;xf&apos;,
lc_xml_node_cellxfs TYPE string VALUE &apos;cellXfs&apos;,
lc_xml_node_cellstyles TYPE string VALUE &apos;cellStyles&apos;,
lc_xml_node_cellstyle TYPE string VALUE &apos;cellStyle&apos;,
lc_xml_node_dxfs TYPE string VALUE &apos;dxfs&apos;,
lc_xml_node_tablestyles TYPE string VALUE &apos;tableStyles&apos;,
&quot; Colors
lc_xml_node_colors TYPE string VALUE &apos;colors&apos;,
lc_xml_node_mrucolors TYPE string VALUE &apos;mruColors&apos;,
&quot; Node attributes
lc_xml_attr_count TYPE string VALUE &apos;count&apos;,
lc_xml_attr_val TYPE string VALUE &apos;val&apos;,
lc_xml_attr_theme TYPE string VALUE &apos;theme&apos;,
lc_xml_attr_rgb TYPE string VALUE &apos;rgb&apos;,
lc_xml_attr_indexed TYPE string VALUE &apos;indexed&apos;,
lc_xml_attr_style TYPE string VALUE &apos;style&apos;,
lc_xml_attr_position TYPE string VALUE &apos;position&apos;,
lc_xml_attr_degree TYPE string VALUE &apos;degree&apos;,
lc_xml_attr_patterntype TYPE string VALUE &apos;patternType&apos;,
lc_xml_attr_numfmtid TYPE string VALUE &apos;numFmtId&apos;,
lc_xml_attr_fontid TYPE string VALUE &apos;fontId&apos;,
lc_xml_attr_fillid TYPE string VALUE &apos;fillId&apos;,
lc_xml_attr_borderid TYPE string VALUE &apos;borderId&apos;,
lc_xml_attr_xfid TYPE string VALUE &apos;xfId&apos;,
lc_xml_attr_applynumberformat TYPE string VALUE &apos;applyNumberFormat&apos;,
lc_xml_attr_applyfont TYPE string VALUE &apos;applyFont&apos;,
lc_xml_attr_applyfill TYPE string VALUE &apos;applyFill&apos;,
lc_xml_attr_applyborder TYPE string VALUE &apos;applyBorder&apos;,
lc_xml_attr_name TYPE string VALUE &apos;name&apos;,
lc_xml_attr_builtinid TYPE string VALUE &apos;builtinId&apos;,
lc_xml_attr_defaulttablestyle TYPE string VALUE &apos;defaultTableStyle&apos;,
lc_xml_attr_defaultpivotstyle TYPE string VALUE &apos;defaultPivotStyle&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element_fonts TYPE REF TO if_ixml_element,
lo_element_font TYPE REF TO if_ixml_element,
lo_element_fills TYPE REF TO if_ixml_element,
lo_element_fill TYPE REF TO if_ixml_element,
lo_element_borders TYPE REF TO if_ixml_element,
lo_element_border TYPE REF TO if_ixml_element,
lo_element_cellxfs TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element TYPE REF TO if_ixml_element,
lo_sub_element_2 TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_style TYPE REF TO zcl_excel_style.
DATA: lt_fonts TYPE zexcel_t_style_font,
ls_font TYPE zexcel_s_style_font,
lt_fills TYPE zexcel_t_style_fill,
ls_fill TYPE zexcel_s_style_fill,
lt_borders TYPE zexcel_t_style_border,
ls_border TYPE zexcel_s_style_border,
ls_format TYPE zexcel_number_format,
lt_cellxfs TYPE zexcel_t_cellxfs,
ls_cellxfs TYPE zexcel_s_cellxfs,
ls_styles_mapping TYPE zexcel_s_styles_mapping,
lt_colors TYPE TABLE OF zexcel_style_color_argb,
ls_color TYPE zexcel_style_color_argb.
DATA: lv_value TYPE string,
lv_fonts_count TYPE i,
lv_fills_count TYPE i,
lv_borders_count TYPE i,
lv_cellxfs_count TYPE i.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
***********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_stylesheet
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
**********************************************************************
* STEP 4: Create subnodes
lo_element_fonts = lo_document-&gt;create_simple_element( name = lc_xml_node_fonts
parent = lo_document ).
lo_element_fills = lo_document-&gt;create_simple_element( name = lc_xml_node_fills
parent = lo_document ).
lo_element_borders = lo_document-&gt;create_simple_element( name = lc_xml_node_borders
parent = lo_document ).
lo_element_cellxfs = lo_document-&gt;create_simple_element( name = lc_xml_node_cellxfs
parent = lo_document ).
* Compress styles
lo_iterator = excel-&gt;get_styles_iterator( ).
WHILE lo_iterator-&gt;has_next( ) EQ abap_true.
lo_style ?= lo_iterator-&gt;get_next( ).
ls_font = lo_style-&gt;font-&gt;get_structure( ).
ls_fill = lo_style-&gt;fill-&gt;get_structure( ).
ls_border = lo_style-&gt;borders-&gt;get_structure( ).
ls_format = lo_style-&gt;number_format-&gt;get_structure( ).
* Compress fonts
READ TABLE lt_fonts FROM ls_font TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_cellxfs-fontid = sy-tabix.
ELSE.
APPEND ls_font TO lt_fonts.
DESCRIBE TABLE lt_fonts LINES ls_cellxfs-fontid.
ENDIF.
SUBTRACT 1 FROM ls_cellxfs-fontid.
* Compress fills
READ TABLE lt_fills FROM ls_fill TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_cellxfs-fillid = sy-tabix.
ELSE.
APPEND ls_fill TO lt_fills.
DESCRIBE TABLE lt_fills LINES ls_cellxfs-fillid.
ENDIF.
SUBTRACT 1 FROM ls_cellxfs-fillid.
* Compress borders
READ TABLE lt_borders FROM ls_border TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_cellxfs-borderid = sy-tabix.
ELSE.
APPEND ls_border TO lt_borders.
DESCRIBE TABLE lt_borders LINES ls_cellxfs-borderid.
ENDIF.
SUBTRACT 1 FROM ls_cellxfs-borderid.
IF ls_format IS INITIAL.
ls_cellxfs-numfmtid = 0. &quot; number format
ELSE.
ls_cellxfs-numfmtid = ls_format. &quot; number format
ENDIF.
ls_cellxfs-xfid = 0.
IF ls_format IS NOT INITIAL.
ls_cellxfs-applynumberformat = 1.
ls_styles_mapping-cell_format = &apos;I&apos;.
ELSE.
ls_cellxfs-applynumberformat = 0.
ls_styles_mapping-cell_format = &apos;S&apos;.
ENDIF.
IF ls_cellxfs-fontid NE 0.
ls_cellxfs-applyfont = 1.
ELSE.
ls_cellxfs-applyfont = 0.
ENDIF.
IF ls_cellxfs-fillid NE 0.
ls_cellxfs-applyfill = 1.
ELSE.
ls_cellxfs-applyfill = 0.
ENDIF.
IF ls_cellxfs-borderid NE 0.
ls_cellxfs-applyborder = 1.
ELSE.
ls_cellxfs-applyborder = 0.
ENDIF.
* Remap styles
READ TABLE lt_cellxfs FROM ls_cellxfs TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_styles_mapping-style = sy-tabix.
ELSE.
APPEND ls_cellxfs TO lt_cellxfs.
DESCRIBE TABLE lt_cellxfs LINES ls_styles_mapping-style.
ENDIF.
SUBTRACT 1 FROM ls_styles_mapping-style.
ls_styles_mapping-guid = lo_style-&gt;get_guid( ).
APPEND ls_styles_mapping TO me-&gt;styles_mapping.
ENDWHILE.
&quot; create font elements
LOOP AT lt_fonts INTO ls_font.
lo_element_font = lo_document-&gt;create_simple_element( name = lc_xml_node_font
parent = lo_document ).
IF ls_font-bold EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_b
parent = lo_document ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
IF ls_font-italic EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_i
parent = lo_document ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
IF ls_font-underline EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_u
parent = lo_document ).
lv_value = ls_font-underline_mode.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
IF ls_font-strikethrough EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_strike
parent = lo_document ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
&quot;size
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sz
parent = lo_document ).
lv_value = ls_font-size.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;color
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_font-color.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;name
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_name
parent = lo_document ).
lv_value = ls_font-name.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;family
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_family
parent = lo_document ).
lv_value = ls_font-family.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;scheme
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_scheme
parent = lo_document ).
lv_value = ls_font-scheme.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
lo_element_fonts-&gt;append_child( lo_element_font ).
&quot; Collect color
APPEND ls_font-color TO lt_colors.
ENDLOOP.
&quot; create fill elements
LOOP AT lt_fills INTO ls_fill.
lo_element_fill = lo_document-&gt;create_simple_element( name = lc_xml_node_fill
parent = lo_document ).
&quot;pattern
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_patternfill
parent = lo_document ).
lv_value = ls_fill-filltype.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_patterntype
value = lv_value ).
&quot; fgcolor
IF ls_fill-fgcolor IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_fgcolor
parent = lo_document ).
lv_value = ls_fill-fgcolor.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; fgcolor
ENDIF.
&quot; bgcolor
IF ls_fill-bgcolor IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_bgcolor
parent = lo_document ).
lv_value = ls_fill-bgcolor.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_indexed
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; bgcolor
ENDIF.
lo_element_fill-&gt;append_child( lo_sub_element ).&quot;pattern
lo_element_fills-&gt;append_child( lo_element_fill ).
&quot; Collect color
IF ls_fill-fgcolor IS NOT INITIAL.
APPEND ls_fill-fgcolor TO lt_colors.
ENDIF.
ENDLOOP.
&quot; create border elements
LOOP AT lt_borders INTO ls_border.
lo_element_border = lo_document-&gt;create_simple_element( name = lc_xml_node_border
parent = lo_document ).
&quot;left
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_left
parent = lo_document ).
IF ls_border-left_style IS NOT INITIAL.
lv_value = ls_border-left_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-left_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-left_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-left_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;right
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_right
parent = lo_document ).
IF ls_border-right_style IS NOT INITIAL.
lv_value = ls_border-right_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-right_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-right_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-right_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;top
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_top
parent = lo_document ).
IF ls_border-top_style IS NOT INITIAL.
lv_value = ls_border-top_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-top_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-top_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-top_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;bottom
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_bottom
parent = lo_document ).
IF ls_border-bottom_style IS NOT INITIAL.
lv_value = ls_border-bottom_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-bottom_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-bottom_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-bottom_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;diagonal
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_diagonal
parent = lo_document ).
IF ls_border-diagonal_style IS NOT INITIAL.
lv_value = ls_border-diagonal_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-diagonal_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-diagonal_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-diagonal_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
lo_element_borders-&gt;append_child( lo_element_border ).
ENDLOOP.
&quot; update attribute &quot;count&quot;
DESCRIBE TABLE lt_fonts LINES lv_fonts_count.
MOVE lv_fonts_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_fonts-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
DESCRIBE TABLE lt_fills LINES lv_fills_count.
MOVE lv_fills_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_fills-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
DESCRIBE TABLE lt_borders LINES lv_borders_count.
MOVE lv_borders_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_borders-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
DESCRIBE TABLE lt_cellxfs LINES lv_cellxfs_count.
MOVE lv_cellxfs_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_cellxfs-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
&quot; Append to root node
lo_element_root-&gt;append_child( lo_element_fonts ).
lo_element_root-&gt;append_child( lo_element_fills ).
lo_element_root-&gt;append_child( lo_element_borders ).
&quot; cellstylexfs node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_cellstylexfs
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;1&apos; ).
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_xf
parent = lo_document ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_numfmtid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_fontid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_fillid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_borderid
value = &apos;0&apos; ).
lo_element-&gt;append_child( lo_sub_element ).
lo_element_root-&gt;append_child( lo_element ).
LOOP AT lt_cellxfs INTO ls_cellxfs.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_xf
parent = lo_document ).
MOVE ls_cellxfs-numfmtid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_numfmtid
value = lv_value ).
MOVE ls_cellxfs-fontid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_fontid
value = lv_value ).
MOVE ls_cellxfs-fillid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_fillid
value = lv_value ).
MOVE ls_cellxfs-borderid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_borderid
value = lv_value ).
MOVE ls_cellxfs-xfid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_xfid
value = lv_value ).
IF ls_cellxfs-applynumberformat EQ 1.
MOVE ls_cellxfs-applynumberformat TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applynumberformat
value = lv_value ).
ENDIF.
IF ls_cellxfs-applyfont EQ 1.
MOVE ls_cellxfs-applyfont TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applyfont
value = lv_value ).
ENDIF.
IF ls_cellxfs-applyfill EQ 1.
MOVE ls_cellxfs-applyfill TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applyfill
value = lv_value ).
ENDIF.
IF ls_cellxfs-applyborder EQ 1.
MOVE ls_cellxfs-applyborder TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applyborder
value = lv_value ).
ENDIF.
lo_element_cellxfs-&gt;append_child( lo_element ).
ENDLOOP.
lo_element_root-&gt;append_child( lo_element_cellxfs ).
&quot; cellStyles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_cellstyles
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;1&apos; ).
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_cellstyle
parent = lo_document ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_name
value = &apos;Normal&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_xfid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_builtinid
value = &apos;0&apos; ).
lo_element-&gt;append_child( lo_sub_element ).
lo_element_root-&gt;append_child( lo_element ).
&quot; dxfs node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_dxfs
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;0&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; tableStyles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_tablestyles
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;0&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_defaulttablestyle
value = &apos;TableStyleMedium9&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_defaultpivotstyle
value = &apos;PivotStyleLight16&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; colors node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_colors
parent = lo_document ).
&quot; mruColors node
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_mrucolors
parent = lo_document ).
SORT lt_colors.
DELETE ADJACENT DUPLICATES FROM lt_colors.
LOOP AT lt_colors INTO ls_color.
&quot; color node
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color node
ENDLOOP.
lo_element-&gt;append_child( lo_sub_element ).&quot; mruColors node
lo_element_root-&gt;append_child( lo_element ).&quot; colors node
**********************************************************************
* STEP 5: Create xstring stream
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_THEME" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/theme/theme1.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="13 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_theme.
* @TODO *
DATA: lv_xl_theme TYPE string,
lv_xl_theme_01 TYPE string,
lv_xl_theme_02 TYPE string,
lv_xl_theme_03 TYPE string,
lv_xl_theme_04 TYPE string,
lv_xl_theme_05 TYPE string,
lv_xl_theme_06 TYPE string,
lv_xl_theme_07 TYPE string,
lv_xl_theme_08 TYPE string,
lv_xl_theme_09 TYPE string,
lv_xl_theme_10 TYPE string,
lv_xl_theme_11 TYPE string,
lv_xl_theme_12 TYPE string,
lv_xl_theme_13 TYPE string,
lv_xl_theme_14 TYPE string,
lv_xl_theme_15 TYPE string,
lv_xl_theme_16 TYPE string,
lv_xl_theme_17 TYPE string,
lv_xl_theme_18 TYPE string,
lv_xl_theme_19 TYPE string,
lv_xl_theme_20 TYPE string,
lv_xl_theme_21 TYPE string,
lv_xl_theme_22 TYPE string,
lv_xl_theme_23 TYPE string,
lv_xl_theme_24 TYPE string,
lv_xl_theme_25 TYPE string,
lv_xl_theme_26 TYPE string,
lv_xl_theme_27 TYPE string,
lv_xl_theme_28 TYPE string,
lv_xl_theme_29 TYPE string,
lv_xl_theme_30 TYPE string,
lv_xl_theme_31 TYPE string,
lv_xl_theme_32 TYPE string.
lv_xl_theme_01 = &apos;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;&apos;.
lv_xl_theme_02 = &apos;&lt;a:theme xmlns:a=&quot;http://schemas.openxmlformats.org/drawingml/2006/main&quot; name=&quot;Office Theme&quot;&gt;&lt;a:themeElements&gt;&lt;a:clrScheme name=&quot;Office&quot;&gt;&lt;a:dk1&gt;&lt;a:sysClr val=&quot;windowText&quot; lastClr=&quot;000000&quot;/&gt;&lt;/a:dk1&gt;&lt;a:lt1&gt;&lt;a:sysClr val=&quot;window&quot; &apos;.
lv_xl_theme_03 = &apos;lastClr=&quot;FFFFFF&quot;/&gt;&lt;/a:lt1&gt;&lt;a:dk2&gt;&lt;a:srgbClr val=&quot;1F497D&quot;/&gt;&lt;/a:dk2&gt;&lt;a:lt2&gt;&lt;a:srgbClr val=&quot;EEECE1&quot;/&gt;&lt;/a:lt2&gt;&lt;a:accent1&gt;&lt;a:srgbClr val=&quot;4F81BD&quot;/&gt;&lt;/a:accent1&gt;&lt;a:accent2&gt;&lt;a:srgbClr val=&quot;C0504D&quot;/&gt;&lt;/a:accent2&gt;&lt;a:accent3&gt;&lt;a:srgbClr &apos;.
lv_xl_theme_04 = &apos;val=&quot;9BBB59&quot;/&gt;&lt;/a:accent3&gt;&lt;a:accent4&gt;&lt;a:srgbClr val=&quot;8064A2&quot;/&gt;&lt;/a:accent4&gt;&lt;a:accent5&gt;&lt;a:srgbClr val=&quot;4BACC6&quot;/&gt;&lt;/a:accent5&gt;&lt;a:accent6&gt;&lt;a:srgbClr val=&quot;F79646&quot;/&gt;&lt;/a:accent6&gt;&lt;a:hlink&gt;&lt;a:srgbClr val=&quot;0000FF&quot;/&gt;&lt;/a:hlink&gt;&lt;a:folHlink&gt;&apos;.
lv_xl_theme_05 = &apos;&lt;a:srgbClr val=&quot;800080&quot;/&gt;&lt;/a:folHlink&gt;&lt;/a:clrScheme&gt;&lt;a:fontScheme name=&quot;Office&quot;&gt;&lt;a:majorFont&gt;&lt;a:latin typeface=&quot;Cambria&quot;/&gt;&lt;a:ea typeface=&quot;&quot;/&gt;&lt;a:cs typeface=&quot;&quot;/&gt;&apos;.
lv_xl_theme_06 = &apos;&lt;a:font script=&quot;Arab&quot; typeface=&quot;Times New Roman&quot;/&gt;&lt;a:font script=&quot;Hebr&quot; typeface=&quot;Times New Roman&quot;/&gt;&lt;a:font script=&quot;Thai&quot; &apos;.
lv_xl_theme_07 = &apos;typeface=&quot;Tahoma&quot;/&gt;&lt;a:font script=&quot;Ethi&quot; typeface=&quot;Nyala&quot;/&gt;&lt;a:font script=&quot;Beng&quot; typeface=&quot;Vrinda&quot;/&gt;&lt;a:font script=&quot;Gujr&quot; typeface=&quot;Shruti&quot;/&gt;&lt;a:font script=&quot;Khmr&quot; typeface=&quot;MoolBoran&quot;/&gt;&lt;a:font script=&quot;Knda&quot; typeface=&quot;Tunga&quot;/&gt;&lt;a:font &apos;.
lv_xl_theme_08 = &apos;script=&quot;Guru&quot; typeface=&quot;Raavi&quot;/&gt;&lt;a:font script=&quot;Cans&quot; typeface=&quot;Euphemia&quot;/&gt;&lt;a:font script=&quot;Cher&quot; typeface=&quot;Plantagenet Cherokee&quot;/&gt;&lt;a:font script=&quot;Yiii&quot; typeface=&quot;Microsoft Yi Baiti&quot;/&gt;&lt;a:font script=&quot;Tibt&quot; &apos;.
lv_xl_theme_09 = &apos;typeface=&quot;Microsoft Himalaya&quot;/&gt;&lt;a:font script=&quot;Thaa&quot; typeface=&quot;MV Boli&quot;/&gt;&lt;a:font script=&quot;Deva&quot; typeface=&quot;Mangal&quot;/&gt;&lt;a:font script=&quot;Telu&quot; typeface=&quot;Gautami&quot;/&gt;&lt;a:font script=&quot;Taml&quot; typeface=&quot;Latha&quot;/&gt;&lt;a:font script=&quot;Syrc&quot; &apos;.
lv_xl_theme_10 = &apos;typeface=&quot;Estrangelo Edessa&quot;/&gt;&lt;a:font script=&quot;Orya&quot; typeface=&quot;Kalinga&quot;/&gt;&lt;a:font script=&quot;Mlym&quot; typeface=&quot;Kartika&quot;/&gt;&lt;a:font script=&quot;Laoo&quot; typeface=&quot;DokChampa&quot;/&gt;&lt;a:font script=&quot;Sinh&quot; typeface=&quot;Iskoola Pota&quot;/&gt;&lt;a:font script=&quot;Mong&quot; &apos;.
lv_xl_theme_11 = &apos;typeface=&quot;Mongolian Baiti&quot;/&gt;&lt;a:font script=&quot;Viet&quot; typeface=&quot;Times New Roman&quot;/&gt;&lt;a:font script=&quot;Uigh&quot; typeface=&quot;Microsoft Uighur&quot;/&gt;&lt;/a:majorFont&gt;&lt;a:minorFont&gt;&lt;a:latin typeface=&quot;Calibri&quot;/&gt;&lt;a:ea typeface=&quot;&quot;/&gt;&lt;a:cs typeface=&quot;&quot;/&gt;&apos;.
lv_xl_theme_12 = &apos;&lt;a:font script=&quot;Arab&quot; typeface=&quot;Arial&quot;/&gt;&lt;a:font script=&quot;Hebr&quot; &apos;.
lv_xl_theme_13 = &apos;typeface=&quot;Arial&quot;/&gt;&lt;a:font script=&quot;Thai&quot; typeface=&quot;Tahoma&quot;/&gt;&lt;a:font script=&quot;Ethi&quot; typeface=&quot;Nyala&quot;/&gt;&lt;a:font script=&quot;Beng&quot; typeface=&quot;Vrinda&quot;/&gt;&lt;a:font script=&quot;Gujr&quot; typeface=&quot;Shruti&quot;/&gt;&lt;a:font script=&quot;Khmr&quot; typeface=&quot;DaunPenh&quot;/&gt;&lt;a:font &apos;.
lv_xl_theme_14 = &apos;script=&quot;Knda&quot; typeface=&quot;Tunga&quot;/&gt;&lt;a:font script=&quot;Guru&quot; typeface=&quot;Raavi&quot;/&gt;&lt;a:font script=&quot;Cans&quot; typeface=&quot;Euphemia&quot;/&gt;&lt;a:font script=&quot;Cher&quot; typeface=&quot;Plantagenet Cherokee&quot;/&gt;&lt;a:font script=&quot;Yiii&quot; typeface=&quot;Microsoft Yi Baiti&quot;/&gt;&lt;a:font &apos;.
lv_xl_theme_15 = &apos;script=&quot;Tibt&quot; typeface=&quot;Microsoft Himalaya&quot;/&gt;&lt;a:font script=&quot;Thaa&quot; typeface=&quot;MV Boli&quot;/&gt;&lt;a:font script=&quot;Deva&quot; typeface=&quot;Mangal&quot;/&gt;&lt;a:font script=&quot;Telu&quot; typeface=&quot;Gautami&quot;/&gt;&lt;a:font script=&quot;Taml&quot; typeface=&quot;Latha&quot;/&gt;&lt;a:font script=&quot;Syrc&quot; &apos;.
lv_xl_theme_16 = &apos;typeface=&quot;Estrangelo Edessa&quot;/&gt;&lt;a:font script=&quot;Orya&quot; typeface=&quot;Kalinga&quot;/&gt;&lt;a:font script=&quot;Mlym&quot; typeface=&quot;Kartika&quot;/&gt;&lt;a:font script=&quot;Laoo&quot; typeface=&quot;DokChampa&quot;/&gt;&lt;a:font script=&quot;Sinh&quot; typeface=&quot;Iskoola Pota&quot;/&gt;&lt;a:font script=&quot;Mong&quot; &apos;.
lv_xl_theme_17 = &apos;typeface=&quot;Mongolian Baiti&quot;/&gt;&lt;a:font script=&quot;Viet&quot; typeface=&quot;Arial&quot;/&gt;&lt;a:font script=&quot;Uigh&quot; typeface=&quot;Microsoft Uighur&quot;/&gt;&lt;/a:minorFont&gt;&lt;/a:fontScheme&gt;&lt;a:fmtScheme name=&quot;Office&quot;&gt;&lt;a:fillStyleLst&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;/&gt;&apos;.
lv_xl_theme_18 = &apos;&lt;/a:solidFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;50000&quot;/&gt;&lt;a:satMod val=&quot;300000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;35000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;37000&quot;/&gt;&lt;a:satMod &apos;.
lv_xl_theme_19 = &apos;val=&quot;300000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;100000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;15000&quot;/&gt;&lt;a:satMod val=&quot;350000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:lin ang=&quot;16200000&quot; scaled=&quot;1&quot;/&gt;&lt;/a:gradFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&apos;.
lv_xl_theme_20 = &apos;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;51000&quot;/&gt;&lt;a:satMod val=&quot;130000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;80000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;93000&quot;/&gt;&lt;a:satMod val=&quot;130000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs &apos;.
lv_xl_theme_21 = &apos;pos=&quot;100000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;94000&quot;/&gt;&lt;a:satMod val=&quot;135000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:lin ang=&quot;16200000&quot; scaled=&quot;0&quot;/&gt;&lt;/a:gradFill&gt;&lt;/a:fillStyleLst&gt;&lt;a:lnStyleLst&gt;&lt;a:ln w=&quot;9525&quot; cap=&quot;flat&quot; cmpd=&quot;sng&quot; &apos;.
lv_xl_theme_22 = &apos;algn=&quot;ctr&quot;&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;95000&quot;/&gt;&lt;a:satMod val=&quot;105000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:solidFill&gt;&lt;a:prstDash val=&quot;solid&quot;/&gt;&lt;/a:ln&gt;&lt;a:ln w=&quot;25400&quot; cap=&quot;flat&quot; cmpd=&quot;sng&quot; algn=&quot;ctr&quot;&gt;&lt;a:solidFill&gt;&lt;a:schemeClr &apos;.
lv_xl_theme_23 = &apos;val=&quot;phClr&quot;/&gt;&lt;/a:solidFill&gt;&lt;a:prstDash val=&quot;solid&quot;/&gt;&lt;/a:ln&gt;&lt;a:ln w=&quot;38100&quot; cap=&quot;flat&quot; cmpd=&quot;sng&quot; algn=&quot;ctr&quot;&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;/&gt;&lt;/a:solidFill&gt;&lt;a:prstDash val=&quot;solid&quot;/&gt;&lt;/a:ln&gt;&lt;/a:lnStyleLst&gt;&lt;a:effectStyleLst&gt;&apos;.
lv_xl_theme_24 = &apos;&lt;a:effectStyle&gt;&lt;a:effectLst&gt;&lt;a:outerShdw blurRad=&quot;40000&quot; dist=&quot;20000&quot; dir=&quot;5400000&quot; rotWithShape=&quot;0&quot;&gt;&lt;a:srgbClr val=&quot;000000&quot;&gt;&lt;a:alpha val=&quot;38000&quot;/&gt;&lt;/a:srgbClr&gt;&lt;/a:outerShdw&gt;&lt;/a:effectLst&gt;&lt;/a:effectStyle&gt;&lt;a:effectStyle&gt;&lt;a:effectLst&gt;&apos;.
lv_xl_theme_25 = &apos;&lt;a:outerShdw blurRad=&quot;40000&quot; dist=&quot;23000&quot; dir=&quot;5400000&quot; rotWithShape=&quot;0&quot;&gt;&lt;a:srgbClr val=&quot;000000&quot;&gt;&lt;a:alpha val=&quot;35000&quot;/&gt;&lt;/a:srgbClr&gt;&lt;/a:outerShdw&gt;&lt;/a:effectLst&gt;&lt;/a:effectStyle&gt;&lt;a:effectStyle&gt;&lt;a:effectLst&gt;&lt;a:outerShdw blurRad=&quot;40000&quot; &apos;.
lv_xl_theme_26 = &apos;dist=&quot;23000&quot; dir=&quot;5400000&quot; rotWithShape=&quot;0&quot;&gt;&lt;a:srgbClr val=&quot;000000&quot;&gt;&lt;a:alpha val=&quot;35000&quot;/&gt;&lt;/a:srgbClr&gt;&lt;/a:outerShdw&gt;&lt;/a:effectLst&gt;&lt;a:scene3d&gt;&lt;a:camera prst=&quot;orthographicFront&quot;&gt;&lt;a:rot lat=&quot;0&quot; lon=&quot;0&quot; rev=&quot;0&quot;/&gt;&lt;/a:camera&gt;&lt;a:lightRig &apos;.
lv_xl_theme_27 = &apos;rig=&quot;threePt&quot; dir=&quot;t&quot;&gt;&lt;a:rot lat=&quot;0&quot; lon=&quot;0&quot; rev=&quot;1200000&quot;/&gt;&lt;/a:lightRig&gt;&lt;/a:scene3d&gt;&lt;a:sp3d&gt;&lt;a:bevelT w=&quot;63500&quot; h=&quot;25400&quot;/&gt;&lt;/a:sp3d&gt;&lt;/a:effectStyle&gt;&lt;/a:effectStyleLst&gt;&lt;a:bgFillStyleLst&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;/&gt;&apos;.
lv_xl_theme_28 = &apos;&lt;/a:solidFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;40000&quot;/&gt;&lt;a:satMod val=&quot;350000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;40000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;45000&quot;/&gt;&lt;a:shade &apos;.
lv_xl_theme_29 = &apos;val=&quot;99000&quot;/&gt;&lt;a:satMod val=&quot;350000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;100000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;20000&quot;/&gt;&lt;a:satMod val=&quot;255000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:path path=&quot;circle&quot;&gt;&lt;a:fillToRect l=&quot;50000&quot; &apos;.
lv_xl_theme_30 = &apos;t=&quot;-80000&quot; r=&quot;50000&quot; b=&quot;180000&quot;/&gt;&lt;/a:path&gt;&lt;/a:gradFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;80000&quot;/&gt;&lt;a:satMod val=&quot;300000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;100000&quot;&gt;&lt;a:schemeClr &apos;.
lv_xl_theme_31 = &apos;val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;30000&quot;/&gt;&lt;a:satMod val=&quot;200000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:path path=&quot;circle&quot;&gt;&lt;a:fillToRect l=&quot;50000&quot; t=&quot;50000&quot; r=&quot;50000&quot; b=&quot;50000&quot;/&gt;&lt;/a:path&gt;&lt;/a:gradFill&gt;&lt;/a:bgFillStyleLst&gt;&lt;/a:fmtScheme&gt;&apos;.
lv_xl_theme_32 = &apos;&lt;/a:themeElements&gt;&lt;a:objectDefaults/&gt;&lt;a:extraClrSchemeLst/&gt;&lt;/a:theme&gt;&apos;.
CONCATENATE lv_xl_theme_01 lv_xl_theme_02 lv_xl_theme_03 lv_xl_theme_04 lv_xl_theme_05 lv_xl_theme_06 lv_xl_theme_07 lv_xl_theme_08 lv_xl_theme_09 lv_xl_theme_10 lv_xl_theme_11 lv_xl_theme_12 lv_xl_theme_13 lv_xl_theme_14 lv_xl_theme_15
lv_xl_theme_16 lv_xl_theme_17 lv_xl_theme_18 lv_xl_theme_19 lv_xl_theme_20 lv_xl_theme_21 lv_xl_theme_22 lv_xl_theme_23 lv_xl_theme_24 lv_xl_theme_25 lv_xl_theme_26 lv_xl_theme_27 lv_xl_theme_28 lv_xl_theme_29 lv_xl_theme_30
lv_xl_theme_31 lv_xl_theme_32
INTO lv_xl_theme SEPARATED BY space.
CALL FUNCTION &apos;SCMS_STRING_TO_XSTRING&apos;
EXPORTING
text = lv_xl_theme
IMPORTING
buffer = ep_content.
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="14 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_workbook.
** Constant node name
DATA: lc_xml_node_workbook TYPE string VALUE &apos;workbook&apos;,
lc_xml_node_fileversion TYPE string VALUE &apos;fileVersion&apos;,
lc_xml_node_workbookpr TYPE string VALUE &apos;workbookPr&apos;,
lc_xml_node_bookviews TYPE string VALUE &apos;bookViews&apos;,
lc_xml_node_workbookview TYPE string VALUE &apos;workbookView&apos;,
lc_xml_node_sheets TYPE string VALUE &apos;sheets&apos;,
lc_xml_node_sheet TYPE string VALUE &apos;sheet&apos;,
lc_xml_node_calcpr TYPE string VALUE &apos;calcPr&apos;,
&quot; Node attributes
lc_xml_attr_appname TYPE string VALUE &apos;appName&apos;,
lc_xml_attr_lastedited TYPE string VALUE &apos;lastEdited&apos;,
lc_xml_attr_lowestedited TYPE string VALUE &apos;lowestEdited&apos;,
lc_xml_attr_rupbuild TYPE string VALUE &apos;rupBuild&apos;,
lc_xml_attr_themeversion TYPE string VALUE &apos;defaultThemeVersion&apos;,
lc_xml_attr_xwindow TYPE string VALUE &apos;xWindow&apos;,
lc_xml_attr_ywindow TYPE string VALUE &apos;yWindow&apos;,
lc_xml_attr_windowwidth TYPE string VALUE &apos;windowWidth&apos;,
lc_xml_attr_windowheight TYPE string VALUE &apos;windowHeight&apos;,
lc_xml_attr_name TYPE string VALUE &apos;name&apos;,
lc_xml_attr_sheetid TYPE string VALUE &apos;sheetId&apos;,
lc_xml_attr_id TYPE string VALUE &apos;id&apos;,
lc_xml_attr_calcid TYPE string VALUE &apos;calcId&apos;,
&quot; Node namespace
lc_r_ns TYPE string VALUE &apos;r&apos;,
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;,
lc_xml_node_r_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_xml_node_ridx_id TYPE string,
lv_value TYPE string,
lv_syindex TYPE string.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_workbook
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:r&apos;
value = lc_xml_node_r_ns ).
**********************************************************************
* STEP 4: Create subnode
&quot; fileVersion node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_fileversion
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_appname
value = &apos;xl&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_lastedited
value = &apos;4&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_lowestedited
value = &apos;4&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_rupbuild
value = &apos;4506&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; fileVersion node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_workbookpr
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_themeversion
value = &apos;124226&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; bookviews node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_bookviews
parent = lo_document ).
&quot; bookview node
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_workbookview
parent = lo_document ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_xwindow
value = &apos;120&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_ywindow
value = &apos;120&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_windowwidth
value = &apos;19035&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_windowheight
value = &apos;8445&apos; ).
lo_element-&gt;append_child( lo_sub_element ).&quot; bookview node
lo_element_root-&gt;append_child( lo_element ).&quot; bookviews node
&quot; sheets node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheets
parent = lo_document ).
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
&quot; sheet node
lo_sub_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_sheet
parent = lo_document ).
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
lv_value = lo_worksheet-&gt;title.
lv_syindex = sy-index.
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_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_name
value = lv_value ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_sheetid
value = lv_syindex ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_id
prefix = lc_r_ns
value = lv_xml_node_ridx_id ).
lo_element-&gt;append_child( lo_sub_element ). &quot; sheet node
ENDWHILE.
lo_element_root-&gt;append_child( lo_element ).&quot; sheets node
&quot; calcPr node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_calcpr
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_calcid
value = &apos;125725&apos; ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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="FLAG2BOOL" VERSION="1" LANGU="E" DESCRIPT="Convert a FLAG to BOOLEAN value" EXPOSURE="0" STATE="1" EDITORDER="15 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="FLAG2BOOL" SCONAME="IP_FLAG" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="FLAG"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="FLAG2BOOL" SCONAME="EP_BOOLEAN" VERSION="1" LANGU="E" DESCRIPT="Boolean value" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="CHAR5"/>
<source>METHOD flag2bool.
IF ip_flag EQ abap_true.
ep_boolean = &apos;true&apos;.
ELSE.
ep_boolean = &apos;false&apos;.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="GET_SHARED_STRING_INDEX" VERSION="1" LANGU="E" DESCRIPT="Get shared string index" EXPOSURE="0" STATE="1" EDITORDER="16 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="GET_SHARED_STRING_INDEX" SCONAME="IP_CELL_VALUE" VERSION="1" LANGU="E" DESCRIPT="Cell Value" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_VALUE"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="GET_SHARED_STRING_INDEX" SCONAME="EP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Natural Number" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="INT4"/>
<source>METHOD get_shared_string_index.
DATA ls_shared_string TYPE zexcel_s_shared_string.
READ TABLE shared_strings INTO ls_shared_string WITH KEY string_value = ip_cell_value.
ep_index = ls_shared_string-string_no.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" UUID="C4C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL
*&quot;* do not include other source files here!!!
public section.
constants C_XLS type ZEXCEL_FORMAT value &apos;XLS&apos;. &quot;#EC NOTEXT
constants C_XLSX type ZEXCEL_FORMAT value &apos;XLSX&apos;. &quot;#EC NOTEXT
data PROPERTIES type ref to ZCL_EXCEL_PROPERTIES .
data SECURITY type ref to ZCL_EXCEL_SECURITY .
methods ADD_NEW_DRAWING
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional
returning
value(EO_DRAWING) type ref to ZCL_EXCEL_DRAWING .
methods ADD_NEW_STYLE
returning
value(EO_STYLE) type ref to ZCL_EXCEL_STYLE .
methods ADD_NEW_WORKSHEET
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional
returning
value(EO_WORKSHEET) type ref to ZCL_EXCEL_WORKSHEET .
methods CONSTRUCTOR .
methods GET_ACTIVE_WORKSHEET
returning
value(EO_WORKSHEET) type ref to ZCL_EXCEL_WORKSHEET .
methods GET_DRAWINGS_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods GET_STYLES_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods GET_WORKSHEETS_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods GET_WORKSHEETS_NAME
returning
value(EP_NAME) type ZEXCEL_WORKSHEETS_NAME .
methods GET_WORKSHEETS_SIZE
returning
value(EP_SIZE) type I .
methods SAVE_AS
importing
!IP_FORMAT type ZEXCEL_FORMAT
returning
value(EP_FILE) type XSTRING .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL
*&quot;* do not include other source files here!!!
private section.
data DRAWINGS type ref to ZCL_EXCEL_DRAWINGS .
data RANGES type ref to ZCL_EXCEL_RANGES .
data STYLES type ref to ZCL_EXCEL_STYLES .
data WORKSHEETS type ref to ZCL_EXCEL_WORKSHEETS .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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="C_XLS" VERSION="1" LANGU="E" DESCRIPT="File format office 2003" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100630" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="2" ATTVALUE="&apos;XLS&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="C_XLSX" VERSION="1" LANGU="E" DESCRIPT="File format office 2007" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100630" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="2" ATTVALUE="&apos;XLSX&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FORMAT" 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="3 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEETS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<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="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100708" 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="20100708" CHANGEDON="00000000" 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
CREATE OBJECT eo_drawing
EXPORTING
ip_title = ip_title.
drawings-&gt;add( eo_drawing ).
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="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>method ADD_NEW_STYLE.
* Create default style
CREATE OBJECT eo_style.
styles-&gt;add( eo_style ).
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="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100706" 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="20100704" CHANGEDON="00000000" 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
CREATE OBJECT eo_worksheet
EXPORTING
ip_title = ip_title.
worksheets-&gt;add( eo_worksheet ).
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="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
DATA: lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style TYPE REF TO zcl_excel_style.
* Inizialize instance objects
CREATE OBJECT properties.
CREATE OBJECT security.
CREATE OBJECT worksheets.
CREATE OBJECT ranges.
CREATE OBJECT styles.
CREATE OBJECT drawings.
me-&gt;add_new_worksheet( ).
me-&gt;add_new_style( ). &quot; Standard style
lo_style = me-&gt;add_new_style( ). &quot; Standard style with fill gray125
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_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100708" CHANGEDON="00000000" 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_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get styles iterator" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="SAVE_AS" VERSION="1" LANGU="E" DESCRIPT="Save as" EXPOSURE="2" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SAVE_AS" SCONAME="IP_FORMAT" VERSION="1" LANGU="E" DESCRIPT="File format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_FORMAT"/>
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SAVE_AS" SCONAME="EP_FILE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD save_as.
DATA lo_excel_writer_2007 TYPE REF TO zcl_excel_writer_2007.
* Determine the output engine to use
CASE ip_format.
WHEN me-&gt;c_xlsx. &quot; XLSX for Office 2007
CREATE OBJECT lo_excel_writer_2007 EXPORTING io_excel = me.
ep_file = lo_excel_writer_2007-&gt;create( ).
WHEN OTHERS.
ENDCASE.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_COMMON" VERSION="1" LANGU="E" DESCRIPT="Static common methods" UUID="5E42354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_COMMON definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_COMMON
*&quot;* do not include other source files here!!!
public section.
class-methods CONVERT_COLUMN2ALPHA
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN_ALPHA .
class-methods CONVERT_COLUMN2INT
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_COMMON
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_COMMON
*&quot;* do not include other source files here!!!
private section.
class-data C_EXCEL_COL_MODULE type INT2 value 64. &quot;#EC NOTEXT .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_COMMON" CMPNAME="C_EXCEL_COL_MODULE" VERSION="1" LANGU="E" DESCRIPT="2 byte integer (signed)" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" ATTDECLTYP="1" ATTVALUE="64" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2ALPHA" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Alpha" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="1" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<source>METHOD convert_column2alpha.
DATA: lo_conv TYPE REF TO cl_abap_conv_in_ce,
lv_uccpi TYPE i,
lv_text TYPE sychar02,
lv_module TYPE int4,
lv_column TYPE zexcel_cell_column.
lv_column = ip_column.
WHILE lv_column GT 0.
lv_module = ( lv_column - 1 ) MOD 26.
lv_uccpi = 65 + lv_module.
lv_column = ( lv_column - lv_module ) / 26.
lv_text = cl_abap_conv_in_ce=&gt;uccpi( lv_uccpi ).
CONCATENATE lv_text ep_column INTO ep_column.
ENDWHILE.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2INT" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Integer" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="1" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2INT" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2INT" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<source>METHOD convert_column2int.
DATA: lv_uccpi TYPE i,
lv_char TYPE c,
lv_column(2) TYPE c.
* Calculate most significant letter
lv_char = ip_column+1(1).
IF lv_char IS NOT INITIAL. &quot;To avoid the first 26 column that have only a char in first position
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column MOD ( zcl_excel_common=&gt;c_excel_col_module ).
lv_char = ip_column(1).
lv_uccpi = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
lv_uccpi = ( lv_uccpi MOD ( zcl_excel_common=&gt;c_excel_col_module ) ) * 26.
ep_column = ep_column + lv_uccpi.
ELSE.
lv_char = ip_column(1).
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column - zcl_excel_common=&gt;c_excel_col_module.
ENDIF.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Drawing" UUID="0FA0354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_DRAWING definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_DRAWING
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data TITLE type ZEXCEL_SHEET_TITLE value &apos;Worksheet&apos;. &quot;#EC NOTEXT .
data X_REFERENCES type CHAR1 .
data Y_REFERENCES type CHAR1 .
data GRAPH_TYPE type ZEXCEL_GRAPH_TYPE .
methods CONSTRUCTOR
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional .
methods GET_GUID
returning
value(EP_GUID) type GUID_16 .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_DRAWING
*&quot;* do not include other source files here!!!
private section.
data GUID type GUID_16 .
data LOWER_CELL type ZEXCEL_S_CELL_DATA .
data UPPER_CELL type ZEXCEL_S_CELL_DATA .
constants C_EXCEL_COL_MODULE type INT2 value 64. &quot;#EC NOTEXT
methods CONVERT_COLUMN2ALPHA
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN_ALPHA .
methods CONVERT_COLUMN2INT
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_DRAWING" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="C_EXCEL_COL_MODULE" VERSION="1" LANGU="E" DESCRIPT="2 byte integer (signed)" EXPOSURE="0" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="64" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GRAPH_TYPE" VERSION="1" LANGU="E" DESCRIPT="Graph type" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_GRAPH_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="GUID_16" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="LOWER_CELL" VERSION="1" LANGU="E" DESCRIPT="Bottom right range cell" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTVALUE="&apos;Worksheet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="UPPER_CELL" VERSION="1" LANGU="E" DESCRIPT="Top left range cell" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="X_REFERENCES" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="Y_REFERENCES" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONSTRUCTOR" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="2" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<source>METHOD CONSTRUCTOR.
CALL FUNCTION &apos;GUID_CREATE&apos;
IMPORTING
ev_guid_16 = me-&gt;guid.
IF ip_title IS NOT INITIAL.
title = ip_title.
ELSE.
title = me-&gt;guid.
ENDIF.
* inizialize dimension range
lower_cell-cell_row = 1.
lower_cell-cell_column = 1.
upper_cell-cell_row = 1.
upper_cell-cell_column = 1.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2ALPHA" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Alpha" EXPOSURE="0" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<source>METHOD CONVERT_COLUMN2ALPHA.
DATA: lo_conv TYPE REF TO cl_abap_conv_in_ce,
lv_uccpi TYPE i,
lv_text TYPE sychar02,
lv_module TYPE int4,
lv_column TYPE zexcel_cell_column.
lv_column = ip_column.
WHILE lv_column GT 0.
lv_module = ( lv_column - 1 ) MOD 26.
lv_uccpi = 65 + lv_module.
lv_column = ( lv_column - lv_module ) / 26.
lv_text = cl_abap_conv_in_ce=&gt;uccpi( lv_uccpi ).
CONCATENATE lv_text ep_column INTO ep_column.
ENDWHILE.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2INT" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Integer" EXPOSURE="0" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2INT" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2INT" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<source>METHOD CONVERT_COLUMN2INT.
DATA: lv_uccpi TYPE i,
lv_char TYPE c,
lv_column(2) TYPE c.
* Calculate most significant letter
lv_char = ip_column+1(1).
IF lv_char IS NOT INITIAL. &quot;To avoid the first 26 column that have only a char in first position
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column MOD ( me-&gt;c_excel_col_module ).
lv_char = ip_column(1).
lv_uccpi = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
lv_uccpi = ( lv_uccpi MOD ( me-&gt;c_excel_col_module ) ) * 26.
ep_column = ep_column + lv_uccpi.
ELSE.
lv_char = ip_column(1).
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column - me-&gt;c_excel_col_module.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GET_GUID" VERSION="1" LANGU="E" DESCRIPT="Get sheet guid" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GET_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="GUID_16"/>
<source>method GET_GUID.
ep_guid = me-&gt;guid.
endmethod.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Drawings collection" UUID="549F354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_DRAWINGS definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_DRAWINGS
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_DRAWING type ref to ZCL_EXCEL_DRAWING .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type ZEXCEL_ACTIVE_WORKSHEET
returning
value(EO_DRAWING) type ref to ZCL_EXCEL_DRAWING .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_DRAWING type ref to ZCL_EXCEL_DRAWING .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_DRAWINGS
*&quot;* do not include other source files here!!!
private section.
data DRAWINGS type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_DRAWINGS" CMPNAME="DRAWINGS" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="ADD" SCONAME="IP_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>METHOD add.
drawings-&gt;add( ip_drawing ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
drawings-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT drawings.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET" SCONAME="EO_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>METHOD get.
DATA lv_index TYPE i.
lv_index = ip_index.
eo_drawing ?= drawings-&gt;if_object_collection~get( lv_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= drawings-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = drawings-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="REMOVE" SCONAME="IP_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>METHOD remove.
drawings-&gt;remove( ip_drawing ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = drawings-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<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" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_PROPERTIES definition
public
final
create public .
*&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 CREATED type TIMESTAMPL .
data MODIFIED type TIMESTAMPL .
data TITLE type ZEXCEL_TITLE value &apos;Untitled Spreadsheet&apos;. &quot;#EC NOTEXT .
data SUBJECT type ZEXCEL_SUBJECT .
data DESCRIPTION type ZEXCEL_DESCRIPTION .
data KEYWORDS type ZEXCEL_KEYWORDS .
data CATEGORY type ZEXCEL_CATEGORY .
data COMPANY type ZEXCEL_COMPANY value &apos;Microsoft Corporation&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 .
data LINKSUPTODATE type FLAG .
data SHAREDDOC type FLAG .
data HYPERLINKSCHANGED type FLAG .
data APPVERSION type ZEXCEL_APPVERSION value &apos;12.0000&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_PROPERTIES
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_PROPERTIES
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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="20100702" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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="20100702" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD CONSTRUCTOR.
DATA: lv_timestamp TYPE timestampl.
GET TIME STAMP FIELD lv_timestamp.
created = lv_timestamp.
modified = lv_timestamp.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" UUID="D3B0284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_RANGE definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_RANGE
*&quot;* do not include other source files here!!!
public section.
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<method CLSNAME="ZCL_EXCEL_RANGE" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_RANGES" VERSION="1" LANGU="E" DESCRIPT="Ranges collection" UUID="F2AF284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_RANGES definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_RANGES
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_RANGE type ref to ZCL_EXCEL_RANGE .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type I
returning
value(EO_RANGE) type ref to ZCL_EXCEL_RANGE .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_RANGE type ref to ZCL_EXCEL_RANGE .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZABAP_EXCEL_RANGES
*&quot;* do not include other source files here!!!
private section.
data RANGES type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_RANGES" CMPNAME="RANGES" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="ADD" SCONAME="IP_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>METHOD ADD.
ranges-&gt;add( ip_range ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD CLEAR.
ranges-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="I"/>
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET" SCONAME="EO_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>METHOD GET.
eo_range ?= ranges-&gt;if_object_collection~get( ip_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD GET_ITERATOR.
eo_iterator ?= ranges-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD IS_EMPTY.
is_empty = ranges-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="REMOVE" SCONAME="IP_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>METHOD REMOVE.
ranges-&gt;remove( ip_range ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD SIZE.
ep_size = ranges-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_SECURITY" VERSION="1" LANGU="E" DESCRIPT="Security" UUID="4BAF284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_SECURITY definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_SECURITY
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data LOCKREVISION type FLAG .
data LOCKSTRUCTURE type FLAG .
data LOCKWINDOWS type FLAG .
data REVISIONSPASSWORD type ZEXCEL_REVISIONSPASSWORD .
data WORKBOOKPASSWORD type ZEXCEL_WORKBOOKPASSWORD .
methods CONSTRUCTOR .
methods IS_SECURITY_ENABLED
returning
value(EP_SECURITY_ENABLED) type FLAG .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_SECURITY
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZABAP_EXCEL_SECURITY
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_SECURITY" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="LOCKREVISION" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_SECURITY" CMPNAME="LOCKSTRUCTURE" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_SECURITY" CMPNAME="LOCKWINDOWS" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_SECURITY" CMPNAME="REVISIONSPASSWORD" VERSION="1" LANGU="E" DESCRIPT="Revisions password" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_REVISIONSPASSWORD" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="WORKBOOKPASSWORD" VERSION="1" LANGU="E" DESCRIPT="Workbook password" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_WORKBOOKPASSWORD" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="IS_SECURITY_ENABLED" VERSION="1" LANGU="E" DESCRIPT="Is some sort of dcument security enabled?" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="IS_SECURITY_ENABLED" SCONAME="EP_SECURITY_ENABLED" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD IS_SECURITY_ENABLED.
IF lockrevision EQ abap_true OR lockstructure EQ abap_true OR lockwindows EQ abap_true.
ep_security_enabled = abap_true.
ENDIF.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_SHEET_SETUP" VERSION="1" LANGU="E" DESCRIPT="Sheet setup" UUID="48ED294CBB345D2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_SHEET_SETUP definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_SHEET_SETUP
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
constants C_PAPERSIZE_LETTER type ZEXCEL_SHEET_PAPER_SIZE value 1. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_SMALL type ZEXCEL_SHEET_PAPER_SIZE value 2. &quot;#EC NOTEXT
constants C_PAPERSIZE_TABLOID type ZEXCEL_SHEET_PAPER_SIZE value 3. &quot;#EC NOTEXT
constants C_PAPERSIZE_LEDGER type ZEXCEL_SHEET_PAPER_SIZE value 4. &quot;#EC NOTEXT
constants C_PAPERSIZE_LEGAL type ZEXCEL_SHEET_PAPER_SIZE value 5. &quot;#EC NOTEXT
constants C_PAPERSIZE_STATEMENT type ZEXCEL_SHEET_PAPER_SIZE value 6. &quot;#EC NOTEXT
constants C_PAPERSIZE_EXECUTIVE type ZEXCEL_SHEET_PAPER_SIZE value 7. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3 type ZEXCEL_SHEET_PAPER_SIZE value 8. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4 type ZEXCEL_SHEET_PAPER_SIZE value 9. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_SMALL type ZEXCEL_SHEET_PAPER_SIZE value 10. &quot;#EC NOTEXT
constants C_PAPERSIZE_A5 type ZEXCEL_SHEET_PAPER_SIZE value 11. &quot;#EC NOTEXT
constants C_PAPERSIZE_B4 type ZEXCEL_SHEET_PAPER_SIZE value 12. &quot;#EC NOTEXT
constants C_PAPERSIZE_B5 type ZEXCEL_SHEET_PAPER_SIZE value 13. &quot;#EC NOTEXT
constants C_PAPERSIZE_FOLIO type ZEXCEL_SHEET_PAPER_SIZE value 14. &quot;#EC NOTEXT
constants C_PAPERSIZE_QUARTO type ZEXCEL_SHEET_PAPER_SIZE value 15. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_1 type ZEXCEL_SHEET_PAPER_SIZE value 16. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_2 type ZEXCEL_SHEET_PAPER_SIZE value 17. &quot;#EC NOTEXT
constants C_PAPERSIZE_NOTE type ZEXCEL_SHEET_PAPER_SIZE value 18. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO9_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 19. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO10_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 20. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO11_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 21. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO12_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 22. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO14_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 23. &quot;#EC NOTEXT
constants C_PAPERSIZE_C type ZEXCEL_SHEET_PAPER_SIZE value 24. &quot;#EC NOTEXT
constants C_PAPERSIZE_D type ZEXCEL_SHEET_PAPER_SIZE value 25. &quot;#EC NOTEXT
constants C_PAPERSIZE_E type ZEXCEL_SHEET_PAPER_SIZE value 26. &quot;#EC NOTEXT
constants C_PAPERSIZE_DL_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 27. &quot;#EC NOTEXT
constants C_PAPERSIZE_C5_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 28. &quot;#EC NOTEXT
constants C_PAPERSIZE_C3_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 29. &quot;#EC NOTEXT
constants C_PAPERSIZE_C4_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 30. &quot;#EC NOTEXT
constants C_PAPERSIZE_C6_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 31. &quot;#EC NOTEXT
constants C_PAPERSIZE_C65_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 32. &quot;#EC NOTEXT
constants C_PAPERSIZE_B4_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 33. &quot;#EC NOTEXT
constants C_PAPERSIZE_B5_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 34. &quot;#EC NOTEXT
constants C_PAPERSIZE_B6_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 35. &quot;#EC NOTEXT
constants C_PAPERSIZE_ITALY_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 36. &quot;#EC NOTEXT
constants C_PAPERSIZE_MONARCH_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 37. &quot;#EC NOTEXT
constants C_PAPERSIZE_6_3_4_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 38. &quot;#EC NOTEXT
constants C_PAPERSIZE_US_STD_FANFOLD type ZEXCEL_SHEET_PAPER_SIZE value 39. &quot;#EC NOTEXT
constants C_PAPERSIZE_DE_STD_FANFOLD type ZEXCEL_SHEET_PAPER_SIZE value 40. &quot;#EC NOTEXT
constants C_PAPERSIZE_DE_LEG_FANFOLD type ZEXCEL_SHEET_PAPER_SIZE value 41. &quot;#EC NOTEXT
constants C_PAPERSIZE_ISO_B4 type ZEXCEL_SHEET_PAPER_SIZE value 42. &quot;#EC NOTEXT
constants C_PAPERSIZE_JPN_DBL_POSTCARD type ZEXCEL_SHEET_PAPER_SIZE value 43. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_PAPER_1 type ZEXCEL_SHEET_PAPER_SIZE value 44. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_PAPER_2 type ZEXCEL_SHEET_PAPER_SIZE value 45. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_PAPER_3 type ZEXCEL_SHEET_PAPER_SIZE value 46. &quot;#EC NOTEXT
constants C_PAPERSIZE_INVITE_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 47. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 48. &quot;#EC NOTEXT
constants C_PAPERSIZE_LEGAL_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 49. &quot;#EC NOTEXT
constants C_PAPERSIZE_TABL_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 50. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 51. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 52. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 53. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_EXTV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 54. &quot;#EC NOTEXT
constants C_PAPERSIZE_SUPERA_A4_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 55. &quot;#EC NOTEXT
constants C_PAPERSIZE_SUPERB_A3_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 56. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_PLUS_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 57. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_PLUS_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 58. &quot;#EC NOTEXT
constants C_PAPERSIZE_A5_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 59. &quot;#EC NOTEXT
constants C_PAPERSIZE_JIS_B5_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 60. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 61. &quot;#EC NOTEXT
constants C_PAPERSIZE_A5_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 62. &quot;#EC NOTEXT
constants C_PAPERSIZE_ISO_B5_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 63. &quot;#EC NOTEXT
constants C_PAPERSIZE_A2_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 64. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 65. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3_EXTRA_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 66. &quot;#EC NOTEXT
constants C_ORIENTATION_DEFAULT type ZEXCEL_SHEET_ORIENATATION value &apos;default&apos;. &quot;#EC NOTEXT
constants C_ORIENTATION_LANDSCAPE type ZEXCEL_SHEET_ORIENATATION value &apos;landscape&apos;. &quot;#EC NOTEXT
constants C_ORIENTATION_PORTRAIT type ZEXCEL_SHEET_ORIENATATION value &apos;portrait&apos;. &quot;#EC NOTEXT
data ORIENTATION type ZEXCEL_SHEET_ORIENATATION .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_SHEET_SETUP
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_SHEET_SETUP" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_ORIENTATION_DEFAULT" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="67 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;default&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_ORIENTATION_LANDSCAPE" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="68 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;landscape&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_ORIENTATION_PORTRAIT" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="69 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;portrait&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_6_3_4_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="38 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="38" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A2_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="64 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="64" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="8" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="61 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="61" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3_EXTRA_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="66 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="66" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="65 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="65" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="9" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="51 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="51" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_PLUS_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="58 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="58" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_SMALL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="10" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="53 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="53" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A5" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="11" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A5_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="62 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="62" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A5_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="59 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="59" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B4" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="12" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B4_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="33 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="33" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B5" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="13" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B5_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="34 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="34" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B6_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="35 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="35" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="24" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C3_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="29 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="29" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C4_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="30 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="30" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C5_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="28 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="28" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C65_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="32 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="32" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C6_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="31 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="31" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_D" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="25" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_DE_LEG_FANFOLD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="41 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="41" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_DE_STD_FANFOLD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="40 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="40" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_DL_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="27 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="27" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_E" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="26 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="26" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_EXECUTIVE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="7" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_FOLIO" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="14" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_INVITE_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="47 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="47" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_ISO_B4" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="42 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="42" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_ISO_B5_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="63 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="63" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_ITALY_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="36 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="36" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_JIS_B5_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="60 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="60" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_JPN_DBL_POSTCARD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="43 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="43" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LEDGER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="4" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LEGAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="5" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LEGAL_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="49 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="49" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="48 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="48" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_EXTV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="54 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="54" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_PLUS_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="57 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="57" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_SMALL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="52 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="52" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_MONARCH_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="37 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="37" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO10_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="20" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO11_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="21" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO12_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="22" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO14_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="23" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO9_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="19" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NOTE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="18" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_QUARTO" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="15" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_1" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="16" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_2" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="17" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_PAPER_1" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="44 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="44" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_PAPER_2" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="45 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="45" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_PAPER_3" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="46 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="46" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STATEMENT" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="6" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_SUPERA_A4_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="55 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="55" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_SUPERB_A3_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="56 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="56" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_TABLOID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="3" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_TABL_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="50 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="50" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_US_STD_FANFOLD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="39 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="39" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="ORIENTATION" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="70 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
orientation = me-&gt;c_orientation_default.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" UUID="90B1284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE
*&quot;* do not include other source files here!!!
public section.
data FONT type ref to ZCL_EXCEL_STYLE_FONT .
data FILL type ref to ZCL_EXCEL_STYLE_FILL .
data BORDERS type ref to ZCL_EXCEL_STYLE_BORDERS .
data NUMBER_FORMAT type ref to ZCL_EXCEL_STYLE_NUMBER_FORMAT .
methods CONSTRUCTOR .
methods GET_GUID
returning
value(EP_GUID) type ZEXCEL_CELL_STYLE .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE
*&quot;* do not include other source files here!!!
private section.
data ALIGNMENT type ref to ZCL_EXCEL_STYLE_ALIGNMENT .
data PROTECTION type ref to ZCL_EXCEL_STYLE_PROTECTION .
data GUID type ZEXCEL_CELL_STYLE .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE" CMPNAME="ALIGNMENT" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="BORDERS" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDERS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="FILL" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_FILL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="FONT" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_FONT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="GUID" VERSION="1" LANGU="E" DESCRIPT="Style identifier" EXPOSURE="0" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="NUMBER_FORMAT" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="PROTECTION" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT font.
CREATE OBJECT fill.
CREATE OBJECT borders.
CREATE OBJECT alignment.
CREATE OBJECT number_format.
CREATE OBJECT protection.
CALL FUNCTION &apos;GUID_CREATE&apos;
IMPORTING
ev_guid_16 = me-&gt;guid.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="GET_GUID" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="GET_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="Generic Data Element for GUID Fields (X16)" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
<source>METHOD get_guid.
ep_guid = me-&gt;guid.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles collection" UUID="53B0284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLES definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLES
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_STYLE type ref to ZCL_EXCEL_STYLE .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type I
returning
value(EO_STYLE) type ref to ZCL_EXCEL_STYLE .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_STYLE type ref to ZCL_EXCEL_STYLE .
methods SIZE
returning
value(EP_SIZE) type I .
methods REGISTER_NEW_STYLE
importing
!IO_STYLE type ref to ZCL_EXCEL_STYLE
returning
value(EP_STYLE_CODE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLES
*&quot;* do not include other source files here!!!
private section.
data STYLES type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLES" CMPNAME="STYLES" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="ADD" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>METHOD add.
styles-&gt;add( ip_style ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
styles-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT styles.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="I"/>
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET" SCONAME="EO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>METHOD get.
eo_style ?= styles-&gt;if_object_collection~get( ip_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= styles-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = styles-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REGISTER_NEW_STYLE" VERSION="1" LANGU="E" DESCRIPT="Register a new style" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REGISTER_NEW_STYLE" SCONAME="IO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REGISTER_NEW_STYLE" SCONAME="EP_STYLE_CODE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100704" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD register_new_style.
me-&gt;add( io_style ).
ep_style_code = me-&gt;size( ) - 1. &quot;style count starts from 0
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REMOVE" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>METHOD remove.
styles-&gt;remove( ip_style ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = styles-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Styles conditional collection" UUID="57A5354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_STYLES_CONDITIONAL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLES_CONDITIONAL
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_STYLE_CONDITIONAL type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type ZEXCEL_ACTIVE_WORKSHEET
returning
value(EO_STYLE_CONDITIONAL) type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_STYLE_CONDITIONAL type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLES_CONDITIONAL
*&quot;* do not include other source files here!!!
private section.
data STYLES_CONDITIONAL type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLES_CONDITIONAL" CMPNAME="STYLES_CONDITIONAL" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="ADD" SCONAME="IP_STYLE_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD add.
styles_conditional-&gt;add( ip_style_conditional ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
styles_conditional-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT styles_conditional.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET" SCONAME="EO_STYLE_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Font Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD get.
DATA lv_index TYPE i.
lv_index = ip_index.
eo_style_conditional ?= styles_conditional-&gt;if_object_collection~get( lv_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= styles_conditional-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = styles_conditional-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="REMOVE" SCONAME="IP_STYLE_CONDITIONAL" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD remove.
styles_conditional-&gt;remove( ip_style_conditional ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = styles_conditional-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<DOMA DOMNAME="ZEXCEL_FORMAT" DDLANGUAGE="E" DATATYPE="CHAR" LENG="000004" OUTPUTLEN="000004" DECIMALS="000000" VALEXI="X" MASKLEN="0000" DDTEXT="File format" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="155425">
<dd07v DOMNAME="ZEXCEL_FORMAT" VALPOS="0001" DDLANGUAGE="E" DOMVALUE_L="XLSX" DDTEXT="Excel 2007 workbook (.xlsx)"/>
<dd07v DOMNAME="ZEXCEL_FORMAT" VALPOS="0002" DDLANGUAGE="E" DOMVALUE_L="XLS" DDTEXT="Excel 2003 workbook (.xls)"/>
</DOMA>
<DTEL ROLLNAME="ZEXCEL_SHEET_STATE" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Sheet state" REPTEXT="Sheet state" SCRTEXT_S="State" SCRTEXT_M="Sheet state" SCRTEXT_L="Sheet state" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="102247" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SHEET_PAPER_SIZE" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Fill Type" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="104727" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SHEET_ORIENATATION" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="17" SCRLEN3="20" DDTEXT="Sheet orientation" REPTEXT="Sheet orientation" SCRTEXT_S="Orientat." SCRTEXT_M="Sheet orientation" SCRTEXT_L="Sheet orientation" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="105348" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SCALECROP" DDLANGUAGE="E" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="ScaleCrop" REPTEXT="ScaleCrop" SCRTEXT_S="ScaleCrop" SCRTEXT_M="ScaleCrop" SCRTEXT_L="ScaleCrop" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100701" AS4TIME="173224" DTELMASTER="E" DATATYPE="CHAR" LENG="000001" DECIMALS="000000" OUTPUTLEN="000001" VALEXI="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_ROTATION" DDLANGUAGE="E" DOMNAME="DEC_15_3" ROUTPUTLEN="000000" HEADLEN="19" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Rotation" REPTEXT="Rotation" SCRTEXT_S="Rotation" SCRTEXT_M="Rotation" SCRTEXT_L="Rotation" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175104" DTELMASTER="E" DATATYPE="DEC" LENG="000015" DECIMALS="000003" OUTPUTLEN="000019" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_REVISIONSPASSWORD" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="20" SCRLEN3="20" DDTEXT="Revisions password" REPTEXT="Revisions password" SCRTEXT_S="Password" SCRTEXT_M="Revisions password" SCRTEXT_L="Revisions password" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="151410" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_PROTECTION" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Protection" REPTEXT="Protection" SCRTEXT_S="Protection" SCRTEXT_M="Protection" SCRTEXT_L="Protection" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="184716" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_NUMBER_FORMAT" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Number format" REPTEXT="Number format" SCRTEXT_S="Format" SCRTEXT_M="Number format" SCRTEXT_L="Number format" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="183529" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_KEYWORDS" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Keywords" REPTEXT="Keywords" SCRTEXT_S="Keywords" SCRTEXT_M="Keywords" SCRTEXT_L="Keywords" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145741" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_INDENT" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="13" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Indent" REPTEXT="Indent" SCRTEXT_S="Indent" SCRTEXT_M="Indent" SCRTEXT_L="Indent" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="183128" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_GRAPH_TYPE" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Graph type" REPTEXT="Graph type" SCRTEXT_S="Graph type" SCRTEXT_M="Graph type" SCRTEXT_L="Graph type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="170025" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FORMAT" DDLANGUAGE="E" DOMNAME="ZEXCEL_FORMAT" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="File format" REPTEXT="File format" SCRTEXT_S="File type" SCRTEXT_M="File format" SCRTEXT_L="File format" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="155538" DTELMASTER="E" DATATYPE="CHAR" LENG="000004" DECIMALS="000000" OUTPUTLEN="000004" VALEXI="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FONT" DDLANGUAGE="E" DOMNAME="CHAR10" ROUTPUTLEN="000000" HEADLEN="04" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DDTEXT="Font" REPTEXT="Font" SCRTEXT_S="Font" SCRTEXT_M="Font" SCRTEXT_L="Font" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="163757" DTELMASTER="E" DATATYPE="CHAR" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_WORKSHEETS_NAME" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Worksheets name" REPTEXT="Worksheets name" SCRTEXT_S="Name" SCRTEXT_M="Worksheets name" SCRTEXT_L="Worksheets name" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100701" AS4TIME="174843" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_WORKBOOKPASSWORD" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="20" SCRLEN3="20" DDTEXT="Workbook password" REPTEXT="Workbook password" SCRTEXT_S="Password" SCRTEXT_M="Workbook password" SCRTEXT_L="Workbook password" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="151443" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_TITLE" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Title" REPTEXT="Title" SCRTEXT_S="Title" SCRTEXT_M="Title" SCRTEXT_L="Title" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145528" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_TEXT_ROTATION" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="13" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Text Rotation" REPTEXT="Text Rotation" SCRTEXT_S="Rotation" SCRTEXT_M="Text Rotation" SCRTEXT_L="Text Rotation" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="181018" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SUBJECT" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Subject" REPTEXT="Subject" SCRTEXT_S="Subject" SCRTEXT_M="Subject" SCRTEXT_L="Subject" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145646" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_PRIORITY" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="14" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Style Priority" REPTEXT="Style Priority" SCRTEXT_S="Priority" SCRTEXT_M="Style Priority" SCRTEXT_L="Style Priority" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="172619" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_FORMULA" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="13" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Style formula" REPTEXT="Style formula" SCRTEXT_S="Formula" SCRTEXT_M="Style formula" SCRTEXT_L="Style formula" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="172713" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_FONT_SCHEME" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Font scheme" REPTEXT="Font scheme" SCRTEXT_S="Scheme" SCRTEXT_M="Font scheme" SCRTEXT_L="Font scheme" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100704" AS4TIME="222313" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_COLOR_COMPONENT" DDLANGUAGE="E" DOMNAME="CHAR2" ROUTPUTLEN="000000" HEADLEN="15" SCRLEN1="10" SCRLEN2="15" SCRLEN3="15" DDTEXT="Color Component" REPTEXT="Color Component" SCRTEXT_S="Color Comp" SCRTEXT_M="Color Component" SCRTEXT_L="Color Component" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="115840" DTELMASTER="E" DATATYPE="CHAR" LENG="000002" DECIMALS="000000" OUTPUTLEN="000002" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" DDLANGUAGE="E" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="115643" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" DECIMALS="000000" OUTPUTLEN="000008" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SHEET_TITLE" DDLANGUAGE="E" DOMNAME="TEXT16" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Title" REPTEXT="Title" SCRTEXT_S="Title" SCRTEXT_M="Title" SCRTEXT_L="Title" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100707" AS4TIME="171946" DTELMASTER="E" DATATYPE="CHAR" LENG="000016" DECIMALS="000000" OUTPUTLEN="000016" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FILL_TYPE" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Fill Type" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175141" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_ROW" DDLANGUAGE="E" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="08" SCRLEN1="08" SCRLEN2="08" SCRLEN3="08" DDTEXT="Cell Row" REPTEXT="Cell Row" SCRTEXT_S="Row" SCRTEXT_M="Cell Row" SCRTEXT_L="Cell Row" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="112227" DTELMASTER="E" DATATYPE="INT4" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" SIGNFLAG="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_FORMULA" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Cell Formula" REPTEXT="Cell Formula" SCRTEXT_S="Formula" SCRTEXT_M="Cell Formula" SCRTEXT_L="Cell Formula" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="100133" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_COORDS" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="25" SCRLEN1="10" SCRLEN2="16" SCRLEN3="25" DDTEXT="Cell coordinates as Excel" REPTEXT="Cell coordinates as Excel" SCRTEXT_S="Cell coord" SCRTEXT_M="Cell coordinates" SCRTEXT_L="Cell coordinates as Excel" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100704" AS4TIME="162915" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_COLUMN_ALPHA" DDLANGUAGE="E" DOMNAME="CHAR2" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="06" SCRLEN2="11" SCRLEN3="11" DDTEXT="Cell Column" REPTEXT="Cell Column" SCRTEXT_S="Column" SCRTEXT_M="Cell Column" SCRTEXT_L="Cell Column" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="113748" DTELMASTER="E" DATATYPE="CHAR" LENG="000002" DECIMALS="000000" OUTPUTLEN="000002" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_COLUMN" DDLANGUAGE="E" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="06" SCRLEN2="11" SCRLEN3="11" DDTEXT="Cell Column" REPTEXT="Cell Column" SCRTEXT_S="Column" SCRTEXT_M="Cell Column" SCRTEXT_L="Cell Column" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="112051" DTELMASTER="E" DATATYPE="INT4" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" SIGNFLAG="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CATEGORY" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Category" REPTEXT="Category" SCRTEXT_S="Category" SCRTEXT_M="Category" SCRTEXT_L="Category" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145805" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_BREAK" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="15" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Worksheet Break" REPTEXT="Worksheet Break" SCRTEXT_S="Break" SCRTEXT_M="Worksheet Break" SCRTEXT_L="Worksheet Break" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="102144" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_BORDER" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="180210" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_APPVERSION" DDLANGUAGE="E" DOMNAME="CHAR07" ROUTPUTLEN="000000" HEADLEN="19" SCRLEN1="10" SCRLEN2="19" SCRLEN3="20" DDTEXT="Application version" REPTEXT="Application version" SCRTEXT_S="AppVersion" SCRTEXT_M="Application version" SCRTEXT_L="Application version" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="100702" DTELMASTER="E" DATATYPE="CHAR" LENG="000007" DECIMALS="000000" OUTPUTLEN="000007" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_APPLICATION" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Application" REPTEXT="Application" SCRTEXT_S="Applic." SCRTEXT_M="Application" SCRTEXT_L="Application" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100701" AS4TIME="172918" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_ALIGNMENT" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Alignment" REPTEXT="Alignment" SCRTEXT_S="Alignment" SCRTEXT_M="Alignment" SCRTEXT_L="Alignment" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="180748" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_ACTIVE_WORKSHEET" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="16" SCRLEN1="06" SCRLEN2="16" SCRLEN3="16" DDTEXT="Active Worksheet" REPTEXT="Active Worksheet" SCRTEXT_S="Active" SCRTEXT_M="Active Worksheet" SCRTEXT_L="Active Worksheet" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="152531" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_STYLE" DDLANGUAGE="E" DOMNAME="GUID16" ROUTPUTLEN="000000" HEADLEN="16" SCRLEN1="10" SCRLEN2="16" SCRLEN3="20" DDTEXT="Style identifier" REPTEXT="Style identifier" SCRTEXT_S="Style no" SCRTEXT_M="Style identifier" SCRTEXT_L="Style identifier" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100704" AS4TIME="221000" DTELMASTER="E" DATATYPE="RAW" LENG="000016" DECIMALS="000000" OUTPUTLEN="000032" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FILL" DDLANGUAGE="E" DOMNAME="CHAR10" ROUTPUTLEN="000000" HEADLEN="04" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DDTEXT="Font" REPTEXT="Font" SCRTEXT_S="Font" SCRTEXT_M="Font" SCRTEXT_L="Font" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175104" DTELMASTER="E" DATATYPE="CHAR" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_DOCSECURITY" DDLANGUAGE="E" DOMNAME="NUMC1" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="DocSecurity" REPTEXT="DocSecurity" SCRTEXT_S="DocSec." SCRTEXT_M="DocSecurity" SCRTEXT_L="DocSecurity" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="102503" DTELMASTER="E" DATATYPE="NUMC" LENG="000001" DECIMALS="000000" OUTPUTLEN="000001" VALEXI="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_DIAGONAL" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Diagonal" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175618" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_DESCRIPTION" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Description" REPTEXT="Description" SCRTEXT_S="Descr." SCRTEXT_M="Description" SCRTEXT_L="Description" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145725" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CREATOR" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="07" SCRLEN1="07" SCRLEN2="07" SCRLEN3="07" DDTEXT="Creator" REPTEXT="Creator" SCRTEXT_S="Creator" SCRTEXT_M="Creator" SCRTEXT_L="Creator" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145200" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITION_RULE_ICONSET" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="22" SCRLEN1="10" SCRLEN2="18" SCRLEN3="22" DDTEXT="Condition rule iconset" REPTEXT="Condition rule iconset" SCRTEXT_S="Cond. rule" SCRTEXT_M="Cond. rule iconset" SCRTEXT_L="Condition rule iconset" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="172922" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITION_RULE" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Condition rule" REPTEXT="Condition rule" SCRTEXT_S="Cond. rule" SCRTEXT_M="Condition rule" SCRTEXT_L="Condition rule" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="170658" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITION_OPERATOR" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="18" SCRLEN3="20" DDTEXT="Condition operator" REPTEXT="Condition operator" SCRTEXT_S="Cond. oper" SCRTEXT_M="Condition operator" SCRTEXT_L="Condition operator" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="171214" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITIONAL" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Conditional" REPTEXT="Conditional" SCRTEXT_S="Condit." SCRTEXT_M="Conditional" SCRTEXT_L="Conditional" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="184130" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_COMPANY" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Company" REPTEXT="Company" SCRTEXT_S="Company" SCRTEXT_M="Company" SCRTEXT_L="Company" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145840" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_COLOR" DDLANGUAGE="E" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DDTEXT="Color" REPTEXT="Color" SCRTEXT_S="Color" SCRTEXT_M="Color" SCRTEXT_L="Color" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="180424" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" DECIMALS="000000" OUTPUTLEN="000008" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_VALUE" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Cell Value" REPTEXT="Cell Value" SCRTEXT_S="Value" SCRTEXT_M="Cell Value" SCRTEXT_L="Cell Value" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="163301" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<TABL TABNAME="ZEXCEL_S_STYLE_FONT" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell Font" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120344" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="BOLD" DDLANGUAGE="E" POSITION="0001" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="ITALIC" DDLANGUAGE="E" POSITION="0002" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="UNDERLINE" DDLANGUAGE="E" POSITION="0003" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="UNDERLINE_MODE" DDLANGUAGE="E" POSITION="0004" ROLLNAME="CHAR20" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Char 20" REPTEXT="Char20" SCRTEXT_S="Char20" SCRTEXT_M="Char20" SCRTEXT_L="Char20" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="STRIKETHROUGH" DDLANGUAGE="E" POSITION="0005" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="SIZE" DDLANGUAGE="E" POSITION="0006" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="COLOR" DDLANGUAGE="E" POSITION="0007" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="NAME" DDLANGUAGE="E" POSITION="0008" ROLLNAME="CHAR255" ADMINFIELD="0" INTTYPE="C" INTLEN="000510" DOMNAME="CHAR255" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="07" SCRLEN2="00" SCRLEN3="00" DATATYPE="CHAR" LENG="000255" OUTPUTLEN="000255" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Char255" SCRTEXT_S="Char255" DOMNAME3L="CHAR255" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="FAMILY" DDLANGUAGE="E" POSITION="0009" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="SCHEME" DDLANGUAGE="E" POSITION="0010" ROLLNAME="ZEXCEL_STYLE_FONT_SCHEME" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Font scheme" REPTEXT="Font scheme" SCRTEXT_S="Scheme" SCRTEXT_M="Font scheme" SCRTEXT_L="Font scheme" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_STYLE_FILL" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell Fill" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120552" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="FILLTYPE" DDLANGUAGE="E" POSITION="0001" ROLLNAME="ZEXCEL_FILL_TYPE" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Fill Type" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="ROTATION" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_ROTATION" ADMINFIELD="0" INTTYPE="P" INTLEN="000008" DOMNAME="DEC_15_3" ROUTPUTLEN="000000" HEADLEN="19" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="DEC" LENG="000015" OUTPUTLEN="000019" DECIMALS="000003" MASK=" DEC E" MASKLEN="0000" DDTEXT="Rotation" REPTEXT="Rotation" SCRTEXT_S="Rotation" SCRTEXT_M="Rotation" SCRTEXT_L="Rotation" DOMNAME3L="DEC_15_3" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="FGCOLOR" DDLANGUAGE="E" POSITION="0003" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="BGCOLOR" DDLANGUAGE="E" POSITION="0004" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_STYLE_BORDER" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Border Style" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100706" AS4TIME="120557" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="LEFT_COLOR" DDLANGUAGE="E" POSITION="0001" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="LEFT_STYLE" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="RIGHT_COLOR" DDLANGUAGE="E" POSITION="0003" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="RIGHT_STYLE" DDLANGUAGE="E" POSITION="0004" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="TOP_COLOR" DDLANGUAGE="E" POSITION="0005" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="TOP_STYLE" DDLANGUAGE="E" POSITION="0006" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="BOTTOM_COLOR" DDLANGUAGE="E" POSITION="0007" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="BOTTOM_STYLE" DDLANGUAGE="E" POSITION="0008" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="DIAGONAL_COLOR" DDLANGUAGE="E" POSITION="0009" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="DIAGONAL_STYLE" DDLANGUAGE="E" POSITION="0010" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_STYLES_MAPPING" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Style mapping" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100709" AS4TIME="174300" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLES_MAPPING" FIELDNAME="GUID" DDLANGUAGE="E" POSITION="0001" ROLLNAME="GUID_16" ADMINFIELD="0" INTTYPE="X" INTLEN="000016" DOMNAME="SYSUUID" ROUTPUTLEN="000000" HEADLEN="07" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="RAW" LENG="000016" OUTPUTLEN="000032" DECIMALS="000000" MASK=" RAW E" MASKLEN="0000" DDTEXT="GUID in &apos;RAW&apos; format" REPTEXT="GUID 16" SCRTEXT_S="GUID 16" SCRTEXT_M="GUID 16" SCRTEXT_L="GUID 16" DOMNAME3L="SYSUUID" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLES_MAPPING" FIELDNAME="STYLE" DDLANGUAGE="E" POSITION="0002" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLES_MAPPING" FIELDNAME="CELL_FORMAT" DDLANGUAGE="E" POSITION="0003" ROLLNAME="CHAR1" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="CHAR1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="00" SCRLEN2="00" SCRLEN3="00" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Single-Character Indicator" DOMNAME3L="CHAR1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_SHARED_STRING" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Shared strings" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="163328" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_SHARED_STRING" FIELDNAME="STRING_NO" DDLANGUAGE="E" POSITION="0001" ROLLNAME="INT4" ADMINFIELD="0" INTTYPE="X" INTLEN="000004" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="INT4" LENG="000010" OUTPUTLEN="000010" DECIMALS="000000" SIGNFLAG="X" MASK=" INT4E" MASKLEN="0000" DDTEXT="Natural Number" SCRTEXT_S="Number" SCRTEXT_M="Number" SCRTEXT_L="Natural Number" DOMNAME3L="INT4" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_SHARED_STRING" FIELDNAME="STRING_VALUE" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_CELL_VALUE" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell Value" REPTEXT="Cell Value" SCRTEXT_S="Value" SCRTEXT_M="Cell Value" SCRTEXT_L="Cell Value" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_CELL_DATA" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell data" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="094200" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_ROW" DDLANGUAGE="E" POSITION="0001" ROLLNAME="ZEXCEL_CELL_ROW" ADMINFIELD="0" INTTYPE="X" INTLEN="000004" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="08" SCRLEN1="08" SCRLEN2="08" SCRLEN3="08" DTELMASTER="E" DATATYPE="INT4" LENG="000010" OUTPUTLEN="000010" DECIMALS="000000" SIGNFLAG="X" MASK=" INT4E" MASKLEN="0000" DDTEXT="Cell Row" REPTEXT="Cell Row" SCRTEXT_S="Row" SCRTEXT_M="Cell Row" SCRTEXT_L="Cell Row" DOMNAME3L="INT4" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_COLUMN" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_CELL_COLUMN" ADMINFIELD="0" INTTYPE="X" INTLEN="000004" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="06" SCRLEN2="11" SCRLEN3="11" DTELMASTER="E" DATATYPE="INT4" LENG="000010" OUTPUTLEN="000010" DECIMALS="000000" SIGNFLAG="X" MASK=" INT4E" MASKLEN="0000" DDTEXT="Cell Column" REPTEXT="Cell Column" SCRTEXT_S="Column" SCRTEXT_M="Cell Column" SCRTEXT_L="Cell Column" DOMNAME3L="INT4" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_VALUE" DDLANGUAGE="E" POSITION="0003" ROLLNAME="ZEXCEL_CELL_VALUE" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell Value" REPTEXT="Cell Value" SCRTEXT_S="Value" SCRTEXT_M="Cell Value" SCRTEXT_L="Cell Value" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_FORMULA" DDLANGUAGE="E" POSITION="0004" ROLLNAME="ZEXCEL_CELL_FORMULA" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell Formula" REPTEXT="Cell Formula" SCRTEXT_S="Formula" SCRTEXT_M="Cell Formula" SCRTEXT_L="Cell Formula" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_COORDS" DDLANGUAGE="E" POSITION="0005" ROLLNAME="ZEXCEL_CELL_COORDS" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="25" SCRLEN1="10" SCRLEN2="16" SCRLEN3="25" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell coordinates as Excel" REPTEXT="Cell coordinates as Excel" SCRTEXT_S="Cell coord" SCRTEXT_M="Cell coordinates" SCRTEXT_L="Cell coordinates as Excel" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_STYLE" DDLANGUAGE="E" POSITION="0006" ROLLNAME="ZEXCEL_CELL_STYLE" ADMINFIELD="0" INTTYPE="X" INTLEN="000016" DOMNAME="GUID16" ROUTPUTLEN="000000" HEADLEN="16" SCRLEN1="10" SCRLEN2="16" SCRLEN3="20" DTELMASTER="E" DATATYPE="RAW" LENG="000016" OUTPUTLEN="000032" DECIMALS="000000" MASK=" RAW E" MASKLEN="0000" DDTEXT="Style identifier" REPTEXT="Style identifier" SCRTEXT_S="Style no" SCRTEXT_M="Style identifier" SCRTEXT_L="Style identifier" DOMNAME3L="GUID16" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_CELLXFS" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell style" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="234104" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="NUMFMTID" DDLANGUAGE="E" POSITION="0001" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="FONTID" DDLANGUAGE="E" POSITION="0002" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="FILLID" DDLANGUAGE="E" POSITION="0003" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="BORDERID" DDLANGUAGE="E" POSITION="0004" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="XFID" DDLANGUAGE="E" POSITION="0005" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYNUMBERFORMAT" DDLANGUAGE="E" POSITION="0006" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYFONT" DDLANGUAGE="E" POSITION="0007" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYFILL" DDLANGUAGE="E" POSITION="0008" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYBORDER" DDLANGUAGE="E" POSITION="0009" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TTYP TYPENAME="ZEXCEL_T_STYLE_FONT" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLE_FONT" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0010" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120344" DDTEXT="Table type for styles ZEXCEL_S_STYLE_FONT" TYPELEN="000618" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="BOLD"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="ITALIC"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="UNDERLINE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="UNDERLINE_MODE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0005" ROWTYPEPOS="0005" KEYFIELD="STRIKETHROUGH"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0006" ROWTYPEPOS="0006" KEYFIELD="SIZE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0007" ROWTYPEPOS="0007" KEYFIELD="COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0008" ROWTYPEPOS="0008" KEYFIELD="NAME"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0009" ROWTYPEPOS="0009" KEYFIELD="FAMILY"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0010" ROWTYPEPOS="0010" KEYFIELD="SCHEME"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_STYLE_FILL" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLE_FILL" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0004" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120624" DDTEXT="Cell Fills" TYPELEN="000080" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="FILLTYPE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="ROTATION"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="FGCOLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="BGCOLOR"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_STYLE_BORDER" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLE_BORDER" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0010" AS4USER="FEMIA" AS4DATE="20100706" AS4TIME="120613" DDTEXT="Border Style" TYPELEN="000280" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="LEFT_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="LEFT_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="RIGHT_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="RIGHT_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0005" ROWTYPEPOS="0005" KEYFIELD="TOP_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0006" ROWTYPEPOS="0006" KEYFIELD="TOP_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0007" ROWTYPEPOS="0007" KEYFIELD="BOTTOM_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0008" ROWTYPEPOS="0008" KEYFIELD="BOTTOM_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0009" ROWTYPEPOS="0009" KEYFIELD="DIAGONAL_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0010" ROWTYPEPOS="0010" KEYFIELD="DIAGONAL_STYLE"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_STYLES_MAPPING" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLES_MAPPING" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="D" KEYKIND="N" KEYFDCOUNT="0000" AS4USER="FEMIA" AS4DATE="20100709" AS4TIME="174301" DDTEXT="Styles mapping" TYPELEN="000020" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000"/>
<TTYP TYPENAME="ZEXCEL_T_SHARED_STRING" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_SHARED_STRING" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="D" KEYKIND="N" KEYFDCOUNT="0000" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="163328" DDTEXT="Shared Strings" TYPELEN="000012" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000"/>
<TTYP TYPENAME="ZEXCEL_T_CELL_DATA_UNSORTED" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_CELL_DATA" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="D" KEYKIND="N" KEYFDCOUNT="0000" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="094202" DDTEXT="Excel worksheet content" TYPELEN="000048" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000"/>
<TTYP TYPENAME="ZEXCEL_T_CELL_DATA" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_CELL_DATA" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0002" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="094202" DDTEXT="Excel worksheet content" TYPELEN="000048" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_CELL_DATA" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="CELL_ROW"/>
<dd42v TYPENAME="ZEXCEL_T_CELL_DATA" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="CELL_COLUMN"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_CELLXFS" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_CELLXFS" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0009" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="235645" DDTEXT="Cell styles" TYPELEN="000009" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="NUMFMTID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="FONTID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="FILLID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="BORDERID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0005" ROWTYPEPOS="0005" KEYFIELD="XFID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0006" ROWTYPEPOS="0006" KEYFIELD="APPLYNUMBERFORMAT"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0007" ROWTYPEPOS="0007" KEYFIELD="APPLYFONT"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0008" ROWTYPEPOS="0008" KEYFIELD="APPLYFILL"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0009" ROWTYPEPOS="0009" KEYFIELD="APPLYBORDER"/>
</TTYP>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="E8BF274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_ALIGNMENT definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_ALIGNMENT
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data HORIZONTAL type ZEXCEL_ALIGNMENT .
data VERTICAL type ZEXCEL_ALIGNMENT .
data TEXTROTATION type ZEXCEL_TEXT_ROTATION value 0. &quot;#EC NOTEXT .
data WRAPTEXT type FLAG .
data SHRINKTOFIT type FLAG .
data INDENT type ZEXCEL_INDENT value 0. &quot;#EC NOTEXT .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_ALIGNMENT
*&quot;* do not include other source files here!!!
private section.
constants C_HORIZONTAL_GENERAL type ZEXCEL_ALIGNMENT value &apos;general&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_LEFT type ZEXCEL_ALIGNMENT value &apos;left&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_RIGHT type ZEXCEL_ALIGNMENT value &apos;right&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_CENTER type ZEXCEL_ALIGNMENT value &apos;center&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_CENTER_CONTINUOUS type ZEXCEL_ALIGNMENT value &apos;centerContinuous&apos;. &quot;#EC NOTEXT
constants C_HORIZONTAL_JUSTIFY type ZEXCEL_ALIGNMENT value &apos;justify&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_BOTTOM type ZEXCEL_ALIGNMENT value &apos;bottom&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_TOP type ZEXCEL_ALIGNMENT value &apos;top&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_CENTER type ZEXCEL_ALIGNMENT value &apos;center&apos;. &quot;#EC NOTEXT
constants C_VERTICAL_JUSTIFY type ZEXCEL_ALIGNMENT value &apos;justify&apos;. &quot;#EC NOTEXT</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_CENTER" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;center&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_CENTER_CONTINUOUS" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;centerContinuous&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_GENERAL" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;general&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_JUSTIFY" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;justify&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_LEFT" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;left&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_HORIZONTAL_RIGHT" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;right&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_BOTTOM" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;bottom&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_CENTER" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;center&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_JUSTIFY" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;justify&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="C_VERTICAL_TOP" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="0" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;top&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="HORIZONTAL" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="INDENT" VERSION="1" LANGU="E" DESCRIPT="Indent" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_INDENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="SHRINKTOFIT" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_STYLE_ALIGNMENT" CMPNAME="TEXTROTATION" VERSION="1" LANGU="E" DESCRIPT="Text Rotation" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_TEXT_ROTATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="VERTICAL" VERSION="1" LANGU="E" DESCRIPT="Alignment" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="WRAPTEXT" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="FLAG" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_ALIGNMENT" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
horizontal = me-&gt;c_horizontal_general.
vertical = me-&gt;c_vertical_bottom.
wrapText = abap_false.
shrinkToFit = abap_false.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_BORDER" VERSION="1" LANGU="E" DESCRIPT="Border" UUID="85E3284C6D8F5D2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_STYLE_BORDER definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_BORDER
*&quot;* do not include other source files here!!!
public section.
data BORDER_STYLE type ZEXCEL_BORDER .
data BORDER_COLOR type ZEXCEL_STYLE_COLOR_ARGB .
class-data C_BORDER_NONE type ZEXCEL_BORDER value &apos;none&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DASHDOT type ZEXCEL_BORDER value &apos;dashDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DASHDOTDOT type ZEXCEL_BORDER value &apos;dashDotDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DASHED type ZEXCEL_BORDER value &apos;dashed&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DOTTED type ZEXCEL_BORDER value &apos;dotted&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_DOUBLE type ZEXCEL_BORDER value &apos;double&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_HAIR type ZEXCEL_BORDER value &apos;hair&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUM type ZEXCEL_BORDER value &apos;medium&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUMDASHDOT type ZEXCEL_BORDER value &apos;mediumDashDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUMDASHDOTDOT type ZEXCEL_BORDER value &apos;mediumDashDotDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_MEDIUMDASHED type ZEXCEL_BORDER value &apos;mediumDashed&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_SLANTDASHDOT type ZEXCEL_BORDER value &apos;slantDashDot&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_THICK type ZEXCEL_BORDER value &apos;thick&apos;. &quot;#EC NOTEXT .
class-data C_BORDER_THIN type ZEXCEL_BORDER value &apos;thin&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_BORDER
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_BORDER" CMPNAME="BORDER_COLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="BORDER_STYLE" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DASHDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dashDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DASHDOTDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dashDotDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DASHED" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dashed&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DOTTED" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;dotted&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_DOUBLE" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;double&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_HAIR" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;hair&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUM" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;medium&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUMDASHDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;mediumDashDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUMDASHDOTDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;mediumDashDotDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_MEDIUMDASHED" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;mediumDashed&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_NONE" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_SLANTDASHDOT" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;slantDashDot&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_THICK" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;thick&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="C_BORDER_THIN" VERSION="1" LANGU="E" DESCRIPT="Border style" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="1" ATTVALUE="&apos;thin&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_BORDER" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
border_style = zcl_excel_style_border=&gt;c_border_none.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_BORDERS" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="FFBF274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_BORDERS definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_BORDERS
*&quot;* do not include other source files here!!!
public section.
data LEFT type ref to ZCL_EXCEL_STYLE_BORDER .
data RIGHT type ref to ZCL_EXCEL_STYLE_BORDER .
data TOP type ref to ZCL_EXCEL_STYLE_BORDER .
data DOWN type ref to ZCL_EXCEL_STYLE_BORDER .
data DIAGONAL type ref to ZCL_EXCEL_STYLE_BORDER .
data ALLBORDERS type ref to ZCL_EXCEL_STYLE_BORDER .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(ES_FILL) type ZEXCEL_S_STYLE_BORDER .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_BORDERS
*&quot;* do not include other source files here!!!
private section.
constants C_DIAGONAL_NONE type ZEXCEL_DIAGONAL value 0. &quot;#EC NOTEXT
constants C_DIAGONAL_UP type ZEXCEL_DIAGONAL value 1. &quot;#EC NOTEXT
constants C_DIAGONAL_DOWN type ZEXCEL_DIAGONAL value 2. &quot;#EC NOTEXT
constants C_DIAGONAL_BOTH type ZEXCEL_DIAGONAL value 3. &quot;#EC NOTEXT</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_BORDERS" CMPNAME="ALLBORDERS" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_BOTH" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="3" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_DOWN" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_NONE" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="C_DIAGONAL_UP" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_DIAGONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="DIAGONAL" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="DOWN" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="LEFT" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="RIGHT" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="TOP" VERSION="1" LANGU="E" DESCRIPT="Diagonal" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDER" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" DESCRIPT="Get structure" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_BORDERS" CMPNAME="GET_STRUCTURE" SCONAME="ES_FILL" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLE_BORDER"/>
<source>METHOD get_structure.
* Check if all borders is set otherwise check single border
IF me-&gt;allborders IS BOUND.
es_fill-left_color = me-&gt;allborders-&gt;border_color.
es_fill-left_style = me-&gt;allborders-&gt;border_style.
es_fill-right_color = me-&gt;allborders-&gt;border_color.
es_fill-right_style = me-&gt;allborders-&gt;border_style.
es_fill-top_color = me-&gt;allborders-&gt;border_color.
es_fill-top_style = me-&gt;allborders-&gt;border_style.
es_fill-bottom_color = me-&gt;allborders-&gt;border_color.
es_fill-bottom_style = me-&gt;allborders-&gt;border_style.
ELSE.
IF me-&gt;left IS BOUND.
es_fill-left_color = me-&gt;left-&gt;border_color.
es_fill-left_style = me-&gt;left-&gt;border_style.
ENDIF.
IF me-&gt;right IS BOUND.
es_fill-right_color = me-&gt;right-&gt;border_color.
es_fill-right_style = me-&gt;right-&gt;border_style.
ENDIF.
IF me-&gt;top IS BOUND.
es_fill-top_color = me-&gt;top-&gt;border_color.
es_fill-top_style = me-&gt;top-&gt;border_style.
ENDIF.
IF me-&gt;down IS BOUND.
es_fill-bottom_color = me-&gt;down-&gt;border_color.
es_fill-bottom_style = me-&gt;down-&gt;border_style.
ENDIF.
ENDIF.
* Check if diagonal is set
IF me-&gt;diagonal IS BOUND.
es_fill-diagonal_color = me-&gt;diagonal-&gt;border_color.
es_fill-diagonal_style = me-&gt;diagonal-&gt;border_style.
ENDIF.
ENDMETHOD. &quot;get_structure</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_COLOR" VERSION="1" LANGU="E" DESCRIPT="Excel Style Color" UUID="AE8C304C8769E92CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_STYLE_COLOR definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_COLOR
*&quot;* do not include other source files here!!!
public section.
class-data C_BLACK type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF000000&apos;. &quot;#EC NOTEXT .
class-data C_BLUE type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF0000FF&apos;. &quot;#EC NOTEXT .
class-data C_DARKBLUE type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF000080&apos;. &quot;#EC NOTEXT .
class-data C_DARKGREEN type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF008000&apos;. &quot;#EC NOTEXT .
class-data C_DARKRED type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF800000&apos;. &quot;#EC NOTEXT .
class-data C_DARKYELLOW type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF808000&apos;. &quot;#EC NOTEXT .
class-data C_GRAY type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFCCCCCC&apos;. &quot;#EC NOTEXT .
class-data C_GREEN type ZEXCEL_STYLE_COLOR_ARGB value &apos;FF00FF00&apos;. &quot;#EC NOTEXT .
class-data C_RED type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFFF0000&apos;. &quot;#EC NOTEXT .
class-data C_WHITE type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFFFFFFF&apos;. &quot;#EC NOTEXT .
class-data C_YELLOW type ZEXCEL_STYLE_COLOR_ARGB value &apos;FFFFFF00&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .
class-methods CREATE_NEW_ARGB
importing
!IP_RED type ZEXCEL_STYLE_COLOR_COMPONENT
!IP_GREEN type ZEXCEL_STYLE_COLOR_COMPONENT
!IP_BLU type ZEXCEL_STYLE_COLOR_COMPONENT
returning
value(EP_COLOR_ARGB) type ZEXCEL_STYLE_COLOR_ARGB .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_STYLE_COLOR
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_COLOR
*&quot;* do not include other source files here!!!
private section.
class-data C_ALPHA type CHAR2 value &apos;FF&apos;. &quot;#EC NOTEXT .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_COLOR" CMPNAME="C_ALPHA" VERSION="1" LANGU="E" DESCRIPT="Color Alpha" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_BLACK" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF000000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_BLUE" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF0000FF&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKBLUE" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF000080&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKGREEN" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF008000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKRED" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF800000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_DARKYELLOW" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF808000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_GRAY" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFCCCCCC&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_GREEN" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FF00FF00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_RED" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFFF0000&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_WHITE" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFFFFFFF&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="C_YELLOW" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100709" ATTDECLTYP="1" ATTVALUE="&apos;FFFFFF00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" VERSION="1" LANGU="E" DESCRIPT="Create a custom ARGB color from RGB" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100705" MTDTYPE="0" MTDDECLTYP="1" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="IP_RED" VERSION="1" LANGU="E" DESCRIPT="Color Component" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_COMPONENT"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="IP_GREEN" VERSION="1" LANGU="E" DESCRIPT="Color Component" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_COMPONENT"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="IP_BLU" VERSION="1" LANGU="E" DESCRIPT="Color Component" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_COMPONENT"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_COLOR" CMPNAME="CREATE_NEW_ARGB" SCONAME="EP_COLOR_ARGB" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100705" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB"/>
<source>METHOD create_new_argb.
CONCATENATE zcl_excel_style_color=&gt;c_alpha ip_red ip_green ip_blu INTO ep_color_argb.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="25C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_CONDITIONAL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_CONDITIONAL
*&quot;* do not include other source files here!!!
public section.
class-data C_ICONSET_3ARROWS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Arrows&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3ARROWSGRAY type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3ArrowsGray&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3FLAGS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Flags&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3SIGNS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Signs&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3SYMBOLS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Symbols&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3SYMBOLS2 type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3Symbols2&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3TRAFFICLIGHTS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_3TRAFFICLIGHTS2 type ZEXCEL_CONDITION_RULE_ICONSET value &apos;3TrafficLights2&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4ARROWS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4Arrows&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4ARROWSGRAY type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4ArrowsGray&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4RATING type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4Rating&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4REDTOBLACK type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4RedToBlack&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_4TRAFFICLIGHTS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;4TrafficLights&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5ARROWS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5Arrows&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5ARROWSGRAY type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5ArrowsGray&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5QUARTERS type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5Quarters&apos;. &quot;#EC NOTEXT .
class-data C_ICONSET_5RATING type ZEXCEL_CONDITION_RULE_ICONSET value &apos;5Rating&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_BEGINSWITH type ZEXCEL_CONDITION_OPERATOR value &apos;beginsWith&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_BETWEEN type ZEXCEL_CONDITION_OPERATOR value &apos;between&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_CONTAINSTEXT type ZEXCEL_CONDITION_OPERATOR value &apos;containsText&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_ENDSWITH type ZEXCEL_CONDITION_OPERATOR value &apos;endsWith&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_EQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;equal&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_GREATERTHAN type ZEXCEL_CONDITION_OPERATOR value &apos;greaterThan&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_GREATERTHANOREQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;greaterThanOrEqual&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_LESSTHAN type ZEXCEL_CONDITION_OPERATOR value &apos;lessThan&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_LESSTHANOREQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;lessThanOrEqual&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_NONE type ZEXCEL_CONDITION_OPERATOR value &apos;&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_NOTCONTAINS type ZEXCEL_CONDITION_OPERATOR value &apos;notContains&apos;. &quot;#EC NOTEXT .
class-data C_OPERATOR_NOTEQUAL type ZEXCEL_CONDITION_OPERATOR value &apos;notEqual&apos;. &quot;#EC NOTEXT .
class-data C_RULE_CELLIS type ZEXCEL_CONDITION_RULE value &apos;cellIs&apos;. &quot;#EC NOTEXT .
class-data C_RULE_CONTAINSTEXT type ZEXCEL_CONDITION_RULE value &apos;containsText&apos;. &quot;#EC NOTEXT .
class-data C_RULE_EXPRESSION type ZEXCEL_CONDITION_RULE value &apos;expression&apos;. &quot;#EC NOTEXT .
class-data C_RULE_ICONSET type ZEXCEL_CONDITION_RULE value &apos;iconSet&apos;. &quot;#EC NOTEXT .
class-data C_RULE_NONE type ZEXCEL_CONDITION_RULE value &apos;none&apos;. &quot;#EC NOTEXT .
data FORMULA type ZEXCEL_STYLE_FORMULA .
data ICONSET type ZEXCEL_CONDITION_RULE_ICONSET .
data OPERATOR type ZEXCEL_CONDITION_OPERATOR .
data PRIORITY type ZEXCEL_STYLE_PRIORITY value 1. &quot;#EC NOTEXT .
data RULE type ZEXCEL_CONDITION_RULE .
methods CONSTRUCTOR .
methods GET_DIMENSION_RANGE
returning
value(EP_DIMENSION_RANGE) type STRING .
methods SET_RANGE
importing
!IP_START_ROW type ZEXCEL_CELL_ROW
!IP_START_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
!IP_STOP_ROW type ZEXCEL_CELL_ROW
!IP_STOP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_CONDITIONAL
*&quot;* do not include other source files here!!!
private section.
data START_CELL type ZEXCEL_S_CELL_DATA .
data STOP_CELL type ZEXCEL_S_CELL_DATA .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3ARROWS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Arrows&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3ARROWSGRAY" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3ArrowsGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3FLAGS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Flags&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3SIGNS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Signs&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3SYMBOLS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Symbols&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3SYMBOLS2" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3Symbols2&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3TRAFFICLIGHTS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_3TRAFFICLIGHTS2" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;3TrafficLights2&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4ARROWS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4Arrows&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4ARROWSGRAY" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4ArrowsGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4RATING" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4Rating&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4REDTOBLACK" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4RedToBlack&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_4TRAFFICLIGHTS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;4TrafficLights&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5ARROWS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5Arrows&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5ARROWSGRAY" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5ArrowsGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5QUARTERS" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5Quarters&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_ICONSET_5RATING" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;5Rating&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_BEGINSWITH" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;beginsWith&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_BETWEEN" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;between&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_CONTAINSTEXT" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;containsText&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_ENDSWITH" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;endsWith&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_EQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;equal&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_GREATERTHAN" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;greaterThan&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_GREATERTHANOREQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;greaterThanOrEqual&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_LESSTHAN" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;lessThan&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_LESSTHANOREQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="26 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;lessThanOrEqual&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_NONE" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="27 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_NOTCONTAINS" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="28 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;notContains&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_OPERATOR_NOTEQUAL" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="29 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;notEqual&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_CELLIS" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="30 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;cellIs&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_CONTAINSTEXT" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="31 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;containsText&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_EXPRESSION" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="32 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;expression&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_ICONSET" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="33 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;iconSet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="C_RULE_NONE" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="34 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="FORMULA" VERSION="1" LANGU="E" DESCRIPT="Style formula" EXPOSURE="2" STATE="1" EDITORDER="35 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FORMULA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="ICONSET" VERSION="1" LANGU="E" DESCRIPT="Condition rule iconset" EXPOSURE="2" STATE="1" EDITORDER="36 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE_ICONSET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="OPERATOR" VERSION="1" LANGU="E" DESCRIPT="Condition operator" EXPOSURE="2" STATE="1" EDITORDER="37 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_OPERATOR" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="PRIORITY" VERSION="1" LANGU="E" DESCRIPT="Style Priority" EXPOSURE="2" STATE="1" EDITORDER="38 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_PRIORITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="RULE" VERSION="1" LANGU="E" DESCRIPT="Condition rule" EXPOSURE="2" STATE="1" EDITORDER="39 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CONDITION_RULE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="START_CELL" VERSION="1" LANGU="E" DESCRIPT="Cell data" EXPOSURE="0" STATE="1" EDITORDER="40 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="STOP_CELL" VERSION="1" LANGU="E" DESCRIPT="Cell data" EXPOSURE="0" STATE="1" EDITORDER="41 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
rule = me-&gt;c_rule_none.
operator = me-&gt;c_operator_none.
* inizialize dimension range
stop_cell-cell_row = 1.
stop_cell-cell_column = 1.
start_cell-cell_row = 1.
start_cell-cell_column = 1.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="GET_DIMENSION_RANGE" VERSION="1" LANGU="E" DESCRIPT="Get used range dimension" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDBY="FEMIA" CHANGEDON="20100709" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="GET_DIMENSION_RANGE" SCONAME="EP_DIMENSION_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD get_dimension_range.
IF stop_cell EQ start_cell. &quot;only one cell
ep_dimension_range = start_cell-cell_coords.
ELSE.
CONCATENATE start_cell-cell_coords &apos;:&apos; stop_cell-cell_coords INTO ep_dimension_range.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" VERSION="1" LANGU="E" DESCRIPT="Set range used in conditional formatting" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100709" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_START_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_START_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_STOP_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_STYLE_CONDITIONAL" CMPNAME="SET_RANGE" SCONAME="IP_STOP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<source>METHOD set_range.
DATA: lv_column TYPE zexcel_cell_column,
lv_row_alpha TYPE string.
lv_column = zcl_excel_common=&gt;convert_column2int( ip_stop_column ).
stop_cell-cell_row = 1.
stop_cell-cell_column = lv_column.
lv_row_alpha = ip_stop_row.
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE ip_stop_column lv_row_alpha INTO stop_cell-cell_coords.
lv_column = zcl_excel_common=&gt;convert_column2int( ip_start_column ).
start_cell-cell_row = 1.
start_cell-cell_column = lv_column.
lv_row_alpha = ip_start_row.
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE ip_start_column lv_row_alpha INTO start_cell-cell_coords.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_FILL" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="44C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_FILL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_FILL
*&quot;* do not include other source files here!!!
public section.
class-data C_FILL_NONE type ZEXCEL_FILL_TYPE value &apos;none&apos;. &quot;#EC NOTEXT .
class-data C_FILL_SOLID type ZEXCEL_FILL_TYPE value &apos;solid&apos;. &quot;#EC NOTEXT .
class-data C_FILL_GRADIENT_LINEAR type ZEXCEL_FILL_TYPE value &apos;linear&apos;. &quot;#EC NOTEXT .
class-data C_FILL_GRADIENT_PATH type ZEXCEL_FILL_TYPE value &apos;path&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKDOWN type ZEXCEL_FILL_TYPE value &apos;darkDown&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKGRAY type ZEXCEL_FILL_TYPE value &apos;darkGray&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKGRID type ZEXCEL_FILL_TYPE value &apos;darkGrid&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKHORIZONTAL type ZEXCEL_FILL_TYPE value &apos;darkHorizontal&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKTRELLIS type ZEXCEL_FILL_TYPE value &apos;darkTrellis&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKUP type ZEXCEL_FILL_TYPE value &apos;darkUp&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_DARKVERTICAL type ZEXCEL_FILL_TYPE value &apos;darkVertical&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_GRAY0625 type ZEXCEL_FILL_TYPE value &apos;gray0625&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_GRAY125 type ZEXCEL_FILL_TYPE value &apos;gray125&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTDOWN type ZEXCEL_FILL_TYPE value &apos;lightDown&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTGRAY type ZEXCEL_FILL_TYPE value &apos;lightGray&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTGRID type ZEXCEL_FILL_TYPE value &apos;lightGrid&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTHORIZONTAL type ZEXCEL_FILL_TYPE value &apos;lightHorizontal&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTTRELLIS type ZEXCEL_FILL_TYPE value &apos;lightTrellis&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTUP type ZEXCEL_FILL_TYPE value &apos;lightUp&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_LIGHTVERTICAL type ZEXCEL_FILL_TYPE value &apos;lightVertical&apos;. &quot;#EC NOTEXT .
class-data C_FILL_PATTERN_MEDIUMGRAY type ZEXCEL_FILL_TYPE value &apos;mediumGray&apos;. &quot;#EC NOTEXT .
data FILLTYPE type ZEXCEL_FILL_TYPE .
data ROTATION type ZEXCEL_ROTATION .
data FGCOLOR type ZEXCEL_STYLE_COLOR_ARGB .
data BGCOLOR type ZEXCEL_STYLE_COLOR_ARGB value &apos;64&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(ES_FILL) type ZEXCEL_S_STYLE_FILL .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_FILL
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_FILL" CMPNAME="BGCOLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100706" ATTDECLTYP="0" ATTVALUE="&apos;64&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_GRADIENT_LINEAR" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;linear&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_GRADIENT_PATH" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;path&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_NONE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKDOWN" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkDown&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKGRAY" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKGRID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkGrid&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKHORIZONTAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkHorizontal&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKTRELLIS" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkTrellis&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKUP" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkUp&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_DARKVERTICAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;darkVertical&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_GRAY0625" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;gray0625&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_GRAY125" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;gray125&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTDOWN" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightDown&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTGRAY" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTGRID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightGrid&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTHORIZONTAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightHorizontal&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTTRELLIS" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightTrellis&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTUP" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightUp&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_LIGHTVERTICAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;lightVertical&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_PATTERN_MEDIUMGRAY" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;mediumGray&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="C_FILL_SOLID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;solid&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="FGCOLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="FILLTYPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FILL_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="ROTATION" VERSION="1" LANGU="E" DESCRIPT="Rotation" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ROTATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
filltype = zcl_excel_style_fill=&gt;c_fill_none.
rotation = 0.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" DESCRIPT="Get structure" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_FILL" CMPNAME="GET_STRUCTURE" SCONAME="ES_FILL" VERSION="1" LANGU="E" DESCRIPT="Cell Fill" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLE_FILL"/>
<source>METHOD get_structure.
es_fill-rotation = me-&gt;rotation.
es_fill-filltype = me-&gt;filltype.
es_fill-fgColor = me-&gt;fgColor.
es_fill-bgColor = me-&gt;bgColor.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_FONT" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="5BC0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_FONT definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data BOLD type FLAG .
data COLOR type ZEXCEL_STYLE_COLOR_ARGB .
class-data C_SCHEME_MAJOR type ZEXCEL_STYLE_FONT_SCHEME value &apos;major&apos;. &quot;#EC NOTEXT .
class-data C_SCHEME_MINOR type ZEXCEL_STYLE_FONT_SCHEME value &apos;minor&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_DOUBLE type CHAR20 value &apos;double&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_DOUBLEACCOUNTING type CHAR20 value &apos;doubleAccounting&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_NONE type CHAR20 value &apos;none&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_SINGLE type CHAR20 value &apos;single&apos;. &quot;#EC NOTEXT .
class-data C_UNDERLINE_SINGLEACCOUNTING type CHAR20 value &apos;singleAccounting&apos;. &quot;#EC NOTEXT .
data FAMILY type INT1 value 2. &quot;#EC NOTEXT .
data ITALIC type FLAG .
data NAME type CHAR255 value &apos;Calibri&apos;. &quot;#EC NOTEXT .
data SCHEME type ZEXCEL_STYLE_FONT_SCHEME .
data SIZE type INT1 value 11. &quot;#EC NOTEXT .
data STRIKETHROUGH type FLAG .
data UNDERLINE type FLAG .
data UNDERLINE_MODE type CHAR20 .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(ES_FONT) type ZEXCEL_S_STYLE_FONT .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_STYLE_FONT" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="BOLD" VERSION="1" LANGU="E" DESCRIPT="Bold" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="COLOR" VERSION="1" LANGU="E" DESCRIPT="Color ARGB" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_COLOR_ARGB" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_SCHEME_MAJOR" VERSION="1" LANGU="E" DESCRIPT="Char255" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;major&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FONT_SCHEME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_SCHEME_MINOR" VERSION="1" LANGU="E" DESCRIPT="Char255" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;minor&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FONT_SCHEME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_DOUBLE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;double&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_DOUBLEACCOUNTING" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;doubleAccounting&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_NONE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;none&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_SINGLE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;single&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="C_UNDERLINE_SINGLEACCOUNTING" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="1" ATTVALUE="&apos;singleAccounting&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="FAMILY" VERSION="1" LANGU="E" DESCRIPT="Family code" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" ATTDECLTYP="0" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="ITALIC" VERSION="1" LANGU="E" DESCRIPT="Italic" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="NAME" VERSION="1" LANGU="E" DESCRIPT="Name" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTVALUE="&apos;Calibri&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR255" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="SCHEME" VERSION="1" LANGU="E" DESCRIPT="Scheme code" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_STYLE_FONT_SCHEME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Size" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTVALUE="11" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="STRIKETHROUGH" VERSION="1" LANGU="E" DESCRIPT="Strikethrough" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="UNDERLINE" VERSION="1" LANGU="E" DESCRIPT="Underline" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" 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_STYLE_FONT" CMPNAME="UNDERLINE_MODE" VERSION="1" LANGU="E" DESCRIPT="Underline mode" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR20" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
me-&gt;color = zcl_excel_style_color=&gt;c_black.
me-&gt;scheme = zcl_excel_style_font=&gt;c_scheme_minor.
me-&gt;underline_mode = zcl_excel_style_font=&gt;c_underline_single.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" DESCRIPT="Get class as a structure" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_FONT" CMPNAME="GET_STRUCTURE" SCONAME="ES_FONT" VERSION="1" LANGU="E" DESCRIPT="Cell Font" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLE_FONT"/>
<source>METHOD get_structure.
es_font-bold = me-&gt;bold.
es_font-italic = me-&gt;italic.
es_font-underline = me-&gt;underline.
es_font-underline_mode = me-&gt;underline_mode.
es_font-strikethrough = me-&gt;strikethrough.
es_font-size = me-&gt;size.
es_font-color = me-&gt;color.
es_font-name = me-&gt;name.
es_font-family = me-&gt;family.
es_font-scheme = me-&gt;scheme.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="7FC0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_NUMBER_FORMAT definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_NUMBER_FORMAT
*&quot;* do not include other source files here!!!
public section.
class-data C_FORMAT_NUMBER type ZEXCEL_NUMBER_FORMAT value &apos;0&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_NUMBER_00 type ZEXCEL_NUMBER_FORMAT value &apos;0.00&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_NUMBER_COMMA_SEP1 type ZEXCEL_NUMBER_FORMAT value &apos;#,##0.00&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_NUMBER_COMMA_SEP2 type ZEXCEL_NUMBER_FORMAT value &apos;#,##0.00_-&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_PERCENTAGE type ZEXCEL_NUMBER_FORMAT value &apos;0%&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_PERCENTAGE_00 type ZEXCEL_NUMBER_FORMAT value &apos;0.00%&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_YYYYMMDD2 type ZEXCEL_NUMBER_FORMAT value &apos;yyyy-mm-dd&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_YYYYMMDD type ZEXCEL_NUMBER_FORMAT value &apos;yy-mm-dd&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DDMMYYYY type ZEXCEL_NUMBER_FORMAT value &apos;dd/mm/yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DMYSLASH type ZEXCEL_NUMBER_FORMAT value &apos;d/m/y&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DMYMINUS type ZEXCEL_NUMBER_FORMAT value &apos;d-m-y&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DMMINUS type ZEXCEL_NUMBER_FORMAT value &apos;d-m&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_MYMINUS type ZEXCEL_NUMBER_FORMAT value &apos;m-y&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX14 type ZEXCEL_NUMBER_FORMAT value &apos;mm-dd-yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX15 type ZEXCEL_NUMBER_FORMAT value &apos;d-mmm-yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX16 type ZEXCEL_NUMBER_FORMAT value &apos;d-mmm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX17 type ZEXCEL_NUMBER_FORMAT value &apos;mmm-yy&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_XLSX22 type ZEXCEL_NUMBER_FORMAT value &apos;m/d/yy h:mm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_DATETIME type ZEXCEL_NUMBER_FORMAT value &apos;d/m/y h:mm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME1 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm AM/PM&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME2 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss AM/PM&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME3 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME4 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME5 type ZEXCEL_NUMBER_FORMAT value &apos;mm:ss&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME6 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME7 type ZEXCEL_NUMBER_FORMAT value &apos;i:s.S&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_TIME8 type ZEXCEL_NUMBER_FORMAT value &apos;h:mm:ss@&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_DATE_YYYYMMDDSLASH type ZEXCEL_NUMBER_FORMAT value &apos;yy/mm/dd@&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_CURRENCY_USD_SIMPLE type ZEXCEL_NUMBER_FORMAT value &apos;&quot;$&quot;#,##0.00_-&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_CURRENCY_USD type ZEXCEL_NUMBER_FORMAT value &apos;$#,##0_-&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_CURRENCY_EUR_SIMPLE type ZEXCEL_NUMBER_FORMAT value &apos;[$EUR ]#,##0.00_-&apos;. &quot;#EC NOTEXT .
data FORMAT_CODE type ZEXCEL_NUMBER_FORMAT .
methods CONSTRUCTOR .
methods GET_STRUCTURE
returning
value(EP_NUMBER_FORMAT) type ZEXCEL_NUMBER_FORMAT .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_NUMBER_FORMAT
*&quot;* do not include other source files here!!!
private section.
class-data C_FORMAT_GENERAL type ZEXCEL_NUMBER_FORMAT value &apos;&apos;. &quot;#EC NOTEXT .
class-data C_FORMAT_TEXT type ZEXCEL_NUMBER_FORMAT value &apos;@&apos;. &quot;#EC NOTEXT .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_CURRENCY_EUR_SIMPLE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="33 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;[$EUR ]#,##0.00_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_CURRENCY_USD" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="32 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;$#,##0_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_CURRENCY_USD_SIMPLE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="31 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;&quot;$&quot;#,##0.00_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DATETIME" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d/m/y h:mm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DDMMYYYY" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;dd/mm/yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DMMINUS" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-m&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DMYMINUS" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-m-y&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_DMYSLASH" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d/m/y&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_MYMINUS" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;m-y&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME1" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm AM/PM&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME2" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss AM/PM&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME3" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME4" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME5" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="26 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;mm:ss&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME6" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="27 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME7" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="28 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;i:s.S&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_TIME8" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="29 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;h:mm:ss@&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX14" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;mm-dd-yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX15" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-mmm-yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX16" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;d-mmm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX17" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;mmm-yy&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_XLSX22" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;m/d/yy h:mm&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_YYYYMMDD" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;yy-mm-dd&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_YYYYMMDD2" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;yyyy-mm-dd&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_DATE_YYYYMMDDSLASH" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="30 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;yy/mm/dd@&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_GENERAL" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER_00" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0.00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER_COMMA_SEP1" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;#,##0.00&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_NUMBER_COMMA_SEP2" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;#,##0.00_-&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_PERCENTAGE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0%&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_PERCENTAGE_00" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;0.00%&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="C_FORMAT_TEXT" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="&apos;@&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="FORMAT_CODE" VERSION="1" LANGU="E" DESCRIPT="Number format" EXPOSURE="2" STATE="1" EDITORDER="34 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
format_code = me-&gt;c_format_general.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="GET_STRUCTURE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE_NUMBER_FORMAT" CMPNAME="GET_STRUCTURE" SCONAME="EP_NUMBER_FORMAT" VERSION="1" LANGU="E" DESCRIPT="Number format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_NUMBER_FORMAT"/>
<source>METHOD get_structure.
ep_number_format = me-&gt;format_code.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" VERSION="1" LANGU="E" DESCRIPT="Font Style" UUID="96C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE_PROTECTION definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE_PROTECTION
*&quot;* do not include other source files here!!!
public section.
constants C_PROTECTION_INHERIT type ZEXCEL_PROTECTION value &apos;inherit&apos;. &quot;#EC NOTEXT
constants C_PROTECTION_PROTECTED type ZEXCEL_PROTECTION value &apos;protected&apos;. &quot;#EC NOTEXT
constants C_PROTECTION_UNPROTECTED type ZEXCEL_PROTECTION value &apos;unprotected&apos;. &quot;#EC NOTEXT
data LOCKED type ZEXCEL_PROTECTION .
data HIDDEN type ZEXCEL_PROTECTION .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE_FONT
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE_PROTECTION
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE_PROTECTION" CMPNAME="C_PROTECTION_INHERIT" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;inherit&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="C_PROTECTION_PROTECTED" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;protected&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="C_PROTECTION_UNPROTECTED" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;unprotected&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="HIDDEN" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="LOCKED" VERSION="1" LANGU="E" DESCRIPT="Protection" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE_PROTECTION" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
locked = me-&gt;c_protection_inherit.
hidden = me-&gt;c_protection_inherit.
ENDMETHOD.</source>
</method>
</CLAS>
<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" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_WORKSHEET definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
class-data C_BREAK_COLUMN type ZEXCEL_BREAK value 2. &quot;#EC NOTEXT .
class-data C_BREAK_NONE type ZEXCEL_BREAK value 0. &quot;#EC NOTEXT .
class-data C_BREAK_ROW type ZEXCEL_BREAK value 1. &quot;#EC NOTEXT .
class-data C_SHEET_STATE_HIDDEN type ZEXCEL_SHEET_STATE value &apos;hidden&apos;. &quot;#EC NOTEXT .
class-data C_SHEET_STATE_VERYHIDDEN type ZEXCEL_SHEET_STATE value &apos;veryHidden&apos;. &quot;#EC NOTEXT .
class-data C_SHEET_STATE_VISIBLE type ZEXCEL_SHEET_STATE value &apos;visible&apos;. &quot;#EC NOTEXT .
data DEFAULTROWHEIGHT type INT1 value 15. &quot;#EC NOTEXT .
data SHEET_CONTENT type ZEXCEL_T_CELL_DATA .
data SHEET_SETUP type ref to ZCL_EXCEL_SHEET_SETUP .
data SHEET_STATE type ZEXCEL_SHEET_STATE .
data TITLE type ZEXCEL_SHEET_TITLE value &apos;Worksheet&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional .
methods GET_ACTIVE_CELL
returning
value(EP_ACTIVE_CELL) type STRING .
methods GET_CELL
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
!IP_ROW type ZEXCEL_CELL_ROW
exporting
!EP_VALUE type ZEXCEL_CELL_VALUE
!EP_RC type SYSUBRC .
methods GET_DIMENSION_RANGE
returning
value(EP_DIMENSION_RANGE) type STRING .
methods GET_GUID
returning
value(EP_GUID) type GUID_16 .
methods SET_CELL
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
!IP_ROW type ZEXCEL_CELL_ROW
!IP_VALUE type ZEXCEL_CELL_VALUE
!IP_FORMULA type ZEXCEL_CELL_FORMULA optional
!IP_STYLE type ZEXCEL_CELL_STYLE optional .
methods SET_TABLE
importing
!IP_TABLE type STANDARD TABLE
!IP_HDR_STYLE type ZEXCEL_CELL_STYLE optional
!IP_BODY_STYLE type ZEXCEL_CELL_STYLE optional
!IP_TABLE_TITLE type STRING optional
!IP_TOP_LEFT_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA default &apos;B&apos;
!IP_TOP_LEFT_ROW type ZEXCEL_CELL_ROW default 3 .
methods ADD_NEW_CONDITIONAL_STYLE
returning
value(EO_CONDITIONAL_STYLE) type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods GET_COND_STYLES_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
private section.
data ACTIVE_CELL type ZEXCEL_S_CELL_DATA .
data CONDITIONAL_STYLES type ref to ZCL_EXCEL_STYLES_CONDITIONAL .
data GUID type GUID_16 .
data LOWER_CELL type ZEXCEL_S_CELL_DATA .
data UPPER_CELL type ZEXCEL_S_CELL_DATA .
methods UPDATE_DIMENSION_RANGE .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_WORKSHEET" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ACTIVE_CELL" VERSION="1" LANGU="E" DESCRIPT="Version Number Component" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="CONDITIONAL_STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles conditional collection" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLES_CONDITIONAL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_BREAK_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Worksheet Break" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BREAK" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_BREAK_NONE" VERSION="1" LANGU="E" DESCRIPT="Worksheet Break" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BREAK" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_BREAK_ROW" VERSION="1" LANGU="E" DESCRIPT="Worksheet Break" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="1" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_BREAK" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_SHEET_STATE_HIDDEN" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;hidden&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_SHEET_STATE_VERYHIDDEN" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;veryHidden&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="C_SHEET_STATE_VISIBLE" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="1" ATTVALUE="&apos;visible&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="DEFAULTROWHEIGHT" VERSION="1" LANGU="E" DESCRIPT="Default row height" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTVALUE="15" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" EXPOSURE="0" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="GUID_16" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="LOWER_CELL" VERSION="1" LANGU="E" DESCRIPT="Bottom right range cell" EXPOSURE="0" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SHEET_CONTENT" VERSION="1" LANGU="E" DESCRIPT="Excel worksheet content" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SHEET_SETUP" VERSION="1" LANGU="E" DESCRIPT="Sheet setup" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_SHEET_SETUP" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SHEET_STATE" VERSION="1" LANGU="E" DESCRIPT="Sheet state" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_STATE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTVALUE="&apos;Worksheet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="UPPER_CELL" VERSION="1" LANGU="E" DESCRIPT="Top left range cell" EXPOSURE="0" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ADD_NEW_CONDITIONAL_STYLE" VERSION="1" LANGU="E" DESCRIPT="Creates a new conditional formatting" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="ADD_NEW_CONDITIONAL_STYLE" SCONAME="EO_CONDITIONAL_STYLE" VERSION="1" LANGU="E" DESCRIPT="Font Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD add_new_conditional_style.
CREATE OBJECT eo_conditional_style.
conditional_styles-&gt;add( eo_conditional_style ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="CONSTRUCTOR" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="2" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<source>METHOD constructor.
CALL FUNCTION &apos;GUID_CREATE&apos;
IMPORTING
ev_guid_16 = me-&gt;guid.
IF ip_title IS NOT INITIAL.
title = ip_title.
ELSE.
title = me-&gt;guid.
ENDIF.
sheet_state = me-&gt;c_sheet_state_visible.
CREATE OBJECT sheet_setup.
CREATE OBJECT conditional_styles.
* initialize active cell coordinates
active_cell-cell_row = 1.
active_cell-cell_column = 1.
* inizialize dimension range
lower_cell-cell_row = 1.
lower_cell-cell_column = 1.
upper_cell-cell_row = 1.
upper_cell-cell_column = 1.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_ACTIVE_CELL" VERSION="1" LANGU="E" DESCRIPT="Get used range dimension" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_ACTIVE_CELL" SCONAME="EP_ACTIVE_CELL" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD get_active_cell.
DATA: lv_active_column TYPE zexcel_cell_column_alpha,
lv_active_row TYPE string.
lv_active_column = zcl_excel_common=&gt;convert_column2alpha( active_cell-cell_column ).
lv_active_row = active_cell-cell_row.
SHIFT lv_active_row RIGHT DELETING TRAILING space.
SHIFT lv_active_row LEFT DELETING LEADING space.
CONCATENATE lv_active_column lv_active_row INTO ep_active_cell.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" VERSION="1" LANGU="E" DESCRIPT="Get cell value" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="IP_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="EP_VALUE" VERSION="1" LANGU="E" DESCRIPT="Cell Value" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" PARDECLTYP="1" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_VALUE"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_CELL" SCONAME="EP_RC" VERSION="1" LANGU="E" DESCRIPT="Return Value of ABAP Statements" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="1" PARPASSTYP="1" TYPTYPE="1" TYPE="SYSUBRC"/>
<source>METHOD get_cell.
DATA: lv_column TYPE zexcel_cell_column,
ls_sheet_content TYPE zexcel_s_cell_data.
FIELD-SYMBOLS: &lt;fs_sheet_content&gt; TYPE zexcel_s_cell_data.
lv_column = zcl_excel_common=&gt;convert_column2int( ip_column ).
READ TABLE sheet_content INTO ls_sheet_content WITH TABLE KEY cell_row = ip_row
cell_column = lv_column.
ep_rc = sy-subrc.
ep_value = ls_sheet_content-cell_value.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_COND_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get conditional styles iterator" EXPOSURE="2" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_COND_STYLES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>method GET_COND_STYLES_ITERATOR.
eo_iterator = me-&gt;conditional_styles-&gt;get_iterator( ).
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_DIMENSION_RANGE" VERSION="1" LANGU="E" DESCRIPT="Get used range dimension" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_DIMENSION_RANGE" SCONAME="EP_DIMENSION_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="STRING"/>
<source>METHOD get_dimension_range.
me-&gt;update_dimension_range( ).
IF upper_cell EQ lower_cell. &quot;only one cell
ep_dimension_range = upper_cell-cell_coords.
ELSE.
CONCATENATE upper_cell-cell_coords &apos;:&apos; lower_cell-cell_coords INTO ep_dimension_range.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_GUID" VERSION="1" LANGU="E" DESCRIPT="Get sheet guid" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="GET_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="GUID_16"/>
<source>method GET_GUID.
ep_guid = me-&gt;guid.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" VERSION="1" LANGU="E" DESCRIPT="Set cell value" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_VALUE" VERSION="1" LANGU="E" DESCRIPT="Cell Value" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_VALUE"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_FORMULA" VERSION="1" LANGU="E" DESCRIPT="Cell Formula" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_FORMULA" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_CELL" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100710" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
<source>METHOD set_cell.
DATA: lv_column TYPE zexcel_cell_column,
ls_sheet_content TYPE zexcel_s_cell_data,
lv_row_alpha TYPE string.
FIELD-SYMBOLS: &lt;fs_sheet_content&gt; TYPE zexcel_s_cell_data.
lv_column = ZCL_EXCEL_COMMON=&gt;convert_column2int( ip_column ).
READ TABLE sheet_content ASSIGNING &lt;fs_sheet_content&gt; WITH KEY cell_row = ip_row
cell_column = lv_column.
IF sy-subrc EQ 0.
&lt;fs_sheet_content&gt;-cell_value = ip_value.
&lt;fs_sheet_content&gt;-cell_formula = ip_formula.
&lt;fs_sheet_content&gt;-cell_style = ip_style.
ELSE.
ls_sheet_content-cell_row = ip_row.
ls_sheet_content-cell_column = lv_column.
ls_sheet_content-cell_value = ip_value.
ls_sheet_content-cell_formula = ip_formula.
ls_sheet_content-cell_style = ip_style.
lv_row_alpha = ip_row.
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE ip_column lv_row_alpha INTO ls_sheet_content-cell_coords.
APPEND ls_sheet_content TO sheet_content.
SORT sheet_content BY cell_row cell_column.
* me-&gt;update_dimension_range( ).
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" VERSION="1" LANGU="E" DESCRIPT="Set cell value from a table" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TABLE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STANDARD TABLE"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_HDR_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_BODY_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TABLE_TITLE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100706" CHANGEDBY="FEMIA" CHANGEDON="20100706" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="STRING" PAROPTIONL="X"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TOP_LEFT_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100707" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA" PARVALUE="&apos;B&apos;"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="SET_TABLE" SCONAME="IP_TOP_LEFT_ROW" VERSION="1" LANGU="E" DESCRIPT="Cell Row" CMPTYPE="1" MTDTYPE="0" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100707" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_ROW" PARVALUE="3"/>
<source>METHOD set_table.
DATA: lo_tabdescr TYPE REF TO cl_abap_structdescr,
lr_data TYPE REF TO data,
ls_newline TYPE REF TO data,
ls_header TYPE x030l,
lt_dfies TYPE ddfields,
lv_row_header TYPE zexcel_cell_row VALUE &apos;2&apos;,
lv_col_header TYPE zexcel_cell_column_alpha VALUE &apos;B&apos;,
lv_row_int TYPE zexcel_cell_row,
lv_column_int TYPE zexcel_cell_column,
lv_column_alpha TYPE zexcel_cell_column_alpha,
lv_cell_value TYPE zexcel_cell_value.
FIELD-SYMBOLS: &lt;fs_table_line&gt; TYPE ANY,
&lt;fs_fldval&gt; TYPE ANY,
&lt;fs_dfies&gt; TYPE dfies,
&lt;fs_cell_value&gt; TYPE zexcel_cell_value.
lv_column_int = zcl_excel_common=&gt;convert_column2int( ip_top_left_column ).
lv_row_int = ip_top_left_row.
CREATE DATA lr_data LIKE LINE OF ip_table.
lo_tabdescr ?= cl_abap_structdescr=&gt;describe_by_data_ref( lr_data ).
ls_header = lo_tabdescr-&gt;get_ddic_header( ).
lt_dfies = lo_tabdescr-&gt;get_ddic_field_list( ).
* It is better to loop column by column
LOOP AT lt_dfies ASSIGNING &lt;fs_dfies&gt;.
lv_column_alpha = zcl_excel_common=&gt;convert_column2alpha( lv_column_int ).
&quot; First of all write column header
lv_cell_value = &lt;fs_dfies&gt;-scrtext_m.
me-&gt;set_cell( ip_column = lv_column_alpha
ip_row = lv_row_int
ip_value = lv_cell_value
ip_style = ip_hdr_style ).
ADD 1 TO lv_row_int.
LOOP AT ip_table ASSIGNING &lt;fs_table_line&gt;.
ASSIGN COMPONENT &lt;fs_dfies&gt;-fieldname OF STRUCTURE &lt;fs_table_line&gt; TO &lt;fs_fldval&gt;.
MOVE &lt;fs_fldval&gt; TO lv_cell_value.
me-&gt;set_cell( ip_column = lv_column_alpha
ip_row = lv_row_int
ip_value = lv_cell_value
ip_style = ip_body_style ).
ADD 1 TO lv_row_int.
ENDLOOP.
lv_row_int = ip_top_left_row.
ADD 1 TO lv_column_int.
ENDLOOP.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEET" CMPNAME="UPDATE_DIMENSION_RANGE" VERSION="1" LANGU="E" DESCRIPT="Update dimension range" EXPOSURE="0" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD update_dimension_range.
DATA: ls_sheet_content TYPE zexcel_s_cell_data,
lt_sheet_content TYPE zexcel_t_cell_data_unsorted,
lv_row_alpha TYPE string,
lv_column_alpha TYPE zexcel_cell_column_alpha.
* update dimension range
lt_sheet_content = sheet_content.
&quot;upper left corner
SORT lt_sheet_content BY cell_row.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
upper_cell-cell_row = ls_sheet_content-cell_row.
SORT lt_sheet_content BY cell_column.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
upper_cell-cell_column = ls_sheet_content-cell_column.
lv_row_alpha = upper_cell-cell_row.
lv_column_alpha = zcl_excel_common=&gt;convert_column2alpha( upper_cell-cell_column ).
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE lv_column_alpha lv_row_alpha INTO upper_cell-cell_coords.
&quot;bottom right corner
SORT lt_sheet_content BY cell_row DESCENDING.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
lower_cell-cell_row = ls_sheet_content-cell_row.
SORT lt_sheet_content BY cell_column DESCENDING.
READ TABLE lt_sheet_content INDEX 1 INTO ls_sheet_content.
lower_cell-cell_column = ls_sheet_content-cell_column.
lv_row_alpha = lower_cell-cell_row.
lv_column_alpha = zcl_excel_common=&gt;convert_column2alpha( lower_cell-cell_column ).
SHIFT lv_row_alpha RIGHT DELETING TRAILING space.
SHIFT lv_row_alpha LEFT DELETING LEADING space.
CONCATENATE lv_column_alpha lv_row_alpha INTO lower_cell-cell_coords.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_WORKSHEETS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" UUID="89AF284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_WORKSHEETS definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
public section.
data ACTIVE_WORKSHEET type ZEXCEL_ACTIVE_WORKSHEET value 1. &quot;#EC NOTEXT .
data NAME type ZEXCEL_WORKSHEETS_NAME value &apos;Worksheets&apos;. &quot;#EC NOTEXT .
methods ADD
importing
!IP_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type ZEXCEL_ACTIVE_WORKSHEET
returning
value(EO_WORKSHEET) type ref to ZCL_EXCEL_WORKSHEET .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
private section.
data WORKSHEETS type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_WORKSHEETS" CMPNAME="ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDON="00000000" ATTDECLTYP="0" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" ATTDECLTYP="0" ATTVALUE="&apos;Worksheets&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="WORKSHEETS" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="ADD" SCONAME="IP_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD ADD.
worksheets-&gt;add( ip_worksheet ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
worksheets-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT worksheets.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD get.
DATA lv_index TYPE i.
lv_index = ip_index.
eo_worksheet ?= worksheets-&gt;if_object_collection~get( lv_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= worksheets-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = worksheets-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="REMOVE" SCONAME="IP_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
<source>METHOD remove.
worksheets-&gt;remove( ip_worksheet ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WORKSHEETS" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = worksheets-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_WRITER_2007" VERSION="1" LANGU="E" DESCRIPT="Excel writer 2007" UUID="B9BE2C4C98855D2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_WRITER_2007 definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
public section.
methods CONSTRUCTOR
importing
!IO_EXCEL type ref to ZCL_EXCEL .
methods CREATE
returning
value(EP_EXCEL) type XSTRING .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_WRITER_2007
*&quot;* do not include other source files here!!!
private section.
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_RELATIONSHIPS type STRING value &apos;_rels/.rels&apos;. &quot;#EC NOTEXT
constants C_XL_CALCCHAIN type STRING value &apos;xl/calcChain.xml&apos;. &quot;#EC NOTEXT
constants C_XL_RELATIONSHIPS type STRING value &apos;xl/_rels/workbook.xml.rels&apos;. &quot;#EC NOTEXT
constants C_XL_SHAREDSTRINGS type STRING value &apos;xl/sharedStrings.xml&apos;. &quot;#EC NOTEXT
constants C_XL_SHEET type STRING value &apos;xl/worksheets/sheet#.xml&apos;. &quot;#EC NOTEXT
constants C_XL_SHEET_RELS type STRING value &apos;xl/worksheets/_rels/sheet#.xml.rels&apos;. &quot;#EC NOTEXT
constants C_XL_STYLES type STRING value &apos;xl/styles.xml&apos;. &quot;#EC NOTEXT
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_MAPPING type ZEXCEL_T_STYLES_MAPPING .
methods CREATE_CONTENT_TYPES
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_DOCPROPS_APP
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_DOCPROPS_CORE
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_RELATIONSHIPS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_CALCCHAIN
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_RELATIONSHIPS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_SHAREDSTRINGS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_SHEET
importing
!IO_WORKSHEET type ref to ZCL_EXCEL_WORKSHEET
!IV_ACTIVE type FLAG default &apos;&apos;
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_SHEET_RELS
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_STYLES
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_THEME
returning
value(EP_CONTENT) type XSTRING .
methods CREATE_XL_WORKBOOK
returning
value(EP_CONTENT) type XSTRING .
methods FLAG2BOOL
importing
!IP_FLAG type FLAG
returning
value(EP_BOOLEAN) type CHAR5 .
methods GET_SHARED_STRING_INDEX
importing
!IP_CELL_VALUE type ZEXCEL_CELL_VALUE
returning
value(EP_INDEX) type INT4 .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;[Content_Types].xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;docProps/app.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;docProps/core.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="4 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100702" ATTDECLTYP="2" ATTVALUE="&apos;_rels/.rels&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="C_XL_CALCCHAIN" VERSION="1" LANGU="E" DESCRIPT="xlCalcChain XML File Name" EXPOSURE="0" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;xl/calcChain.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="6 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" 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="701" 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="7 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/sharedStrings.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="8 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/worksheets/sheet#.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="9 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100710" 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="701" 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="10 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/styles.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="11 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/theme/theme1.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" 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="12 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="2" ATTVALUE="&apos;xl/workbook.xml&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" EXPOSURE="0" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="SHARED_STRINGS" VERSION="1" LANGU="E" DESCRIPT="Shared Strings" EXPOSURE="0" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_SHARED_STRING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="STYLES_MAPPING" VERSION="1" LANGU="E" DESCRIPT="Styles mapping" EXPOSURE="0" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_STYLES_MAPPING" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CONSTRUCTOR" SCONAME="IO_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CMPTYPE="1" MTDTYPE="2" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL"/>
<source>METHOD constructor.
me-&gt;excel = io_excel.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE" VERSION="1" LANGU="E" DESCRIPT="Create Excel" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<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.
DATA: lv_content TYPE xstring,
lv_active TYPE flag,
lv_xl_sheet TYPE string,
lv_xl_sheet_rels TYPE string,
lv_syindex TYPE string.
**********************************************************************
* 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 sharedStrings.xml to zip
lv_content = me-&gt;create_xl_calcchain( ).
lo_zip-&gt;add( name = me-&gt;c_xl_calcchain
content = lv_content ).
**********************************************************************
* STEP 11: Add sheet#.xml to zip
lo_iterator = me-&gt;excel-&gt;get_worksheets_iterator( ).
lo_active_worksheet = me-&gt;excel-&gt;get_active_worksheet( ).
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_true.
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( ).
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 ).
ENDWHILE.
**********************************************************************
* STEP 11: Create the final zip
ep_excel = lo_zip-&gt;save( ).
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="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_content_types.
** Constant node name
DATA: lc_xml_node_types TYPE string VALUE &apos;Types&apos;,
lc_xml_node_override TYPE string VALUE &apos;Override&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;,
&quot; Node namespace
lc_xml_node_types_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/content-types&apos;,
&quot; Node extension
lc_xml_node_rels_ext TYPE string VALUE &apos;rels&apos;,
lc_xml_node_xml_ext TYPE string VALUE &apos;xml&apos;,
&quot; Node partnumber
lc_xml_node_theme_pn TYPE string VALUE &apos;/xl/theme/theme1.xml&apos;,
lc_xml_node_styles_pn TYPE string VALUE &apos;/xl/styles.xml&apos;,
lc_xml_node_workb_pn TYPE string VALUE &apos;/xl/workbook.xml&apos;,
lc_xml_node_props_pn TYPE string VALUE &apos;/docProps/app.xml&apos;,
lc_xml_node_worksheet_pn TYPE string VALUE &apos;/xl/worksheets/sheet#.xml&apos;,
lc_xml_node_strings_pn TYPE string VALUE &apos;/xl/sharedStrings.xml&apos;,
lc_xml_node_core_pn TYPE string VALUE &apos;/docProps/core.xml&apos;,
&quot; Node contentType
lc_xml_node_theme_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.theme+xml&apos;,
lc_xml_node_styles_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml&apos;,
lc_xml_node_workb_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml&apos;,
lc_xml_node_rels_ct TYPE string VALUE &apos;application/vnd.openxmlformats-package.relationships+xml&apos;,
lc_xml_node_xml_ct TYPE string VALUE &apos;application/xml&apos;,
lc_xml_node_props_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.extended-properties+xml&apos;,
lc_xml_node_worksheet_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml&apos;,
lc_xml_node_strings_ct TYPE string VALUE &apos;application/vnd.openxmlformats-officedocument.spreadsheetml.sharedStrings+xml&apos;,
lc_xml_node_core_ct TYPE string VALUE &apos;application/vnd.openxmlformats-package.core-properties+xml&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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_worksheets_num TYPE i,
lv_worksheets_numc TYPE numc3,
lv_xml_node_worksheet_pn TYPE string,
lv_xml_size TYPE i.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;UTF-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node types
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_types
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_types_ns ).
**********************************************************************
* 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( 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( lo_element ).
&quot; rels 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_rels_ext ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_rels_ct ).
lo_element_root-&gt;append_child( lo_element ).
&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_xml_ext ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_xml_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Workbook 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_workb_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_workb_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Properties 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_props_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_props_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Worksheet node
lv_worksheets_num = excel-&gt;get_worksheets_size( ).
DO lv_worksheets_num TIMES.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_override
parent = lo_document ).
MOVE sy-index TO lv_worksheets_numc.
SHIFT lv_worksheets_numc LEFT DELETING LEADING &apos;0&apos;.
lv_xml_node_worksheet_pn = lc_xml_node_worksheet_pn.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_worksheet_pn WITH lv_worksheets_numc.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_partname
value = lv_xml_node_worksheet_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lv_xml_node_worksheet_pn ).
lo_element_root-&gt;append_child( lo_element ).
ENDDO.
&quot; Strings 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_strings_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_strings_ct ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Strings 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_core_pn ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_contenttype
value = lc_xml_node_core_ct ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_DOCPROPS_APP" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/app.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_docprops_app.
** Constant node name
DATA: lc_xml_node_properties TYPE string VALUE &apos;Properties&apos;,
lc_xml_node_application TYPE string VALUE &apos;Application&apos;,
lc_xml_node_docsecurity TYPE string VALUE &apos;DocSecurity&apos;,
lc_xml_node_scalecrop TYPE string VALUE &apos;ScaleCrop&apos;,
lc_xml_node_headingpairs TYPE string VALUE &apos;HeadingPairs&apos;,
lc_xml_node_vector TYPE string VALUE &apos;vector&apos;,
lc_xml_node_variant TYPE string VALUE &apos;variant&apos;,
lc_xml_node_lpstr TYPE string VALUE &apos;lpstr&apos;,
lc_xml_node_i4 TYPE string VALUE &apos;i4&apos;,
lc_xml_node_titlesofparts TYPE string VALUE &apos;TitlesOfParts&apos;,
lc_xml_node_company TYPE string VALUE &apos;Company&apos;,
lc_xml_node_linksuptodate TYPE string VALUE &apos;LinksUpToDate&apos;,
lc_xml_node_shareddoc TYPE string VALUE &apos;SharedDoc&apos;,
lc_xml_node_hyperlinkschanged TYPE string VALUE &apos;HyperlinksChanged&apos;,
lc_xml_node_appversion TYPE string VALUE &apos;AppVersion&apos;,
&quot; Namespace prefix
lc_vt_ns TYPE string VALUE &apos;vt&apos;,
lc_xml_node_props_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/extended-properties&apos;,
lc_xml_node_props_vt_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/docPropsVTypes&apos;,
&quot; Node attributes
lc_xml_attr_size TYPE string VALUE &apos;size&apos;,
lc_xml_attr_basetype TYPE string VALUE &apos;baseType&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element_vector TYPE REF TO if_ixml_element,
lo_sub_element_variant TYPE REF TO if_ixml_element,
lo_sub_element_lpstr TYPE REF TO if_ixml_element,
lo_sub_element_i4 TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_value TYPE string.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node properties
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_properties
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_props_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:vt&apos;
value = lc_xml_node_props_vt_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Application
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_application
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;application.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; DocSecurity
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_docsecurity
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;docsecurity.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; ScaleCrop
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_scalecrop
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;scalecrop ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; HeadingPairs
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_headingpairs
parent = lo_document ).
&quot; * vector node
lo_sub_element_vector = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_vector
prefix = lc_vt_ns
parent = lo_document ).
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_size
value = &apos;2&apos; ).
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_basetype
value = lc_xml_node_variant ).
&quot; ** variant node
lo_sub_element_variant = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_variant
prefix = lc_vt_ns
parent = lo_document ).
&quot; *** lpstr node
lo_sub_element_lpstr = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_lpstr
prefix = lc_vt_ns
parent = lo_document ).
lv_value = excel-&gt;get_worksheets_name( ).
lo_sub_element_lpstr-&gt;set_value( lv_value ).
lo_sub_element_variant-&gt;append_child( lo_sub_element_lpstr ). &quot; lpstr node
lo_sub_element_vector-&gt;append_child( lo_sub_element_variant ). &quot; variant node
&quot; ** variant node
lo_sub_element_variant = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_variant
prefix = lc_vt_ns
parent = lo_document ).
&quot; *** i4 node
lo_sub_element_i4 = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_i4
prefix = lc_vt_ns
parent = lo_document ).
lv_value = excel-&gt;get_worksheets_size( ).
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element_i4-&gt;set_value( lv_value ).
lo_sub_element_variant-&gt;append_child( lo_sub_element_i4 ). &quot; lpstr node
lo_sub_element_vector-&gt;append_child( lo_sub_element_variant ). &quot; variant node
lo_element-&gt;append_child( lo_sub_element_vector ). &quot; vector node
lo_element_root-&gt;append_child( lo_element ). &quot; HeadingPairs
&quot; TitlesOfParts
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_titlesofparts
parent = lo_document ).
&quot; * vector node
lo_sub_element_vector = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_vector
prefix = lc_vt_ns
parent = lo_document ).
lv_value = excel-&gt;get_worksheets_size( ).
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_size
value = lv_value ).
lo_sub_element_vector-&gt;set_attribute_ns( name = lc_xml_attr_basetype
value = lc_xml_node_lpstr ).
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
&quot; ** lpstr node
lo_sub_element_lpstr = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_lpstr
prefix = lc_vt_ns
parent = lo_document ).
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
lv_value = lo_worksheet-&gt;title.
lo_sub_element_lpstr-&gt;set_value( lv_value ).
lo_sub_element_vector-&gt;append_child( lo_sub_element_lpstr ). &quot; lpstr node
ENDWHILE.
lo_element-&gt;append_child( lo_sub_element_vector ). &quot; vector node
lo_element_root-&gt;append_child( lo_element ). &quot; TitlesOfParts
&quot; Company
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_company
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;company.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; LinksUpToDate
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_linksuptodate
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;linksuptodate ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; SharedDoc
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_shareddoc
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;shareddoc ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; HyperlinksChanged
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_hyperlinkschanged
parent = lo_document ).
lv_value = me-&gt;flag2bool( excel-&gt;properties-&gt;hyperlinkschanged ).
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; AppVersion
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_appversion
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;appversion.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_DOCPROPS_CORE" VERSION="1" LANGU="E" DESCRIPT="Create &apos;docProps/core.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_docprops_core.
** Constant node name
DATA: lc_xml_node_coreproperties TYPE string VALUE &apos;coreProperties&apos;,
lc_xml_node_creator TYPE string VALUE &apos;creator&apos;,
lc_xml_node_lastmodifiedby TYPE string VALUE &apos;lastModifiedBy&apos;,
lc_xml_node_created TYPE string VALUE &apos;created&apos;,
lc_xml_node_modified TYPE string VALUE &apos;modified&apos;,
&quot; Node attributes
lc_xml_attr_type TYPE string VALUE &apos;type&apos;,
lc_xml_attr_target TYPE string VALUE &apos;dcterms:W3CDTF&apos;,
&quot; Node namespace
lc_cp_ns TYPE string VALUE &apos;cp&apos;,
lc_dc_ns TYPE string VALUE &apos;dc&apos;,
lc_dcterms_ns TYPE string VALUE &apos;dcterms&apos;,
lc_dcmitype_ns TYPE string VALUE &apos;dcmitype&apos;,
lc_xsi_ns TYPE string VALUE &apos;xsi&apos;,
lc_xml_node_cp_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/metadata/core-properties&apos;,
lc_xml_node_dc_ns TYPE string VALUE &apos;http://purl.org/dc/elements/1.1/&apos;,
lc_xml_node_dcterms_ns TYPE string VALUE &apos;http://purl.org/dc/terms/&apos;,
lc_xml_node_dcmitype_ns TYPE string VALUE &apos;http://purl.org/dc/dcmitype/&apos;,
lc_xml_node_xsi_ns TYPE string VALUE &apos;http://www.w3.org/2001/XMLSchema-instance&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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_value TYPE string.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node coreProperties
lo_element_root = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_coreproperties
prefix = lc_cp_ns
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:cp&apos;
value = lc_xml_node_cp_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:dc&apos;
value = lc_xml_node_dc_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:dcterms&apos;
value = lc_xml_node_dcterms_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:dcmitype&apos;
value = lc_xml_node_dcmitype_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:xsi&apos;
value = lc_xml_node_xsi_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Creator node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_creator
prefix = lc_dc_ns
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;creator.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; lastModifiedBy node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_lastmodifiedby
prefix = lc_cp_ns
parent = lo_document ).
lv_value = excel-&gt;properties-&gt;lastmodifiedby.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Created node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_created
prefix = lc_dcterms_ns
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
prefix = lc_xsi_ns
value = lc_xml_attr_target ).
lv_value = excel-&gt;properties-&gt;created.
lv_value = &apos;2010-07-04T14:58:53Z&apos;.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Modified node
lo_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_modified
prefix = lc_dcterms_ns
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
prefix = lc_xsi_ns
value = lc_xml_attr_target ).
lv_value = excel-&gt;properties-&gt;modified.
lv_value = &apos;2010-07-04T14:58:53Z&apos;.
lo_element-&gt;set_value( lv_value ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_RELATIONSHIPS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;_rels/.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD CREATE_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 namespace
lc_xml_node_rels_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships&apos;,
&quot; Node id
lc_xml_node_rId1_id TYPE string VALUE &apos;rId1&apos;,
lc_xml_node_rId2_id TYPE string VALUE &apos;rId2&apos;,
lc_xml_node_rId3_id TYPE string VALUE &apos;rId3&apos;,
&quot; Node type
lc_xml_node_rId1_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument&apos;,
lc_xml_node_rId2_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships/metadata/core-properties&apos;,
lc_xml_node_rId3_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/extended-properties&apos;,
&quot; Node target
lc_xml_node_rId1_tg TYPE string VALUE &apos;xl/workbook.xml&apos;,
lc_xml_node_rId2_tg TYPE string VALUE &apos;docProps/core.xml&apos;,
lc_xml_node_rId3_tg TYPE string VALUE &apos;docProps/app.xml&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_relationships
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_rels_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Theme node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rId3_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rId3_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rId3_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Styles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rId2_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rId2_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rId2_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; rels node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rId1_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rId1_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rId1_tg ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_CALCCHAIN" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/calcChain.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_CALCCHAIN" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_calcchain.
** Constant node name
DATA: lc_xml_node_calcchain TYPE string VALUE &apos;calcChain&apos;,
lc_xml_node_c TYPE string VALUE &apos;c&apos;,
&quot; Node attributes
lc_xml_attr_r TYPE string VALUE &apos;r&apos;,
lc_xml_attr_i TYPE string VALUE &apos;i&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_value TYPE string,
lv_value_i TYPE string,
lv_sheets_count TYPE i.
FIELD-SYMBOLS: &lt;ls_sheet_content&gt; TYPE zexcel_s_cell_data.
**********************************************************************
* STEP 1: Create xl/calcChain.xml
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;UTF-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node calcChain
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_calcchain
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
**********************************************************************
* STEP 4: Create subnodes
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
ADD 1 TO lv_sheets_count.
MOVE lv_sheets_count TO lv_value_i.
SHIFT lv_value_i RIGHT DELETING TRAILING space.
SHIFT lv_value_i LEFT DELETING LEADING space.
LOOP AT lo_worksheet-&gt;sheet_content ASSIGNING &lt;ls_sheet_content&gt; WHERE cell_formula IS NOT INITIAL.
&quot; formula chain node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_c
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_r
value = lv_value ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_i
value = lv_value_i ).
lo_element_root-&gt;append_child( lo_element ).
ENDLOOP.
ENDWHILE.
**********************************************************************
* STEP 5: Create xstring stream
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="1" LANGU="E" DESCRIPT="Create &apos;xl/_rels/workbook.xml.rels&apos;" EXPOSURE="0" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<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 namespace
lc_xml_node_rels_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;,
&quot; Node type
lc_xml_node_rid_sheet_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet&apos;,
lc_xml_node_rid_theme_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/theme&apos;,
lc_xml_node_rid_styles_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles&apos;,
lc_xml_node_rid_shared_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/sharedStrings&apos;,
lc_xml_node_rid_calcchain_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/calcChain&apos;,
&quot; Node target
lc_xml_node_ridx_tg TYPE string VALUE &apos;worksheets/sheet#.xml&apos;,
lc_xml_node_rid_shared_tg TYPE string VALUE &apos;sharedStrings.xml&apos;,
lc_xml_node_rid_styles_tg TYPE string VALUE &apos;styles.xml&apos;,
lc_xml_node_rid_theme_tg TYPE string VALUE &apos;theme/theme1.xml&apos;,
lc_xml_node_rid_calcchain_tg TYPE string VALUE &apos;calcChain.xml&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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_syindex(2) TYPE c.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_relationships
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_rels_ns ).
**********************************************************************
* STEP 4: Create subnodes
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 ).
lv_size = lv_size + 2.
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_styles_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_styles_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lv_size = lv_size - 1.
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_theme_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_theme_tg ).
lo_element_root-&gt;append_child( lo_element ).
lv_size = excel-&gt;get_worksheets_size( ).
DO lv_size TIMES.
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lv_xml_node_ridx_id = lc_xml_node_ridx_id.
lv_xml_node_ridx_tg = lc_xml_node_ridx_tg.
lv_syindex = sy-index.
SHIFT lv_syindex RIGHT DELETING TRAILING space.
SHIFT lv_syindex LEFT DELETING LEADING space.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_ridx_id WITH lv_syindex.
REPLACE ALL OCCURRENCES OF &apos;#&apos; IN lv_xml_node_ridx_tg 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_sheet_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lv_xml_node_ridx_tg ).
lo_element_root-&gt;append_child( lo_element ).
ENDDO.
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
ADD 3 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_shared_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_shared_tg ).
lo_element_root-&gt;append_child( lo_element ).
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
ADD 1 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_calcchain_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_calcchain_tg ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_SHAREDSTRINGS" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/sharedStrings.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_sharedstrings.
** Constant node name
DATA: lc_xml_node_sst TYPE string VALUE &apos;sst&apos;,
lc_xml_node_si TYPE string VALUE &apos;si&apos;,
lc_xml_node_t TYPE string VALUE &apos;t&apos;,
&quot; Node attributes
lc_xml_attr_count TYPE string VALUE &apos;count&apos;,
lc_xml_attr_uniquecount TYPE string VALUE &apos;uniqueCount&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lt_cell_data TYPE zexcel_t_cell_data_unsorted,
ls_shared_string TYPE zexcel_s_shared_string,
lv_value TYPE string,
lv_count_str TYPE string,
lv_uniquecount_str TYPE string,
lv_sytabix TYPE sytabix,
lv_count TYPE i,
lv_uniquecount TYPE i.
FIELD-SYMBOLS: &lt;fs_sheet_content&gt; TYPE zexcel_s_cell_data,
&lt;fs_sheet_string&gt; TYPE zexcel_s_shared_string.
**********************************************************************
* STEP 1: Collect strings from each worksheet
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
APPEND LINES OF lo_worksheet-&gt;sheet_content TO lt_cell_data.
ENDWHILE.
DELETE lt_cell_data WHERE cell_formula IS NOT INITIAL. &quot; delete formula content
DESCRIBE TABLE lt_cell_data LINES lv_count.
MOVE lv_count TO lv_count_str.
SHIFT lv_count_str RIGHT DELETING TRAILING space.
SHIFT lv_count_str LEFT DELETING LEADING space.
SORT lt_cell_data BY cell_value.
DELETE ADJACENT DUPLICATES FROM lt_cell_data COMPARING cell_value.
DESCRIBE TABLE lt_cell_data LINES lv_uniquecount.
MOVE lv_uniquecount TO lv_uniquecount_str.
SHIFT lv_uniquecount_str RIGHT DELETING TRAILING space.
SHIFT lv_uniquecount_str LEFT DELETING LEADING space.
LOOP AT lt_cell_data ASSIGNING &lt;fs_sheet_content&gt;.
lv_sytabix = sy-tabix - 1.
MOVE lv_sytabix TO ls_shared_string-string_no.
MOVE &lt;fs_sheet_content&gt;-cell_value TO ls_shared_string-string_value.
APPEND ls_shared_string TO shared_strings.
ENDLOOP.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_sst
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
lo_element_root-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_count_str ).
lo_element_root-&gt;set_attribute_ns( name = lc_xml_attr_uniquecount
value = lv_uniquecount_str ).
**********************************************************************
* STEP 4: Create subnode
LOOP AT shared_strings ASSIGNING &lt;fs_sheet_string&gt;.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_si
parent = lo_document ).
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_t
parent = lo_document ).
lo_sub_element-&gt;set_value( &lt;fs_sheet_string&gt;-string_value ).
lo_element-&gt;append_child( lo_sub_element ).
lo_element_root-&gt;append_child( lo_element ).
ENDLOOP.
**********************************************************************
* STEP 5: Create xstring stream
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="1" LANGU="E" DESCRIPT="Create &apos;xl/sheet.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" 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="20100702" CHANGEDON="00000000" 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="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100702" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_sheet.
** Constant node name
DATA: lc_xml_node_worksheet TYPE string VALUE &apos;worksheet&apos;,
lc_xml_node_dimension TYPE string VALUE &apos;dimension&apos;,
lc_xml_node_sheetviews TYPE string VALUE &apos;sheetViews&apos;,
lc_xml_node_sheetview TYPE string VALUE &apos;sheetView&apos;,
lc_xml_node_selection TYPE string VALUE &apos;selection&apos;,
lc_xml_node_sheetformatpr TYPE string VALUE &apos;sheetFormatPr&apos;,
lc_xml_node_sheetdata TYPE string VALUE &apos;sheetData&apos;,
lc_xml_node_row TYPE string VALUE &apos;row&apos;,
lc_xml_node_c TYPE string VALUE &apos;c&apos;,
lc_xml_node_v TYPE string VALUE &apos;v&apos;,
lc_xml_node_f TYPE string VALUE &apos;f&apos;,
lc_xml_node_pagemargins TYPE string VALUE &apos;pageMargins&apos;,
lc_xml_node_condformatting TYPE string VALUE &apos;conditionalFormatting&apos;,
lc_xml_node_cfrule TYPE string VALUE &apos;cfRule&apos;,
lc_xml_node_iconset TYPE string VALUE &apos;iconSet&apos;,
lc_xml_node_cfvo TYPE string VALUE &apos;cfvo&apos;,
lc_xml_node_formula TYPE string VALUE &apos;formula&apos;,
&quot; Node attributes
lc_xml_attr_ref TYPE string VALUE &apos;ref&apos;,
lc_xml_attr_tabselected TYPE string VALUE &apos;tabSelected&apos;,
lc_xml_attr_workbookviewid TYPE string VALUE &apos;workbookViewId&apos;,
lc_xml_attr_activecell TYPE string VALUE &apos;activeCell&apos;,
lc_xml_attr_sqref TYPE string VALUE &apos;sqref&apos;,
lc_xml_attr_defaultrowheight TYPE string VALUE &apos;defaultRowHeight&apos;,
lc_xml_attr_r TYPE string VALUE &apos;r&apos;,
lc_xml_attr_s TYPE string VALUE &apos;s&apos;,
lc_xml_attr_spans TYPE string VALUE &apos;spans&apos;,
lc_xml_attr_t TYPE string VALUE &apos;t&apos;,
lc_xml_attr_left TYPE string VALUE &apos;left&apos;,
lc_xml_attr_right TYPE string VALUE &apos;right&apos;,
lc_xml_attr_top TYPE string VALUE &apos;top&apos;,
lc_xml_attr_bottom TYPE string VALUE &apos;bottom&apos;,
lc_xml_attr_header TYPE string VALUE &apos;header&apos;,
lc_xml_attr_footer TYPE string VALUE &apos;footer&apos;,
lc_xml_attr_type TYPE string VALUE &apos;type&apos;,
lc_xml_attr_iconset TYPE string VALUE &apos;iconSet&apos;,
lc_xml_attr_val TYPE string VALUE &apos;val&apos;,
lc_xml_attr_dxfid TYPE string VALUE &apos;dxfId&apos;,
lc_xml_attr_priority TYPE string VALUE &apos;priority&apos;,
lc_xml_attr_operator TYPE string VALUE &apos;operator&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;,
lc_xml_node_r_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_element_2 TYPE REF TO if_ixml_element,
lo_element_3 TYPE REF TO if_ixml_element,
lo_element_4 TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional.
DATA: lv_value TYPE string,
lt_percent_val TYPE TABLE OF string,
ls_percent_val TYPE string,
ls_last_row TYPE zexcel_s_cell_data,
ls_style_mapping TYPE zexcel_s_styles_mapping.
FIELD-SYMBOLS: &lt;ls_sheet_content&gt; TYPE zexcel_s_cell_data.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
***********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_worksheet
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:r&apos;
value = lc_xml_node_r_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; dimension node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_dimension
parent = lo_document ).
lv_value = io_worksheet-&gt;get_dimension_range( ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_ref
value = lv_value ).
lo_element_root-&gt;append_child( lo_element ).
&quot; sheetViews node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetviews
parent = lo_document ).
&quot; sheetView node
lo_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetview
parent = lo_document ).
IF iv_active EQ abap_true.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_tabselected
value = &apos;1&apos; ).
ENDIF.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_workbookviewid
value = &apos;0&apos; ).
&quot; selection node
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_selection
parent = lo_document ).
lv_value = io_worksheet-&gt;get_active_cell( ).
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_activecell
value = lv_value ).
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_sqref
value = lv_value ).
lo_element_2-&gt;append_child( lo_element_3 ). &quot; sheetView node
lo_element-&gt;append_child( lo_element_2 ). &quot; sheetView node
lo_element_root-&gt;append_child( lo_element ). &quot; sheetViews node
&quot; sheetFormatPr node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetformatpr
parent = lo_document ).
lv_value = io_worksheet-&gt;defaultrowheight.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_defaultrowheight
value = lv_value ).
lo_element_root-&gt;append_child( lo_element ). &quot; sheetFormatPr node
&quot; sheetData node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheetdata
parent = lo_document ).
LOOP AT io_worksheet-&gt;sheet_content ASSIGNING &lt;ls_sheet_content&gt;.
CLEAR ls_style_mapping.
IF ls_last_row-cell_row NE &lt;ls_sheet_content&gt;-cell_row.
lo_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_row
parent = lo_document ).
lv_value = &lt;ls_sheet_content&gt;-cell_row.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_r
value = lv_value ).
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_spans
value = &apos;1:1&apos; ). &quot; &lt;*******************************
ENDIF.
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_c
parent = lo_document ).
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_r
value = &lt;ls_sheet_content&gt;-cell_coords ).
IF &lt;ls_sheet_content&gt;-cell_style IS NOT INITIAL.
READ TABLE styles_mapping INTO ls_style_mapping WITH KEY guid = &lt;ls_sheet_content&gt;-cell_style.
lv_value = ls_style_mapping-style.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_s
value = lv_value ).
ENDIF.
IF ls_style_mapping-cell_format IS INITIAL. &quot; to avoid errors if no style has been created
IF &lt;ls_sheet_content&gt;-cell_formula IS INITIAL.
ls_style_mapping-cell_format = &apos;S&apos;.
ELSE.
ls_style_mapping-cell_format = &apos;F&apos;.
ENDIF.
ENDIF.
&quot; is a shared string and is not a formula
IF ls_style_mapping-cell_format EQ &apos;S&apos;.
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_t
value = &apos;s&apos; ).
ENDIF.
IF &lt;ls_sheet_content&gt;-cell_formula IS NOT INITIAL.
&quot; fomula node
lo_element_4 = lo_document-&gt;create_simple_element( name = lc_xml_node_f
parent = lo_document ).
lv_value = &lt;ls_sheet_content&gt;-cell_formula.
lo_element_4-&gt;set_value( lv_value ).
lo_element_3-&gt;append_child( lo_element_4 ). &quot; fomula node
ENDIF.
&quot; value node
lo_element_4 = lo_document-&gt;create_simple_element( name = lc_xml_node_v
parent = lo_document ).
IF ls_style_mapping-cell_format EQ &apos;S&apos;.
lv_value = me-&gt;get_shared_string_index( &lt;ls_sheet_content&gt;-cell_value ).
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_4-&gt;set_value( lv_value ).
ELSE.
lv_value = &lt;ls_sheet_content&gt;-cell_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_4-&gt;set_value( lv_value ).
ENDIF.
lo_element_3-&gt;append_child( lo_element_4 ). &quot; value node
lo_element_2-&gt;append_child( lo_element_3 ). &quot; column node
IF ls_last_row-cell_row NE &lt;ls_sheet_content&gt;-cell_row.
lo_element-&gt;append_child( lo_element_2 ). &quot; row node
ls_last_row = &lt;ls_sheet_content&gt;.
ENDIF.
ENDLOOP.
lo_element_root-&gt;append_child( lo_element ). &quot; sheetData node
&quot; Conditional formatting node
lo_iterator = io_worksheet-&gt;get_cond_styles_iterator( ).
WHILE lo_iterator-&gt;has_next( ) EQ abap_true.
lo_style_conditional ?= lo_iterator-&gt;get_next( ).
IF lo_style_conditional-&gt;rule IS INITIAL.
CONTINUE.
ENDIF.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_condformatting
parent = lo_document ).
lv_value = lo_style_conditional-&gt;get_dimension_range( ) .
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_sqref
value = lv_value ).
&quot; cfRule node
lo_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_cfrule
parent = lo_document ).
lv_value = lo_style_conditional-&gt;rule.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lv_value ).
lv_value = lo_style_conditional-&gt;priority.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_priority
value = lv_value ).
CASE lo_style_conditional-&gt;rule.
WHEN zcl_excel_style_conditional=&gt;c_rule_iconset.
CLEAR lt_percent_val.
&quot; iconset node
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_iconset
parent = lo_document ).
IF lo_style_conditional-&gt;iconset NE zcl_excel_style_conditional=&gt;c_iconset_3trafficlights.
lv_value = lo_style_conditional-&gt;iconset.
lo_element_3-&gt;set_attribute_ns( name = lc_xml_attr_iconset
value = lv_value ).
ENDIF.
CASE lo_style_conditional-&gt;iconset.
WHEN zcl_excel_style_conditional=&gt;c_iconset_3trafficlights2 OR
zcl_excel_style_conditional=&gt;c_iconset_3arrows OR
zcl_excel_style_conditional=&gt;c_iconset_3arrowsgray OR
zcl_excel_style_conditional=&gt;c_iconset_3flags OR
zcl_excel_style_conditional=&gt;c_iconset_3signs OR
zcl_excel_style_conditional=&gt;c_iconset_3symbols OR
zcl_excel_style_conditional=&gt;c_iconset_3symbols2 OR
zcl_excel_style_conditional=&gt;c_iconset_3trafficlights OR
zcl_excel_style_conditional=&gt;c_iconset_3trafficlights2.
APPEND &apos;0&apos; TO lt_percent_val.
APPEND &apos;33&apos; TO lt_percent_val.
APPEND &apos;67&apos; TO lt_percent_val.
WHEN zcl_excel_style_conditional=&gt;c_iconset_4arrows OR
zcl_excel_style_conditional=&gt;c_iconset_4arrowsgray OR
zcl_excel_style_conditional=&gt;c_iconset_4rating OR
zcl_excel_style_conditional=&gt;c_iconset_4redtoblack OR
zcl_excel_style_conditional=&gt;c_iconset_4trafficlights.
APPEND &apos;0&apos; TO lt_percent_val.
APPEND &apos;25&apos; TO lt_percent_val.
APPEND &apos;50&apos; TO lt_percent_val.
APPEND &apos;75&apos; TO lt_percent_val.
WHEN zcl_excel_style_conditional=&gt;c_iconset_5arrows OR
zcl_excel_style_conditional=&gt;c_iconset_5arrowsgray OR
zcl_excel_style_conditional=&gt;c_iconset_5quarters OR
zcl_excel_style_conditional=&gt;c_iconset_5rating.
APPEND &apos;0&apos; TO lt_percent_val.
APPEND &apos;20&apos; TO lt_percent_val.
APPEND &apos;40&apos; TO lt_percent_val.
APPEND &apos;60&apos; TO lt_percent_val.
APPEND &apos;80&apos; TO lt_percent_val.
WHEN OTHERS.
CLEAR lt_percent_val.
ENDCASE.
LOOP AT lt_percent_val INTO ls_percent_val.
&quot; cfvo node
lo_element_4 = lo_document-&gt;create_simple_element( name = lc_xml_node_cfvo
parent = lo_document ).
lo_element_4-&gt;set_attribute_ns( name = lc_xml_attr_type
value = &apos;percent&apos; ).
lo_element_4-&gt;set_attribute_ns( name = lc_xml_attr_val
value = ls_percent_val ).
lo_element_3-&gt;append_child( lo_element_4 ). &quot; cfvo node
ENDLOOP.
lo_element_2-&gt;append_child( lo_element_3 ). &quot; iconset node
WHEN zcl_excel_style_conditional=&gt;c_rule_cellis.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_dxfid
value = &apos;0&apos; ). &quot; @TODO &lt;*****************************
lv_value = lo_style_conditional-&gt;operator.
lo_element_2-&gt;set_attribute_ns( name = lc_xml_attr_operator
value = lv_value ).
&quot; formula node
lo_element_3 = lo_document-&gt;create_simple_element( name = lc_xml_node_formula
parent = lo_document ).
lv_value = lo_style_conditional-&gt;formula.
lo_element_3-&gt;set_value( lv_value ).
lo_element_2-&gt;append_child( lo_element_3 ). &quot; formula node
ENDCASE.
lo_element-&gt;append_child( lo_element_2 ). &quot; cfRule node
lo_element_root-&gt;append_child( lo_element ). &quot; Conditional formatting node
ENDWHILE.
&quot; pageMargins node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_pagemargins
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_left
value = &apos;0.7&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_right
value = &apos;0.7&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_top
value = &apos;0.75&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_bottom
value = &apos;0.75&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_header
value = &apos;0.3&apos; ). &quot; @TODO &lt;*****************************
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_footer
value = &apos;0.3&apos; ). &quot; @TODO &lt;*****************************
lo_element_root-&gt;append_child( lo_element ). &quot; sheetFormatPr node
**********************************************************************
* STEP 5: Create xstring stream
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_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="20100705" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="CREATE_XL_SHEET_RELS" SCONAME="EP_CONTENT" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100705" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_sheet_rels.
** 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 namespace
lc_xml_node_rels_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/package/2006/relationships&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;,
lc_xml_node_rid_print_id TYPE string VALUE &apos;rId1&apos;,
&quot; Node type
lc_xml_node_rid_print_tp TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships/printerSettings&apos;,
&quot; Node target
lc_xml_node_rid_print_tg TYPE string VALUE &apos;../printerSettings/printerSettings1.bin&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
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.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_relationships
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_rels_ns ).
**********************************************************************
* STEP 4: Create subnodes
&quot; Relationship node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_relationship
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_id
value = lc_xml_node_rid_print_id ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_type
value = lc_xml_node_rid_print_tp ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_target
value = lc_xml_node_rid_print_tg ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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_STYLES" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/styles.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="12 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_styles.
** Constant node name
DATA: lc_xml_node_stylesheet TYPE string VALUE &apos;styleSheet&apos;,
&quot; font
lc_xml_node_fonts TYPE string VALUE &apos;fonts&apos;,
lc_xml_node_font TYPE string VALUE &apos;font&apos;,
lc_xml_node_b TYPE string VALUE &apos;b&apos;, &quot;bold
lc_xml_node_i TYPE string VALUE &apos;i&apos;, &quot;italic
lc_xml_node_u TYPE string VALUE &apos;u&apos;, &quot;underline
lc_xml_node_strike TYPE string VALUE &apos;strike&apos;, &quot;strikethrough
lc_xml_node_sz TYPE string VALUE &apos;sz&apos;,
lc_xml_node_color TYPE string VALUE &apos;color&apos;,
lc_xml_node_name TYPE string VALUE &apos;name&apos;,
lc_xml_node_family TYPE string VALUE &apos;family&apos;,
lc_xml_node_scheme TYPE string VALUE &apos;scheme&apos;,
&quot; fill
lc_xml_node_fills TYPE string VALUE &apos;fills&apos;,
lc_xml_node_fill TYPE string VALUE &apos;fill&apos;,
lc_xml_node_patternfill TYPE string VALUE &apos;patternFill&apos;,
lc_xml_node_fgcolor TYPE string VALUE &apos;fgColor&apos;,
lc_xml_node_bgcolor TYPE string VALUE &apos;bgColor&apos;,
lc_xml_node_gradientfill TYPE string VALUE &apos;gradientFill&apos;,
lc_xml_node_stop TYPE string VALUE &apos;stop&apos;,
&quot; borders
lc_xml_node_borders TYPE string VALUE &apos;borders&apos;,
lc_xml_node_border TYPE string VALUE &apos;border&apos;,
lc_xml_node_left TYPE string VALUE &apos;left&apos;,
lc_xml_node_right TYPE string VALUE &apos;right&apos;,
lc_xml_node_top TYPE string VALUE &apos;top&apos;,
lc_xml_node_bottom TYPE string VALUE &apos;bottom&apos;,
lc_xml_node_diagonal TYPE string VALUE &apos;diagonal&apos;,
&quot; Styles
lc_xml_node_cellstylexfs TYPE string VALUE &apos;cellStyleXfs&apos;,
lc_xml_node_xf TYPE string VALUE &apos;xf&apos;,
lc_xml_node_cellxfs TYPE string VALUE &apos;cellXfs&apos;,
lc_xml_node_cellstyles TYPE string VALUE &apos;cellStyles&apos;,
lc_xml_node_cellstyle TYPE string VALUE &apos;cellStyle&apos;,
lc_xml_node_dxfs TYPE string VALUE &apos;dxfs&apos;,
lc_xml_node_tablestyles TYPE string VALUE &apos;tableStyles&apos;,
&quot; Colors
lc_xml_node_colors TYPE string VALUE &apos;colors&apos;,
lc_xml_node_mrucolors TYPE string VALUE &apos;mruColors&apos;,
&quot; Node attributes
lc_xml_attr_count TYPE string VALUE &apos;count&apos;,
lc_xml_attr_val TYPE string VALUE &apos;val&apos;,
lc_xml_attr_theme TYPE string VALUE &apos;theme&apos;,
lc_xml_attr_rgb TYPE string VALUE &apos;rgb&apos;,
lc_xml_attr_indexed TYPE string VALUE &apos;indexed&apos;,
lc_xml_attr_style TYPE string VALUE &apos;style&apos;,
lc_xml_attr_position TYPE string VALUE &apos;position&apos;,
lc_xml_attr_degree TYPE string VALUE &apos;degree&apos;,
lc_xml_attr_patterntype TYPE string VALUE &apos;patternType&apos;,
lc_xml_attr_numfmtid TYPE string VALUE &apos;numFmtId&apos;,
lc_xml_attr_fontid TYPE string VALUE &apos;fontId&apos;,
lc_xml_attr_fillid TYPE string VALUE &apos;fillId&apos;,
lc_xml_attr_borderid TYPE string VALUE &apos;borderId&apos;,
lc_xml_attr_xfid TYPE string VALUE &apos;xfId&apos;,
lc_xml_attr_applynumberformat TYPE string VALUE &apos;applyNumberFormat&apos;,
lc_xml_attr_applyfont TYPE string VALUE &apos;applyFont&apos;,
lc_xml_attr_applyfill TYPE string VALUE &apos;applyFill&apos;,
lc_xml_attr_applyborder TYPE string VALUE &apos;applyBorder&apos;,
lc_xml_attr_name TYPE string VALUE &apos;name&apos;,
lc_xml_attr_builtinid TYPE string VALUE &apos;builtinId&apos;,
lc_xml_attr_defaulttablestyle TYPE string VALUE &apos;defaultTableStyle&apos;,
lc_xml_attr_defaultpivotstyle TYPE string VALUE &apos;defaultPivotStyle&apos;,
&quot; Node namespace
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element_fonts TYPE REF TO if_ixml_element,
lo_element_font TYPE REF TO if_ixml_element,
lo_element_fills TYPE REF TO if_ixml_element,
lo_element_fill TYPE REF TO if_ixml_element,
lo_element_borders TYPE REF TO if_ixml_element,
lo_element_border TYPE REF TO if_ixml_element,
lo_element_cellxfs TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element TYPE REF TO if_ixml_element,
lo_sub_element_2 TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_style TYPE REF TO zcl_excel_style.
DATA: lt_fonts TYPE zexcel_t_style_font,
ls_font TYPE zexcel_s_style_font,
lt_fills TYPE zexcel_t_style_fill,
ls_fill TYPE zexcel_s_style_fill,
lt_borders TYPE zexcel_t_style_border,
ls_border TYPE zexcel_s_style_border,
ls_format TYPE zexcel_number_format,
lt_cellxfs TYPE zexcel_t_cellxfs,
ls_cellxfs TYPE zexcel_s_cellxfs,
ls_styles_mapping TYPE zexcel_s_styles_mapping,
lt_colors TYPE TABLE OF zexcel_style_color_argb,
ls_color TYPE zexcel_style_color_argb.
DATA: lv_value TYPE string,
lv_fonts_count TYPE i,
lv_fills_count TYPE i,
lv_borders_count TYPE i,
lv_cellxfs_count TYPE i.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
***********************************************************************
* STEP 3: Create main node relationships
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_stylesheet
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
**********************************************************************
* STEP 4: Create subnodes
lo_element_fonts = lo_document-&gt;create_simple_element( name = lc_xml_node_fonts
parent = lo_document ).
lo_element_fills = lo_document-&gt;create_simple_element( name = lc_xml_node_fills
parent = lo_document ).
lo_element_borders = lo_document-&gt;create_simple_element( name = lc_xml_node_borders
parent = lo_document ).
lo_element_cellxfs = lo_document-&gt;create_simple_element( name = lc_xml_node_cellxfs
parent = lo_document ).
* Compress styles
lo_iterator = excel-&gt;get_styles_iterator( ).
WHILE lo_iterator-&gt;has_next( ) EQ abap_true.
lo_style ?= lo_iterator-&gt;get_next( ).
ls_font = lo_style-&gt;font-&gt;get_structure( ).
ls_fill = lo_style-&gt;fill-&gt;get_structure( ).
ls_border = lo_style-&gt;borders-&gt;get_structure( ).
ls_format = lo_style-&gt;number_format-&gt;get_structure( ).
* Compress fonts
READ TABLE lt_fonts FROM ls_font TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_cellxfs-fontid = sy-tabix.
ELSE.
APPEND ls_font TO lt_fonts.
DESCRIBE TABLE lt_fonts LINES ls_cellxfs-fontid.
ENDIF.
SUBTRACT 1 FROM ls_cellxfs-fontid.
* Compress fills
READ TABLE lt_fills FROM ls_fill TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_cellxfs-fillid = sy-tabix.
ELSE.
APPEND ls_fill TO lt_fills.
DESCRIBE TABLE lt_fills LINES ls_cellxfs-fillid.
ENDIF.
SUBTRACT 1 FROM ls_cellxfs-fillid.
* Compress borders
READ TABLE lt_borders FROM ls_border TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_cellxfs-borderid = sy-tabix.
ELSE.
APPEND ls_border TO lt_borders.
DESCRIBE TABLE lt_borders LINES ls_cellxfs-borderid.
ENDIF.
SUBTRACT 1 FROM ls_cellxfs-borderid.
IF ls_format IS INITIAL.
ls_cellxfs-numfmtid = 0. &quot; number format
ELSE.
ls_cellxfs-numfmtid = ls_format. &quot; number format
ENDIF.
ls_cellxfs-xfid = 0.
IF ls_format IS NOT INITIAL.
ls_cellxfs-applynumberformat = 1.
ls_styles_mapping-cell_format = &apos;I&apos;.
ELSE.
ls_cellxfs-applynumberformat = 0.
ls_styles_mapping-cell_format = &apos;S&apos;.
ENDIF.
IF ls_cellxfs-fontid NE 0.
ls_cellxfs-applyfont = 1.
ELSE.
ls_cellxfs-applyfont = 0.
ENDIF.
IF ls_cellxfs-fillid NE 0.
ls_cellxfs-applyfill = 1.
ELSE.
ls_cellxfs-applyfill = 0.
ENDIF.
IF ls_cellxfs-borderid NE 0.
ls_cellxfs-applyborder = 1.
ELSE.
ls_cellxfs-applyborder = 0.
ENDIF.
* Remap styles
READ TABLE lt_cellxfs FROM ls_cellxfs TRANSPORTING NO FIELDS.
IF sy-subrc EQ 0.
ls_styles_mapping-style = sy-tabix.
ELSE.
APPEND ls_cellxfs TO lt_cellxfs.
DESCRIBE TABLE lt_cellxfs LINES ls_styles_mapping-style.
ENDIF.
SUBTRACT 1 FROM ls_styles_mapping-style.
ls_styles_mapping-guid = lo_style-&gt;get_guid( ).
APPEND ls_styles_mapping TO me-&gt;styles_mapping.
ENDWHILE.
&quot; create font elements
LOOP AT lt_fonts INTO ls_font.
lo_element_font = lo_document-&gt;create_simple_element( name = lc_xml_node_font
parent = lo_document ).
IF ls_font-bold EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_b
parent = lo_document ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
IF ls_font-italic EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_i
parent = lo_document ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
IF ls_font-underline EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_u
parent = lo_document ).
lv_value = ls_font-underline_mode.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
IF ls_font-strikethrough EQ abap_true.
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_strike
parent = lo_document ).
lo_element_font-&gt;append_child( lo_sub_element ).
ENDIF.
&quot;size
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sz
parent = lo_document ).
lv_value = ls_font-size.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;color
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_font-color.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;name
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_name
parent = lo_document ).
lv_value = ls_font-name.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;family
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_family
parent = lo_document ).
lv_value = ls_font-family.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
&quot;scheme
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_scheme
parent = lo_document ).
lv_value = ls_font-scheme.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_val
value = lv_value ).
lo_element_font-&gt;append_child( lo_sub_element ).
lo_element_fonts-&gt;append_child( lo_element_font ).
&quot; Collect color
APPEND ls_font-color TO lt_colors.
ENDLOOP.
&quot; create fill elements
LOOP AT lt_fills INTO ls_fill.
lo_element_fill = lo_document-&gt;create_simple_element( name = lc_xml_node_fill
parent = lo_document ).
&quot;pattern
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_patternfill
parent = lo_document ).
lv_value = ls_fill-filltype.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_patterntype
value = lv_value ).
&quot; fgcolor
IF ls_fill-fgcolor IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_fgcolor
parent = lo_document ).
lv_value = ls_fill-fgcolor.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; fgcolor
ENDIF.
&quot; bgcolor
IF ls_fill-bgcolor IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_bgcolor
parent = lo_document ).
lv_value = ls_fill-bgcolor.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_indexed
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; bgcolor
ENDIF.
lo_element_fill-&gt;append_child( lo_sub_element ).&quot;pattern
lo_element_fills-&gt;append_child( lo_element_fill ).
&quot; Collect color
IF ls_fill-fgcolor IS NOT INITIAL.
APPEND ls_fill-fgcolor TO lt_colors.
ENDIF.
ENDLOOP.
&quot; create border elements
LOOP AT lt_borders INTO ls_border.
lo_element_border = lo_document-&gt;create_simple_element( name = lc_xml_node_border
parent = lo_document ).
&quot;left
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_left
parent = lo_document ).
IF ls_border-left_style IS NOT INITIAL.
lv_value = ls_border-left_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-left_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-left_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-left_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;right
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_right
parent = lo_document ).
IF ls_border-right_style IS NOT INITIAL.
lv_value = ls_border-right_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-right_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-right_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-right_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;top
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_top
parent = lo_document ).
IF ls_border-top_style IS NOT INITIAL.
lv_value = ls_border-top_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-top_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-top_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-top_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;bottom
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_bottom
parent = lo_document ).
IF ls_border-bottom_style IS NOT INITIAL.
lv_value = ls_border-bottom_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-bottom_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-bottom_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-bottom_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
&quot;diagonal
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_diagonal
parent = lo_document ).
IF ls_border-diagonal_style IS NOT INITIAL.
lv_value = ls_border-diagonal_style.
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_style
value = lv_value ).
ENDIF.
IF ls_border-diagonal_color IS NOT INITIAL.
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_border-diagonal_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color
* Collect color
APPEND ls_border-diagonal_color TO lt_colors.
ENDIF.
lo_element_border-&gt;append_child( lo_sub_element ).
lo_element_borders-&gt;append_child( lo_element_border ).
ENDLOOP.
&quot; update attribute &quot;count&quot;
DESCRIBE TABLE lt_fonts LINES lv_fonts_count.
MOVE lv_fonts_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_fonts-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
DESCRIBE TABLE lt_fills LINES lv_fills_count.
MOVE lv_fills_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_fills-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
DESCRIBE TABLE lt_borders LINES lv_borders_count.
MOVE lv_borders_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_borders-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
DESCRIBE TABLE lt_cellxfs LINES lv_cellxfs_count.
MOVE lv_cellxfs_count TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element_cellxfs-&gt;set_attribute_ns( name = lc_xml_attr_count
value = lv_value ).
&quot; Append to root node
lo_element_root-&gt;append_child( lo_element_fonts ).
lo_element_root-&gt;append_child( lo_element_fills ).
lo_element_root-&gt;append_child( lo_element_borders ).
&quot; cellstylexfs node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_cellstylexfs
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;1&apos; ).
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_xf
parent = lo_document ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_numfmtid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_fontid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_fillid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_borderid
value = &apos;0&apos; ).
lo_element-&gt;append_child( lo_sub_element ).
lo_element_root-&gt;append_child( lo_element ).
LOOP AT lt_cellxfs INTO ls_cellxfs.
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_xf
parent = lo_document ).
MOVE ls_cellxfs-numfmtid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_numfmtid
value = lv_value ).
MOVE ls_cellxfs-fontid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_fontid
value = lv_value ).
MOVE ls_cellxfs-fillid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_fillid
value = lv_value ).
MOVE ls_cellxfs-borderid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_borderid
value = lv_value ).
MOVE ls_cellxfs-xfid TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_xfid
value = lv_value ).
IF ls_cellxfs-applynumberformat EQ 1.
MOVE ls_cellxfs-applynumberformat TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applynumberformat
value = lv_value ).
ENDIF.
IF ls_cellxfs-applyfont EQ 1.
MOVE ls_cellxfs-applyfont TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applyfont
value = lv_value ).
ENDIF.
IF ls_cellxfs-applyfill EQ 1.
MOVE ls_cellxfs-applyfill TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applyfill
value = lv_value ).
ENDIF.
IF ls_cellxfs-applyborder EQ 1.
MOVE ls_cellxfs-applyborder TO lv_value.
SHIFT lv_value RIGHT DELETING TRAILING space.
SHIFT lv_value LEFT DELETING LEADING space.
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_applyborder
value = lv_value ).
ENDIF.
lo_element_cellxfs-&gt;append_child( lo_element ).
ENDLOOP.
lo_element_root-&gt;append_child( lo_element_cellxfs ).
&quot; cellStyles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_cellstyles
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;1&apos; ).
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_cellstyle
parent = lo_document ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_name
value = &apos;Normal&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_xfid
value = &apos;0&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_builtinid
value = &apos;0&apos; ).
lo_element-&gt;append_child( lo_sub_element ).
lo_element_root-&gt;append_child( lo_element ).
&quot; dxfs node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_dxfs
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;0&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; tableStyles node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_tablestyles
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_count
value = &apos;0&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_defaulttablestyle
value = &apos;TableStyleMedium9&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_defaultpivotstyle
value = &apos;PivotStyleLight16&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; colors node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_colors
parent = lo_document ).
&quot; mruColors node
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_mrucolors
parent = lo_document ).
SORT lt_colors.
DELETE ADJACENT DUPLICATES FROM lt_colors.
LOOP AT lt_colors INTO ls_color.
&quot; color node
lo_sub_element_2 = lo_document-&gt;create_simple_element( name = lc_xml_node_color
parent = lo_document ).
lv_value = ls_color.
lo_sub_element_2-&gt;set_attribute_ns( name = lc_xml_attr_rgb
value = lv_value ).
lo_sub_element-&gt;append_child( lo_sub_element_2 ).&quot; color node
ENDLOOP.
lo_element-&gt;append_child( lo_sub_element ).&quot; mruColors node
lo_element_root-&gt;append_child( lo_element ).&quot; colors node
**********************************************************************
* STEP 5: Create xstring stream
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_THEME" VERSION="1" LANGU="E" DESCRIPT="Create &apos;xl/theme/theme1.xml&apos;" EXPOSURE="0" STATE="1" EDITORDER="13 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_theme.
* @TODO *
DATA: lv_xl_theme TYPE string,
lv_xl_theme_01 TYPE string,
lv_xl_theme_02 TYPE string,
lv_xl_theme_03 TYPE string,
lv_xl_theme_04 TYPE string,
lv_xl_theme_05 TYPE string,
lv_xl_theme_06 TYPE string,
lv_xl_theme_07 TYPE string,
lv_xl_theme_08 TYPE string,
lv_xl_theme_09 TYPE string,
lv_xl_theme_10 TYPE string,
lv_xl_theme_11 TYPE string,
lv_xl_theme_12 TYPE string,
lv_xl_theme_13 TYPE string,
lv_xl_theme_14 TYPE string,
lv_xl_theme_15 TYPE string,
lv_xl_theme_16 TYPE string,
lv_xl_theme_17 TYPE string,
lv_xl_theme_18 TYPE string,
lv_xl_theme_19 TYPE string,
lv_xl_theme_20 TYPE string,
lv_xl_theme_21 TYPE string,
lv_xl_theme_22 TYPE string,
lv_xl_theme_23 TYPE string,
lv_xl_theme_24 TYPE string,
lv_xl_theme_25 TYPE string,
lv_xl_theme_26 TYPE string,
lv_xl_theme_27 TYPE string,
lv_xl_theme_28 TYPE string,
lv_xl_theme_29 TYPE string,
lv_xl_theme_30 TYPE string,
lv_xl_theme_31 TYPE string,
lv_xl_theme_32 TYPE string.
lv_xl_theme_01 = &apos;&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; standalone=&quot;yes&quot;?&gt;&apos;.
lv_xl_theme_02 = &apos;&lt;a:theme xmlns:a=&quot;http://schemas.openxmlformats.org/drawingml/2006/main&quot; name=&quot;Office Theme&quot;&gt;&lt;a:themeElements&gt;&lt;a:clrScheme name=&quot;Office&quot;&gt;&lt;a:dk1&gt;&lt;a:sysClr val=&quot;windowText&quot; lastClr=&quot;000000&quot;/&gt;&lt;/a:dk1&gt;&lt;a:lt1&gt;&lt;a:sysClr val=&quot;window&quot; &apos;.
lv_xl_theme_03 = &apos;lastClr=&quot;FFFFFF&quot;/&gt;&lt;/a:lt1&gt;&lt;a:dk2&gt;&lt;a:srgbClr val=&quot;1F497D&quot;/&gt;&lt;/a:dk2&gt;&lt;a:lt2&gt;&lt;a:srgbClr val=&quot;EEECE1&quot;/&gt;&lt;/a:lt2&gt;&lt;a:accent1&gt;&lt;a:srgbClr val=&quot;4F81BD&quot;/&gt;&lt;/a:accent1&gt;&lt;a:accent2&gt;&lt;a:srgbClr val=&quot;C0504D&quot;/&gt;&lt;/a:accent2&gt;&lt;a:accent3&gt;&lt;a:srgbClr &apos;.
lv_xl_theme_04 = &apos;val=&quot;9BBB59&quot;/&gt;&lt;/a:accent3&gt;&lt;a:accent4&gt;&lt;a:srgbClr val=&quot;8064A2&quot;/&gt;&lt;/a:accent4&gt;&lt;a:accent5&gt;&lt;a:srgbClr val=&quot;4BACC6&quot;/&gt;&lt;/a:accent5&gt;&lt;a:accent6&gt;&lt;a:srgbClr val=&quot;F79646&quot;/&gt;&lt;/a:accent6&gt;&lt;a:hlink&gt;&lt;a:srgbClr val=&quot;0000FF&quot;/&gt;&lt;/a:hlink&gt;&lt;a:folHlink&gt;&apos;.
lv_xl_theme_05 = &apos;&lt;a:srgbClr val=&quot;800080&quot;/&gt;&lt;/a:folHlink&gt;&lt;/a:clrScheme&gt;&lt;a:fontScheme name=&quot;Office&quot;&gt;&lt;a:majorFont&gt;&lt;a:latin typeface=&quot;Cambria&quot;/&gt;&lt;a:ea typeface=&quot;&quot;/&gt;&lt;a:cs typeface=&quot;&quot;/&gt;&apos;.
lv_xl_theme_06 = &apos;&lt;a:font script=&quot;Arab&quot; typeface=&quot;Times New Roman&quot;/&gt;&lt;a:font script=&quot;Hebr&quot; typeface=&quot;Times New Roman&quot;/&gt;&lt;a:font script=&quot;Thai&quot; &apos;.
lv_xl_theme_07 = &apos;typeface=&quot;Tahoma&quot;/&gt;&lt;a:font script=&quot;Ethi&quot; typeface=&quot;Nyala&quot;/&gt;&lt;a:font script=&quot;Beng&quot; typeface=&quot;Vrinda&quot;/&gt;&lt;a:font script=&quot;Gujr&quot; typeface=&quot;Shruti&quot;/&gt;&lt;a:font script=&quot;Khmr&quot; typeface=&quot;MoolBoran&quot;/&gt;&lt;a:font script=&quot;Knda&quot; typeface=&quot;Tunga&quot;/&gt;&lt;a:font &apos;.
lv_xl_theme_08 = &apos;script=&quot;Guru&quot; typeface=&quot;Raavi&quot;/&gt;&lt;a:font script=&quot;Cans&quot; typeface=&quot;Euphemia&quot;/&gt;&lt;a:font script=&quot;Cher&quot; typeface=&quot;Plantagenet Cherokee&quot;/&gt;&lt;a:font script=&quot;Yiii&quot; typeface=&quot;Microsoft Yi Baiti&quot;/&gt;&lt;a:font script=&quot;Tibt&quot; &apos;.
lv_xl_theme_09 = &apos;typeface=&quot;Microsoft Himalaya&quot;/&gt;&lt;a:font script=&quot;Thaa&quot; typeface=&quot;MV Boli&quot;/&gt;&lt;a:font script=&quot;Deva&quot; typeface=&quot;Mangal&quot;/&gt;&lt;a:font script=&quot;Telu&quot; typeface=&quot;Gautami&quot;/&gt;&lt;a:font script=&quot;Taml&quot; typeface=&quot;Latha&quot;/&gt;&lt;a:font script=&quot;Syrc&quot; &apos;.
lv_xl_theme_10 = &apos;typeface=&quot;Estrangelo Edessa&quot;/&gt;&lt;a:font script=&quot;Orya&quot; typeface=&quot;Kalinga&quot;/&gt;&lt;a:font script=&quot;Mlym&quot; typeface=&quot;Kartika&quot;/&gt;&lt;a:font script=&quot;Laoo&quot; typeface=&quot;DokChampa&quot;/&gt;&lt;a:font script=&quot;Sinh&quot; typeface=&quot;Iskoola Pota&quot;/&gt;&lt;a:font script=&quot;Mong&quot; &apos;.
lv_xl_theme_11 = &apos;typeface=&quot;Mongolian Baiti&quot;/&gt;&lt;a:font script=&quot;Viet&quot; typeface=&quot;Times New Roman&quot;/&gt;&lt;a:font script=&quot;Uigh&quot; typeface=&quot;Microsoft Uighur&quot;/&gt;&lt;/a:majorFont&gt;&lt;a:minorFont&gt;&lt;a:latin typeface=&quot;Calibri&quot;/&gt;&lt;a:ea typeface=&quot;&quot;/&gt;&lt;a:cs typeface=&quot;&quot;/&gt;&apos;.
lv_xl_theme_12 = &apos;&lt;a:font script=&quot;Arab&quot; typeface=&quot;Arial&quot;/&gt;&lt;a:font script=&quot;Hebr&quot; &apos;.
lv_xl_theme_13 = &apos;typeface=&quot;Arial&quot;/&gt;&lt;a:font script=&quot;Thai&quot; typeface=&quot;Tahoma&quot;/&gt;&lt;a:font script=&quot;Ethi&quot; typeface=&quot;Nyala&quot;/&gt;&lt;a:font script=&quot;Beng&quot; typeface=&quot;Vrinda&quot;/&gt;&lt;a:font script=&quot;Gujr&quot; typeface=&quot;Shruti&quot;/&gt;&lt;a:font script=&quot;Khmr&quot; typeface=&quot;DaunPenh&quot;/&gt;&lt;a:font &apos;.
lv_xl_theme_14 = &apos;script=&quot;Knda&quot; typeface=&quot;Tunga&quot;/&gt;&lt;a:font script=&quot;Guru&quot; typeface=&quot;Raavi&quot;/&gt;&lt;a:font script=&quot;Cans&quot; typeface=&quot;Euphemia&quot;/&gt;&lt;a:font script=&quot;Cher&quot; typeface=&quot;Plantagenet Cherokee&quot;/&gt;&lt;a:font script=&quot;Yiii&quot; typeface=&quot;Microsoft Yi Baiti&quot;/&gt;&lt;a:font &apos;.
lv_xl_theme_15 = &apos;script=&quot;Tibt&quot; typeface=&quot;Microsoft Himalaya&quot;/&gt;&lt;a:font script=&quot;Thaa&quot; typeface=&quot;MV Boli&quot;/&gt;&lt;a:font script=&quot;Deva&quot; typeface=&quot;Mangal&quot;/&gt;&lt;a:font script=&quot;Telu&quot; typeface=&quot;Gautami&quot;/&gt;&lt;a:font script=&quot;Taml&quot; typeface=&quot;Latha&quot;/&gt;&lt;a:font script=&quot;Syrc&quot; &apos;.
lv_xl_theme_16 = &apos;typeface=&quot;Estrangelo Edessa&quot;/&gt;&lt;a:font script=&quot;Orya&quot; typeface=&quot;Kalinga&quot;/&gt;&lt;a:font script=&quot;Mlym&quot; typeface=&quot;Kartika&quot;/&gt;&lt;a:font script=&quot;Laoo&quot; typeface=&quot;DokChampa&quot;/&gt;&lt;a:font script=&quot;Sinh&quot; typeface=&quot;Iskoola Pota&quot;/&gt;&lt;a:font script=&quot;Mong&quot; &apos;.
lv_xl_theme_17 = &apos;typeface=&quot;Mongolian Baiti&quot;/&gt;&lt;a:font script=&quot;Viet&quot; typeface=&quot;Arial&quot;/&gt;&lt;a:font script=&quot;Uigh&quot; typeface=&quot;Microsoft Uighur&quot;/&gt;&lt;/a:minorFont&gt;&lt;/a:fontScheme&gt;&lt;a:fmtScheme name=&quot;Office&quot;&gt;&lt;a:fillStyleLst&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;/&gt;&apos;.
lv_xl_theme_18 = &apos;&lt;/a:solidFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;50000&quot;/&gt;&lt;a:satMod val=&quot;300000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;35000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;37000&quot;/&gt;&lt;a:satMod &apos;.
lv_xl_theme_19 = &apos;val=&quot;300000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;100000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;15000&quot;/&gt;&lt;a:satMod val=&quot;350000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:lin ang=&quot;16200000&quot; scaled=&quot;1&quot;/&gt;&lt;/a:gradFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&apos;.
lv_xl_theme_20 = &apos;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;51000&quot;/&gt;&lt;a:satMod val=&quot;130000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;80000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;93000&quot;/&gt;&lt;a:satMod val=&quot;130000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs &apos;.
lv_xl_theme_21 = &apos;pos=&quot;100000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;94000&quot;/&gt;&lt;a:satMod val=&quot;135000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:lin ang=&quot;16200000&quot; scaled=&quot;0&quot;/&gt;&lt;/a:gradFill&gt;&lt;/a:fillStyleLst&gt;&lt;a:lnStyleLst&gt;&lt;a:ln w=&quot;9525&quot; cap=&quot;flat&quot; cmpd=&quot;sng&quot; &apos;.
lv_xl_theme_22 = &apos;algn=&quot;ctr&quot;&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;95000&quot;/&gt;&lt;a:satMod val=&quot;105000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:solidFill&gt;&lt;a:prstDash val=&quot;solid&quot;/&gt;&lt;/a:ln&gt;&lt;a:ln w=&quot;25400&quot; cap=&quot;flat&quot; cmpd=&quot;sng&quot; algn=&quot;ctr&quot;&gt;&lt;a:solidFill&gt;&lt;a:schemeClr &apos;.
lv_xl_theme_23 = &apos;val=&quot;phClr&quot;/&gt;&lt;/a:solidFill&gt;&lt;a:prstDash val=&quot;solid&quot;/&gt;&lt;/a:ln&gt;&lt;a:ln w=&quot;38100&quot; cap=&quot;flat&quot; cmpd=&quot;sng&quot; algn=&quot;ctr&quot;&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;/&gt;&lt;/a:solidFill&gt;&lt;a:prstDash val=&quot;solid&quot;/&gt;&lt;/a:ln&gt;&lt;/a:lnStyleLst&gt;&lt;a:effectStyleLst&gt;&apos;.
lv_xl_theme_24 = &apos;&lt;a:effectStyle&gt;&lt;a:effectLst&gt;&lt;a:outerShdw blurRad=&quot;40000&quot; dist=&quot;20000&quot; dir=&quot;5400000&quot; rotWithShape=&quot;0&quot;&gt;&lt;a:srgbClr val=&quot;000000&quot;&gt;&lt;a:alpha val=&quot;38000&quot;/&gt;&lt;/a:srgbClr&gt;&lt;/a:outerShdw&gt;&lt;/a:effectLst&gt;&lt;/a:effectStyle&gt;&lt;a:effectStyle&gt;&lt;a:effectLst&gt;&apos;.
lv_xl_theme_25 = &apos;&lt;a:outerShdw blurRad=&quot;40000&quot; dist=&quot;23000&quot; dir=&quot;5400000&quot; rotWithShape=&quot;0&quot;&gt;&lt;a:srgbClr val=&quot;000000&quot;&gt;&lt;a:alpha val=&quot;35000&quot;/&gt;&lt;/a:srgbClr&gt;&lt;/a:outerShdw&gt;&lt;/a:effectLst&gt;&lt;/a:effectStyle&gt;&lt;a:effectStyle&gt;&lt;a:effectLst&gt;&lt;a:outerShdw blurRad=&quot;40000&quot; &apos;.
lv_xl_theme_26 = &apos;dist=&quot;23000&quot; dir=&quot;5400000&quot; rotWithShape=&quot;0&quot;&gt;&lt;a:srgbClr val=&quot;000000&quot;&gt;&lt;a:alpha val=&quot;35000&quot;/&gt;&lt;/a:srgbClr&gt;&lt;/a:outerShdw&gt;&lt;/a:effectLst&gt;&lt;a:scene3d&gt;&lt;a:camera prst=&quot;orthographicFront&quot;&gt;&lt;a:rot lat=&quot;0&quot; lon=&quot;0&quot; rev=&quot;0&quot;/&gt;&lt;/a:camera&gt;&lt;a:lightRig &apos;.
lv_xl_theme_27 = &apos;rig=&quot;threePt&quot; dir=&quot;t&quot;&gt;&lt;a:rot lat=&quot;0&quot; lon=&quot;0&quot; rev=&quot;1200000&quot;/&gt;&lt;/a:lightRig&gt;&lt;/a:scene3d&gt;&lt;a:sp3d&gt;&lt;a:bevelT w=&quot;63500&quot; h=&quot;25400&quot;/&gt;&lt;/a:sp3d&gt;&lt;/a:effectStyle&gt;&lt;/a:effectStyleLst&gt;&lt;a:bgFillStyleLst&gt;&lt;a:solidFill&gt;&lt;a:schemeClr val=&quot;phClr&quot;/&gt;&apos;.
lv_xl_theme_28 = &apos;&lt;/a:solidFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;40000&quot;/&gt;&lt;a:satMod val=&quot;350000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;40000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;45000&quot;/&gt;&lt;a:shade &apos;.
lv_xl_theme_29 = &apos;val=&quot;99000&quot;/&gt;&lt;a:satMod val=&quot;350000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;100000&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;20000&quot;/&gt;&lt;a:satMod val=&quot;255000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:path path=&quot;circle&quot;&gt;&lt;a:fillToRect l=&quot;50000&quot; &apos;.
lv_xl_theme_30 = &apos;t=&quot;-80000&quot; r=&quot;50000&quot; b=&quot;180000&quot;/&gt;&lt;/a:path&gt;&lt;/a:gradFill&gt;&lt;a:gradFill rotWithShape=&quot;1&quot;&gt;&lt;a:gsLst&gt;&lt;a:gs pos=&quot;0&quot;&gt;&lt;a:schemeClr val=&quot;phClr&quot;&gt;&lt;a:tint val=&quot;80000&quot;/&gt;&lt;a:satMod val=&quot;300000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;a:gs pos=&quot;100000&quot;&gt;&lt;a:schemeClr &apos;.
lv_xl_theme_31 = &apos;val=&quot;phClr&quot;&gt;&lt;a:shade val=&quot;30000&quot;/&gt;&lt;a:satMod val=&quot;200000&quot;/&gt;&lt;/a:schemeClr&gt;&lt;/a:gs&gt;&lt;/a:gsLst&gt;&lt;a:path path=&quot;circle&quot;&gt;&lt;a:fillToRect l=&quot;50000&quot; t=&quot;50000&quot; r=&quot;50000&quot; b=&quot;50000&quot;/&gt;&lt;/a:path&gt;&lt;/a:gradFill&gt;&lt;/a:bgFillStyleLst&gt;&lt;/a:fmtScheme&gt;&apos;.
lv_xl_theme_32 = &apos;&lt;/a:themeElements&gt;&lt;a:objectDefaults/&gt;&lt;a:extraClrSchemeLst/&gt;&lt;/a:theme&gt;&apos;.
CONCATENATE lv_xl_theme_01 lv_xl_theme_02 lv_xl_theme_03 lv_xl_theme_04 lv_xl_theme_05 lv_xl_theme_06 lv_xl_theme_07 lv_xl_theme_08 lv_xl_theme_09 lv_xl_theme_10 lv_xl_theme_11 lv_xl_theme_12 lv_xl_theme_13 lv_xl_theme_14 lv_xl_theme_15
lv_xl_theme_16 lv_xl_theme_17 lv_xl_theme_18 lv_xl_theme_19 lv_xl_theme_20 lv_xl_theme_21 lv_xl_theme_22 lv_xl_theme_23 lv_xl_theme_24 lv_xl_theme_25 lv_xl_theme_26 lv_xl_theme_27 lv_xl_theme_28 lv_xl_theme_29 lv_xl_theme_30
lv_xl_theme_31 lv_xl_theme_32
INTO lv_xl_theme SEPARATED BY space.
CALL FUNCTION &apos;SCMS_STRING_TO_XSTRING&apos;
EXPORTING
text = lv_xl_theme
IMPORTING
buffer = ep_content.
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="14 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100702" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" 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="20100702" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD create_xl_workbook.
** Constant node name
DATA: lc_xml_node_workbook TYPE string VALUE &apos;workbook&apos;,
lc_xml_node_fileversion TYPE string VALUE &apos;fileVersion&apos;,
lc_xml_node_workbookpr TYPE string VALUE &apos;workbookPr&apos;,
lc_xml_node_bookviews TYPE string VALUE &apos;bookViews&apos;,
lc_xml_node_workbookview TYPE string VALUE &apos;workbookView&apos;,
lc_xml_node_sheets TYPE string VALUE &apos;sheets&apos;,
lc_xml_node_sheet TYPE string VALUE &apos;sheet&apos;,
lc_xml_node_calcpr TYPE string VALUE &apos;calcPr&apos;,
&quot; Node attributes
lc_xml_attr_appname TYPE string VALUE &apos;appName&apos;,
lc_xml_attr_lastedited TYPE string VALUE &apos;lastEdited&apos;,
lc_xml_attr_lowestedited TYPE string VALUE &apos;lowestEdited&apos;,
lc_xml_attr_rupbuild TYPE string VALUE &apos;rupBuild&apos;,
lc_xml_attr_themeversion TYPE string VALUE &apos;defaultThemeVersion&apos;,
lc_xml_attr_xwindow TYPE string VALUE &apos;xWindow&apos;,
lc_xml_attr_ywindow TYPE string VALUE &apos;yWindow&apos;,
lc_xml_attr_windowwidth TYPE string VALUE &apos;windowWidth&apos;,
lc_xml_attr_windowheight TYPE string VALUE &apos;windowHeight&apos;,
lc_xml_attr_name TYPE string VALUE &apos;name&apos;,
lc_xml_attr_sheetid TYPE string VALUE &apos;sheetId&apos;,
lc_xml_attr_id TYPE string VALUE &apos;id&apos;,
lc_xml_attr_calcid TYPE string VALUE &apos;calcId&apos;,
&quot; Node namespace
lc_r_ns TYPE string VALUE &apos;r&apos;,
lc_xml_node_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/spreadsheetml/2006/main&apos;,
lc_xml_node_r_ns TYPE string VALUE &apos;http://schemas.openxmlformats.org/officeDocument/2006/relationships&apos;,
&quot; Node id
lc_xml_node_ridx_id TYPE string VALUE &apos;rId#&apos;.
DATA: lo_ixml TYPE REF TO if_ixml,
lo_document TYPE REF TO if_ixml_document,
lo_element_root TYPE REF TO if_ixml_element,
lo_element TYPE REF TO if_ixml_element,
lo_sub_element TYPE REF TO if_ixml_element,
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,
lo_iterator TYPE REF TO cl_object_collection_iterator,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_xml_node_ridx_id TYPE string,
lv_value TYPE string,
lv_syindex TYPE string.
**********************************************************************
* STEP 1: Create [Content_Types].xml into the root of the ZIP
lo_ixml = cl_ixml=&gt;create( ).
**********************************************************************
* STEP 2: Set document attributes
lo_encoding = lo_ixml-&gt;create_encoding( byte_order = if_ixml_encoding=&gt;co_platform_endian
character_set = &apos;utf-8&apos; ).
lo_document = lo_ixml-&gt;create_document( ).
lo_document-&gt;set_encoding( lo_encoding ).
lo_document-&gt;set_standalone( abap_true ).
**********************************************************************
* STEP 3: Create main node
lo_element_root = lo_document-&gt;create_simple_element( name = lc_xml_node_workbook
parent = lo_document ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns&apos;
value = lc_xml_node_ns ).
lo_element_root-&gt;set_attribute_ns( name = &apos;xmlns:r&apos;
value = lc_xml_node_r_ns ).
**********************************************************************
* STEP 4: Create subnode
&quot; fileVersion node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_fileversion
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_appname
value = &apos;xl&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_lastedited
value = &apos;4&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_lowestedited
value = &apos;4&apos; ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_rupbuild
value = &apos;4506&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; fileVersion node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_workbookpr
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_themeversion
value = &apos;124226&apos; ).
lo_element_root-&gt;append_child( lo_element ).
&quot; bookviews node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_bookviews
parent = lo_document ).
&quot; bookview node
lo_sub_element = lo_document-&gt;create_simple_element( name = lc_xml_node_workbookview
parent = lo_document ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_xwindow
value = &apos;120&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_ywindow
value = &apos;120&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_windowwidth
value = &apos;19035&apos; ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_windowheight
value = &apos;8445&apos; ).
lo_element-&gt;append_child( lo_sub_element ).&quot; bookview node
lo_element_root-&gt;append_child( lo_element ).&quot; bookviews node
&quot; sheets node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_sheets
parent = lo_document ).
lo_iterator = excel-&gt;get_worksheets_iterator( ).
WHILE lo_iterator-&gt;if_object_collection_iterator~has_next( ) EQ abap_true.
&quot; sheet node
lo_sub_element = lo_document-&gt;create_simple_element_ns( name = lc_xml_node_sheet
parent = lo_document ).
lo_worksheet ?= lo_iterator-&gt;if_object_collection_iterator~get_next( ).
lv_value = lo_worksheet-&gt;title.
lv_syindex = sy-index.
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_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_name
value = lv_value ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_sheetid
value = lv_syindex ).
lo_sub_element-&gt;set_attribute_ns( name = lc_xml_attr_id
prefix = lc_r_ns
value = lv_xml_node_ridx_id ).
lo_element-&gt;append_child( lo_sub_element ). &quot; sheet node
ENDWHILE.
lo_element_root-&gt;append_child( lo_element ).&quot; sheets node
&quot; calcPr node
lo_element = lo_document-&gt;create_simple_element( name = lc_xml_node_calcpr
parent = lo_document ).
lo_element-&gt;set_attribute_ns( name = lc_xml_attr_calcid
value = &apos;125725&apos; ).
lo_element_root-&gt;append_child( lo_element ).
**********************************************************************
* STEP 5: Create xstring stream
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="FLAG2BOOL" VERSION="1" LANGU="E" DESCRIPT="Convert a FLAG to BOOLEAN value" EXPOSURE="0" STATE="1" EDITORDER="15 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="FLAG2BOOL" SCONAME="IP_FLAG" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="FLAG"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="FLAG2BOOL" SCONAME="EP_BOOLEAN" VERSION="1" LANGU="E" DESCRIPT="Boolean value" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100701" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="CHAR5"/>
<source>METHOD flag2bool.
IF ip_flag EQ abap_true.
ep_boolean = &apos;true&apos;.
ELSE.
ep_boolean = &apos;false&apos;.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="GET_SHARED_STRING_INDEX" VERSION="1" LANGU="E" DESCRIPT="Get shared string index" EXPOSURE="0" STATE="1" EDITORDER="16 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100710" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="GET_SHARED_STRING_INDEX" SCONAME="IP_CELL_VALUE" VERSION="1" LANGU="E" DESCRIPT="Cell Value" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_VALUE"/>
<parameter CLSNAME="ZCL_EXCEL_WRITER_2007" CMPNAME="GET_SHARED_STRING_INDEX" SCONAME="EP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Natural Number" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="INT4"/>
<source>METHOD get_shared_string_index.
DATA ls_shared_string TYPE zexcel_s_shared_string.
READ TABLE shared_strings INTO ls_shared_string WITH KEY string_value = ip_cell_value.
ep_index = ls_shared_string-string_no.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" UUID="C4C0274C8A345F2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL
*&quot;* do not include other source files here!!!
public section.
constants C_XLS type ZEXCEL_FORMAT value &apos;XLS&apos;. &quot;#EC NOTEXT
constants C_XLSX type ZEXCEL_FORMAT value &apos;XLSX&apos;. &quot;#EC NOTEXT
data PROPERTIES type ref to ZCL_EXCEL_PROPERTIES .
data SECURITY type ref to ZCL_EXCEL_SECURITY .
methods ADD_NEW_DRAWING
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional
returning
value(EO_DRAWING) type ref to ZCL_EXCEL_DRAWING .
methods ADD_NEW_STYLE
returning
value(EO_STYLE) type ref to ZCL_EXCEL_STYLE .
methods ADD_NEW_WORKSHEET
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional
returning
value(EO_WORKSHEET) type ref to ZCL_EXCEL_WORKSHEET .
methods CONSTRUCTOR .
methods GET_ACTIVE_WORKSHEET
returning
value(EO_WORKSHEET) type ref to ZCL_EXCEL_WORKSHEET .
methods GET_DRAWINGS_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods GET_STYLES_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods GET_WORKSHEETS_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods GET_WORKSHEETS_NAME
returning
value(EP_NAME) type ZEXCEL_WORKSHEETS_NAME .
methods GET_WORKSHEETS_SIZE
returning
value(EP_SIZE) type I .
methods SAVE_AS
importing
!IP_FORMAT type ZEXCEL_FORMAT
returning
value(EP_FILE) type XSTRING .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL
*&quot;* do not include other source files here!!!
private section.
data DRAWINGS type ref to ZCL_EXCEL_DRAWINGS .
data RANGES type ref to ZCL_EXCEL_RANGES .
data STYLES type ref to ZCL_EXCEL_STYLES .
data WORKSHEETS type ref to ZCL_EXCEL_WORKSHEETS .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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="C_XLS" VERSION="1" LANGU="E" DESCRIPT="File format office 2003" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100630" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="2" ATTVALUE="&apos;XLS&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="C_XLSX" VERSION="1" LANGU="E" DESCRIPT="File format office 2007" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100630" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="2" ATTVALUE="&apos;XLSX&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_FORMAT" 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="3 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="7 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="8 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEETS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<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="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100708" 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="20100708" CHANGEDON="00000000" 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
CREATE OBJECT eo_drawing
EXPORTING
ip_title = ip_title.
drawings-&gt;add( eo_drawing ).
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="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>method ADD_NEW_STYLE.
* Create default style
CREATE OBJECT eo_style.
styles-&gt;add( eo_style ).
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="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100706" 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="20100704" CHANGEDON="00000000" 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
CREATE OBJECT eo_worksheet
EXPORTING
ip_title = ip_title.
worksheets-&gt;add( eo_worksheet ).
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="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
DATA: lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style TYPE REF TO zcl_excel_style.
* Inizialize instance objects
CREATE OBJECT properties.
CREATE OBJECT security.
CREATE OBJECT worksheets.
CREATE OBJECT ranges.
CREATE OBJECT styles.
CREATE OBJECT drawings.
me-&gt;add_new_worksheet( ).
me-&gt;add_new_style( ). &quot; Standard style
lo_style = me-&gt;add_new_style( ). &quot; Standard style with fill gray125
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_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100708" CHANGEDON="00000000" 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_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get styles iterator" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="10 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" 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="20100704" CHANGEDON="00000000" 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="SAVE_AS" VERSION="1" LANGU="E" DESCRIPT="Save as" EXPOSURE="2" STATE="1" EDITORDER="11 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SAVE_AS" SCONAME="IP_FORMAT" VERSION="1" LANGU="E" DESCRIPT="File format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_FORMAT"/>
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SAVE_AS" SCONAME="EP_FILE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="XSTRING"/>
<source>METHOD save_as.
DATA lo_excel_writer_2007 TYPE REF TO zcl_excel_writer_2007.
* Determine the output engine to use
CASE ip_format.
WHEN me-&gt;c_xlsx. &quot; XLSX for Office 2007
CREATE OBJECT lo_excel_writer_2007 EXPORTING io_excel = me.
ep_file = lo_excel_writer_2007-&gt;create( ).
WHEN OTHERS.
ENDCASE.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_COMMON" VERSION="1" LANGU="E" DESCRIPT="Static common methods" UUID="5E42354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_COMMON definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_COMMON
*&quot;* do not include other source files here!!!
public section.
class-methods CONVERT_COLUMN2ALPHA
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN_ALPHA .
class-methods CONVERT_COLUMN2INT
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN .</publicSection>
<protectedSection>*&quot;* protected components of class ZCL_EXCEL_COMMON
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_COMMON
*&quot;* do not include other source files here!!!
private section.
class-data C_EXCEL_COL_MODULE type INT2 value 64. &quot;#EC NOTEXT .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_COMMON" CMPNAME="C_EXCEL_COL_MODULE" VERSION="1" LANGU="E" DESCRIPT="2 byte integer (signed)" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" ATTDECLTYP="1" ATTVALUE="64" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2ALPHA" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Alpha" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="1" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<source>METHOD convert_column2alpha.
DATA: lo_conv TYPE REF TO cl_abap_conv_in_ce,
lv_uccpi TYPE i,
lv_text TYPE sychar02,
lv_module TYPE int4,
lv_column TYPE zexcel_cell_column.
lv_column = ip_column.
WHILE lv_column GT 0.
lv_module = ( lv_column - 1 ) MOD 26.
lv_uccpi = 65 + lv_module.
lv_column = ( lv_column - lv_module ) / 26.
lv_text = cl_abap_conv_in_ce=&gt;uccpi( lv_uccpi ).
CONCATENATE lv_text ep_column INTO ep_column.
ENDWHILE.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2INT" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Integer" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="1" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2INT" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_COMMON" CMPNAME="CONVERT_COLUMN2INT" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100710" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<source>METHOD convert_column2int.
DATA: lv_uccpi TYPE i,
lv_char TYPE c,
lv_column(2) TYPE c.
* Calculate most significant letter
lv_char = ip_column+1(1).
IF lv_char IS NOT INITIAL. &quot;To avoid the first 26 column that have only a char in first position
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column MOD ( zcl_excel_common=&gt;c_excel_col_module ).
lv_char = ip_column(1).
lv_uccpi = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
lv_uccpi = ( lv_uccpi MOD ( zcl_excel_common=&gt;c_excel_col_module ) ) * 26.
ep_column = ep_column + lv_uccpi.
ELSE.
lv_char = ip_column(1).
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column - zcl_excel_common=&gt;c_excel_col_module.
ENDIF.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Drawing" UUID="0FA0354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_DRAWING definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_DRAWING
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data TITLE type ZEXCEL_SHEET_TITLE value &apos;Worksheet&apos;. &quot;#EC NOTEXT .
data X_REFERENCES type CHAR1 .
data Y_REFERENCES type CHAR1 .
data GRAPH_TYPE type ZEXCEL_GRAPH_TYPE .
methods CONSTRUCTOR
importing
!IP_TITLE type ZEXCEL_SHEET_TITLE optional .
methods GET_GUID
returning
value(EP_GUID) type GUID_16 .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_DRAWING
*&quot;* do not include other source files here!!!
private section.
data GUID type GUID_16 .
data LOWER_CELL type ZEXCEL_S_CELL_DATA .
data UPPER_CELL type ZEXCEL_S_CELL_DATA .
constants C_EXCEL_COL_MODULE type INT2 value 64. &quot;#EC NOTEXT
methods CONVERT_COLUMN2ALPHA
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN_ALPHA .
methods CONVERT_COLUMN2INT
importing
!IP_COLUMN type ZEXCEL_CELL_COLUMN_ALPHA
returning
value(EP_COLUMN) type ZEXCEL_CELL_COLUMN .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_DRAWING" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="C_EXCEL_COL_MODULE" VERSION="1" LANGU="E" DESCRIPT="2 byte integer (signed)" EXPOSURE="0" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="64" ATTEXPVIRT="0" TYPTYPE="1" TYPE="INT2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GRAPH_TYPE" VERSION="1" LANGU="E" DESCRIPT="Graph type" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_GRAPH_TYPE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="GUID_16" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="LOWER_CELL" VERSION="1" LANGU="E" DESCRIPT="Bottom right range cell" EXPOSURE="0" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTVALUE="&apos;Worksheet&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="UPPER_CELL" VERSION="1" LANGU="E" DESCRIPT="Top left range cell" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_S_CELL_DATA" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="X_REFERENCES" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="Y_REFERENCES" VERSION="1" LANGU="E" DESCRIPT="Single-Character Indicator" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="CHAR1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONSTRUCTOR" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="2" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE" PAROPTIONL="X"/>
<source>METHOD CONSTRUCTOR.
CALL FUNCTION &apos;GUID_CREATE&apos;
IMPORTING
ev_guid_16 = me-&gt;guid.
IF ip_title IS NOT INITIAL.
title = ip_title.
ELSE.
title = me-&gt;guid.
ENDIF.
* inizialize dimension range
lower_cell-cell_row = 1.
lower_cell-cell_column = 1.
upper_cell-cell_row = 1.
upper_cell-cell_column = 1.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2ALPHA" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Alpha" EXPOSURE="0" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2ALPHA" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<source>METHOD CONVERT_COLUMN2ALPHA.
DATA: lo_conv TYPE REF TO cl_abap_conv_in_ce,
lv_uccpi TYPE i,
lv_text TYPE sychar02,
lv_module TYPE int4,
lv_column TYPE zexcel_cell_column.
lv_column = ip_column.
WHILE lv_column GT 0.
lv_module = ( lv_column - 1 ) MOD 26.
lv_uccpi = 65 + lv_module.
lv_column = ( lv_column - lv_module ) / 26.
lv_text = cl_abap_conv_in_ce=&gt;uccpi( lv_uccpi ).
CONCATENATE lv_text ep_column INTO ep_column.
ENDWHILE.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2INT" VERSION="1" LANGU="E" DESCRIPT="Convert column indicator to Integer" EXPOSURE="0" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2INT" SCONAME="IP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN_ALPHA"/>
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="CONVERT_COLUMN2INT" SCONAME="EP_COLUMN" VERSION="1" LANGU="E" DESCRIPT="Cell Column" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_COLUMN"/>
<source>METHOD CONVERT_COLUMN2INT.
DATA: lv_uccpi TYPE i,
lv_char TYPE c,
lv_column(2) TYPE c.
* Calculate most significant letter
lv_char = ip_column+1(1).
IF lv_char IS NOT INITIAL. &quot;To avoid the first 26 column that have only a char in first position
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column MOD ( me-&gt;c_excel_col_module ).
lv_char = ip_column(1).
lv_uccpi = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
lv_uccpi = ( lv_uccpi MOD ( me-&gt;c_excel_col_module ) ) * 26.
ep_column = ep_column + lv_uccpi.
ELSE.
lv_char = ip_column(1).
ep_column = cl_abap_conv_out_ce=&gt;uccpi( lv_char ).
ep_column = ep_column - me-&gt;c_excel_col_module.
ENDIF.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GET_GUID" VERSION="1" LANGU="E" DESCRIPT="Get sheet guid" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWING" CMPNAME="GET_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="GUID in &apos;RAW&apos; format" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="GUID_16"/>
<source>method GET_GUID.
ep_guid = me-&gt;guid.
endmethod.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Drawings collection" UUID="549F354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_DRAWINGS definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_DRAWINGS
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_DRAWING type ref to ZCL_EXCEL_DRAWING .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type ZEXCEL_ACTIVE_WORKSHEET
returning
value(EO_DRAWING) type ref to ZCL_EXCEL_DRAWING .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_DRAWING type ref to ZCL_EXCEL_DRAWING .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_DRAWINGS
*&quot;* do not include other source files here!!!
private section.
data DRAWINGS type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_DRAWINGS" CMPNAME="DRAWINGS" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="ADD" SCONAME="IP_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>METHOD add.
drawings-&gt;add( ip_drawing ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
drawings-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT drawings.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET" SCONAME="EO_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>METHOD get.
DATA lv_index TYPE i.
lv_index = ip_index.
eo_drawing ?= drawings-&gt;if_object_collection~get( lv_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= drawings-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = drawings-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="REMOVE" SCONAME="IP_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWING"/>
<source>METHOD remove.
drawings-&gt;remove( ip_drawing ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_DRAWINGS" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = drawings-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<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" CHANGEDON="00000000" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_PROPERTIES definition
public
final
create public .
*&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 CREATED type TIMESTAMPL .
data MODIFIED type TIMESTAMPL .
data TITLE type ZEXCEL_TITLE value &apos;Untitled Spreadsheet&apos;. &quot;#EC NOTEXT .
data SUBJECT type ZEXCEL_SUBJECT .
data DESCRIPTION type ZEXCEL_DESCRIPTION .
data KEYWORDS type ZEXCEL_KEYWORDS .
data CATEGORY type ZEXCEL_CATEGORY .
data COMPANY type ZEXCEL_COMPANY value &apos;Microsoft Corporation&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 .
data LINKSUPTODATE type FLAG .
data SHAREDDOC type FLAG .
data HYPERLINKSCHANGED type FLAG .
data APPVERSION type ZEXCEL_APPVERSION value &apos;12.0000&apos;. &quot;#EC NOTEXT .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_PROPERTIES
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_PROPERTIES
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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="20100702" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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="20100702" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" 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" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD CONSTRUCTOR.
DATA: lv_timestamp TYPE timestampl.
GET TIME STAMP FIELD lv_timestamp.
created = lv_timestamp.
modified = lv_timestamp.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" UUID="D3B0284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_RANGE definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_RANGE
*&quot;* do not include other source files here!!!
public section.
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZABAP_EXCEL_WORKSHEET
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<method CLSNAME="ZCL_EXCEL_RANGE" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_RANGES" VERSION="1" LANGU="E" DESCRIPT="Ranges collection" UUID="F2AF284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_RANGES definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_RANGES
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_RANGE type ref to ZCL_EXCEL_RANGE .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type I
returning
value(EO_RANGE) type ref to ZCL_EXCEL_RANGE .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_RANGE type ref to ZCL_EXCEL_RANGE .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZABAP_EXCEL_RANGES
*&quot;* do not include other source files here!!!
private section.
data RANGES type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_RANGES" CMPNAME="RANGES" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="ADD" SCONAME="IP_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>METHOD ADD.
ranges-&gt;add( ip_range ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD CLEAR.
ranges-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="I"/>
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET" SCONAME="EO_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>METHOD GET.
eo_range ?= ranges-&gt;if_object_collection~get( ip_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD GET_ITERATOR.
eo_iterator ?= ranges-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD IS_EMPTY.
is_empty = ranges-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="REMOVE" SCONAME="IP_RANGE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
<source>METHOD REMOVE.
ranges-&gt;remove( ip_range ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_RANGES" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD SIZE.
ep_size = ranges-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_SECURITY" VERSION="1" LANGU="E" DESCRIPT="Security" UUID="4BAF284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_SECURITY definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_SECURITY
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
data LOCKREVISION type FLAG .
data LOCKSTRUCTURE type FLAG .
data LOCKWINDOWS type FLAG .
data REVISIONSPASSWORD type ZEXCEL_REVISIONSPASSWORD .
data WORKBOOKPASSWORD type ZEXCEL_WORKBOOKPASSWORD .
methods CONSTRUCTOR .
methods IS_SECURITY_ENABLED
returning
value(EP_SECURITY_ENABLED) type FLAG .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_SECURITY
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZABAP_EXCEL_SECURITY
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_SECURITY" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="LOCKREVISION" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_SECURITY" CMPNAME="LOCKSTRUCTURE" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_SECURITY" CMPNAME="LOCKWINDOWS" VERSION="1" LANGU="E" DESCRIPT="General Flag" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" 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_SECURITY" CMPNAME="REVISIONSPASSWORD" VERSION="1" LANGU="E" DESCRIPT="Revisions password" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_REVISIONSPASSWORD" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="WORKBOOKPASSWORD" VERSION="1" LANGU="E" DESCRIPT="Workbook password" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_WORKBOOKPASSWORD" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>method CONSTRUCTOR.
endmethod.</source>
</method>
<method CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="IS_SECURITY_ENABLED" VERSION="1" LANGU="E" DESCRIPT="Is some sort of dcument security enabled?" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_SECURITY" CMPNAME="IS_SECURITY_ENABLED" SCONAME="EP_SECURITY_ENABLED" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD IS_SECURITY_ENABLED.
IF lockrevision EQ abap_true OR lockstructure EQ abap_true OR lockwindows EQ abap_true.
ep_security_enabled = abap_true.
ENDIF.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_SHEET_SETUP" VERSION="1" LANGU="E" DESCRIPT="Sheet setup" UUID="48ED294CBB345D2DE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_SHEET_SETUP definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_SHEET_SETUP
*&quot;* do not include other source files here!!!
public section.
type-pools ABAP .
constants C_PAPERSIZE_LETTER type ZEXCEL_SHEET_PAPER_SIZE value 1. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_SMALL type ZEXCEL_SHEET_PAPER_SIZE value 2. &quot;#EC NOTEXT
constants C_PAPERSIZE_TABLOID type ZEXCEL_SHEET_PAPER_SIZE value 3. &quot;#EC NOTEXT
constants C_PAPERSIZE_LEDGER type ZEXCEL_SHEET_PAPER_SIZE value 4. &quot;#EC NOTEXT
constants C_PAPERSIZE_LEGAL type ZEXCEL_SHEET_PAPER_SIZE value 5. &quot;#EC NOTEXT
constants C_PAPERSIZE_STATEMENT type ZEXCEL_SHEET_PAPER_SIZE value 6. &quot;#EC NOTEXT
constants C_PAPERSIZE_EXECUTIVE type ZEXCEL_SHEET_PAPER_SIZE value 7. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3 type ZEXCEL_SHEET_PAPER_SIZE value 8. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4 type ZEXCEL_SHEET_PAPER_SIZE value 9. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_SMALL type ZEXCEL_SHEET_PAPER_SIZE value 10. &quot;#EC NOTEXT
constants C_PAPERSIZE_A5 type ZEXCEL_SHEET_PAPER_SIZE value 11. &quot;#EC NOTEXT
constants C_PAPERSIZE_B4 type ZEXCEL_SHEET_PAPER_SIZE value 12. &quot;#EC NOTEXT
constants C_PAPERSIZE_B5 type ZEXCEL_SHEET_PAPER_SIZE value 13. &quot;#EC NOTEXT
constants C_PAPERSIZE_FOLIO type ZEXCEL_SHEET_PAPER_SIZE value 14. &quot;#EC NOTEXT
constants C_PAPERSIZE_QUARTO type ZEXCEL_SHEET_PAPER_SIZE value 15. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_1 type ZEXCEL_SHEET_PAPER_SIZE value 16. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_2 type ZEXCEL_SHEET_PAPER_SIZE value 17. &quot;#EC NOTEXT
constants C_PAPERSIZE_NOTE type ZEXCEL_SHEET_PAPER_SIZE value 18. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO9_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 19. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO10_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 20. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO11_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 21. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO12_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 22. &quot;#EC NOTEXT
constants C_PAPERSIZE_NO14_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 23. &quot;#EC NOTEXT
constants C_PAPERSIZE_C type ZEXCEL_SHEET_PAPER_SIZE value 24. &quot;#EC NOTEXT
constants C_PAPERSIZE_D type ZEXCEL_SHEET_PAPER_SIZE value 25. &quot;#EC NOTEXT
constants C_PAPERSIZE_E type ZEXCEL_SHEET_PAPER_SIZE value 26. &quot;#EC NOTEXT
constants C_PAPERSIZE_DL_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 27. &quot;#EC NOTEXT
constants C_PAPERSIZE_C5_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 28. &quot;#EC NOTEXT
constants C_PAPERSIZE_C3_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 29. &quot;#EC NOTEXT
constants C_PAPERSIZE_C4_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 30. &quot;#EC NOTEXT
constants C_PAPERSIZE_C6_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 31. &quot;#EC NOTEXT
constants C_PAPERSIZE_C65_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 32. &quot;#EC NOTEXT
constants C_PAPERSIZE_B4_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 33. &quot;#EC NOTEXT
constants C_PAPERSIZE_B5_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 34. &quot;#EC NOTEXT
constants C_PAPERSIZE_B6_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 35. &quot;#EC NOTEXT
constants C_PAPERSIZE_ITALY_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 36. &quot;#EC NOTEXT
constants C_PAPERSIZE_MONARCH_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 37. &quot;#EC NOTEXT
constants C_PAPERSIZE_6_3_4_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 38. &quot;#EC NOTEXT
constants C_PAPERSIZE_US_STD_FANFOLD type ZEXCEL_SHEET_PAPER_SIZE value 39. &quot;#EC NOTEXT
constants C_PAPERSIZE_DE_STD_FANFOLD type ZEXCEL_SHEET_PAPER_SIZE value 40. &quot;#EC NOTEXT
constants C_PAPERSIZE_DE_LEG_FANFOLD type ZEXCEL_SHEET_PAPER_SIZE value 41. &quot;#EC NOTEXT
constants C_PAPERSIZE_ISO_B4 type ZEXCEL_SHEET_PAPER_SIZE value 42. &quot;#EC NOTEXT
constants C_PAPERSIZE_JPN_DBL_POSTCARD type ZEXCEL_SHEET_PAPER_SIZE value 43. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_PAPER_1 type ZEXCEL_SHEET_PAPER_SIZE value 44. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_PAPER_2 type ZEXCEL_SHEET_PAPER_SIZE value 45. &quot;#EC NOTEXT
constants C_PAPERSIZE_STANDARD_PAPER_3 type ZEXCEL_SHEET_PAPER_SIZE value 46. &quot;#EC NOTEXT
constants C_PAPERSIZE_INVITE_ENVELOPE type ZEXCEL_SHEET_PAPER_SIZE value 47. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 48. &quot;#EC NOTEXT
constants C_PAPERSIZE_LEGAL_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 49. &quot;#EC NOTEXT
constants C_PAPERSIZE_TABL_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 50. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 51. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 52. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 53. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_EXTV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 54. &quot;#EC NOTEXT
constants C_PAPERSIZE_SUPERA_A4_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 55. &quot;#EC NOTEXT
constants C_PAPERSIZE_SUPERB_A3_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 56. &quot;#EC NOTEXT
constants C_PAPERSIZE_LETTER_PLUS_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 57. &quot;#EC NOTEXT
constants C_PAPERSIZE_A4_PLUS_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 58. &quot;#EC NOTEXT
constants C_PAPERSIZE_A5_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 59. &quot;#EC NOTEXT
constants C_PAPERSIZE_JIS_B5_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 60. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 61. &quot;#EC NOTEXT
constants C_PAPERSIZE_A5_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 62. &quot;#EC NOTEXT
constants C_PAPERSIZE_ISO_B5_EXTRA_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 63. &quot;#EC NOTEXT
constants C_PAPERSIZE_A2_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 64. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 65. &quot;#EC NOTEXT
constants C_PAPERSIZE_A3_EXTRA_TV_PAPER type ZEXCEL_SHEET_PAPER_SIZE value 66. &quot;#EC NOTEXT
constants C_ORIENTATION_DEFAULT type ZEXCEL_SHEET_ORIENATATION value &apos;default&apos;. &quot;#EC NOTEXT
constants C_ORIENTATION_LANDSCAPE type ZEXCEL_SHEET_ORIENATATION value &apos;landscape&apos;. &quot;#EC NOTEXT
constants C_ORIENTATION_PORTRAIT type ZEXCEL_SHEET_ORIENATATION value &apos;portrait&apos;. &quot;#EC NOTEXT
data ORIENTATION type ZEXCEL_SHEET_ORIENATATION .
methods CONSTRUCTOR .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_SHEET_SETUP
*&quot;* do not include other source files here!!!
private section.</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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>
<typeUsage CLSNAME="ZCL_EXCEL_SHEET_SETUP" TYPEGROUP="ABAP" VERSION="1" TPUTYPE="0" EXPLICIT="X"/>
<forwardDeclaration>ABAP</forwardDeclaration>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_ORIENTATION_DEFAULT" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="67 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;default&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_ORIENTATION_LANDSCAPE" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="68 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;landscape&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_ORIENTATION_PORTRAIT" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="69 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="2" ATTVALUE="&apos;portrait&apos;" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_6_3_4_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="38 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="38" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A2_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="64 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="64" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="8 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="8" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="61 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="61" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3_EXTRA_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="66 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="66" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A3_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="65 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="65" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="9 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="9" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="51 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="51" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_PLUS_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="58 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="58" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_SMALL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="10 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="10" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A4_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="53 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="53" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A5" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="11 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="11" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A5_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="62 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="62" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_A5_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="59 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="59" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B4" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="12 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="12" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B4_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="33 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="33" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B5" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="13 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="13" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B5_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="34 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="34" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_B6_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="35 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="35" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="24 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="24" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C3_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="29 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="29" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C4_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="30 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="30" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C5_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="28 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="28" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C65_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="32 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="32" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_C6_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="31 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="31" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_D" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="25 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="25" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_DE_LEG_FANFOLD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="41 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="41" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_DE_STD_FANFOLD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="40 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="40" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_DL_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="27 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="27" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_E" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="26 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="26" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_EXECUTIVE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="7" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_FOLIO" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="14 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="14" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_INVITE_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="47 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="47" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_ISO_B4" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="42 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="42" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_ISO_B5_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="63 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="63" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_ITALY_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="36 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="36" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_JIS_B5_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="60 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="60" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_JPN_DBL_POSTCARD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="43 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="43" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LEDGER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="4" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LEGAL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="5" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LEGAL_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="49 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="49" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="1" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="48 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="48" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_EXTV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="54 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="54" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_PLUS_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="57 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="57" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_SMALL" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="2" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_LETTER_TV_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="52 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="52" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_MONARCH_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="37 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="37" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO10_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="20 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="20" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO11_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="21 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="21" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO12_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="22 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="22" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO14_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="23 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="23" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NO9_ENVELOPE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="19 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="19" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_NOTE" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="18 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="18" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_QUARTO" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="15 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="15" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_1" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="16 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="16" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_2" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="17 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="17" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_PAPER_1" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="44 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="44" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_PAPER_2" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="45 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="45" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STANDARD_PAPER_3" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="46 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="46" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_STATEMENT" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="6" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_SUPERA_A4_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="55 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="55" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_SUPERB_A3_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="56 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="56" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_TABLOID" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="3" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_TABL_EXTRA_PAPER" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="50 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="50" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="C_PAPERSIZE_US_STD_FANFOLD" VERSION="1" LANGU="E" DESCRIPT="Fill Type" EXPOSURE="2" STATE="1" EDITORDER="39 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDBY="FEMIA" CHANGEDON="20100629" ATTDECLTYP="2" ATTVALUE="39" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_PAPER_SIZE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="ORIENTATION" VERSION="1" LANGU="E" DESCRIPT="Sheet orientation" EXPOSURE="2" STATE="1" EDITORDER="70 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_SHEET_ORIENATATION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_SHEET_SETUP" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100629" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
orientation = me-&gt;c_orientation_default.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" UUID="90B1284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLE definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLE
*&quot;* do not include other source files here!!!
public section.
data FONT type ref to ZCL_EXCEL_STYLE_FONT .
data FILL type ref to ZCL_EXCEL_STYLE_FILL .
data BORDERS type ref to ZCL_EXCEL_STYLE_BORDERS .
data NUMBER_FORMAT type ref to ZCL_EXCEL_STYLE_NUMBER_FORMAT .
methods CONSTRUCTOR .
methods GET_GUID
returning
value(EP_GUID) type ZEXCEL_CELL_STYLE .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_STYLE
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLE
*&quot;* do not include other source files here!!!
private section.
data ALIGNMENT type ref to ZCL_EXCEL_STYLE_ALIGNMENT .
data PROTECTION type ref to ZCL_EXCEL_STYLE_PROTECTION .
data GUID type ZEXCEL_CELL_STYLE .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLE" CMPNAME="ALIGNMENT" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="0" STATE="1" EDITORDER="4 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_ALIGNMENT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="BORDERS" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="3 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_BORDERS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="FILL" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="2 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_FILL" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="FONT" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_FONT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="GUID" VERSION="1" LANGU="E" DESCRIPT="Style identifier" EXPOSURE="0" STATE="1" EDITORDER="7 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="NUMBER_FORMAT" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="2" STATE="1" EDITORDER="5 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_NUMBER_FORMAT" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<attribute CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="PROTECTION" VERSION="1" LANGU="E" DESCRIPT="Font Style" EXPOSURE="0" STATE="1" EDITORDER="6 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100708" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_PROTECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT font.
CREATE OBJECT fill.
CREATE OBJECT borders.
CREATE OBJECT alignment.
CREATE OBJECT number_format.
CREATE OBJECT protection.
CALL FUNCTION &apos;GUID_CREATE&apos;
IMPORTING
ev_guid_16 = me-&gt;guid.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="GET_GUID" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLE" CMPNAME="GET_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="Generic Data Element for GUID Fields (X16)" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100705" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
<source>METHOD get_guid.
ep_guid = me-&gt;guid.
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles collection" UUID="53B0284C304B5E2DE1000000C0A8FA19" 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 ">
<publicSection>class ZCL_EXCEL_STYLES definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLES
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_STYLE type ref to ZCL_EXCEL_STYLE .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type I
returning
value(EO_STYLE) type ref to ZCL_EXCEL_STYLE .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_STYLE type ref to ZCL_EXCEL_STYLE .
methods SIZE
returning
value(EP_SIZE) type I .
methods REGISTER_NEW_STYLE
importing
!IO_STYLE type ref to ZCL_EXCEL_STYLE
returning
value(EP_STYLE_CODE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLES
*&quot;* do not include other source files here!!!
private section.
data STYLES type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLES" CMPNAME="STYLES" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="ADD" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>METHOD add.
styles-&gt;add( ip_style ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
styles-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT styles.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="I"/>
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET" SCONAME="EO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>METHOD get.
eo_style ?= styles-&gt;if_object_collection~get( ip_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= styles-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = styles-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REGISTER_NEW_STYLE" VERSION="1" LANGU="E" DESCRIPT="Register a new style" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100704" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REGISTER_NEW_STYLE" SCONAME="IO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REGISTER_NEW_STYLE" SCONAME="EP_STYLE_CODE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100704" CHANGEDBY="FEMIA" CHANGEDON="20100704" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD register_new_style.
me-&gt;add( io_style ).
ep_style_code = me-&gt;size( ) - 1. &quot;style count starts from 0
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="REMOVE" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDBY="FEMIA" CHANGEDON="20100628" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
<source>METHOD remove.
styles-&gt;remove( ip_style ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100628" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = styles-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<CLAS CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Styles conditional collection" UUID="57A5354C6579E82CE1000000C0A8FA19" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" CHGDANYON="00000000" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" R3RELEASE="701" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
<publicSection>class ZCL_EXCEL_STYLES_CONDITIONAL definition
public
final
create public .
*&quot;* public components of class ZCL_EXCEL_STYLES_CONDITIONAL
*&quot;* do not include other source files here!!!
public section.
methods ADD
importing
!IP_STYLE_CONDITIONAL type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods CLEAR .
methods CONSTRUCTOR .
methods GET
importing
!IP_INDEX type ZEXCEL_ACTIVE_WORKSHEET
returning
value(EO_STYLE_CONDITIONAL) type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods GET_ITERATOR
returning
value(EO_ITERATOR) type ref to CL_OBJECT_COLLECTION_ITERATOR .
methods IS_EMPTY
returning
value(IS_EMPTY) type FLAG .
methods REMOVE
importing
!IP_STYLE_CONDITIONAL type ref to ZCL_EXCEL_STYLE_CONDITIONAL .
methods SIZE
returning
value(EP_SIZE) type I .</publicSection>
<protectedSection>*&quot;* protected components of class ZABAP_EXCEL_WORKSHEETS
*&quot;* do not include other source files here!!!
protected section.</protectedSection>
<privateSection>*&quot;* private components of class ZCL_EXCEL_STYLES_CONDITIONAL
*&quot;* do not include other source files here!!!
private section.
data STYLES_CONDITIONAL type ref to CL_OBJECT_COLLECTION .</privateSection>
<localImplementation>*&quot;* local class implementation for public class
*&quot;* use this source file for the implementation part of
*&quot;* local helper classes</localImplementation>
<localTypes>*&quot;* use this source file for any type declarations (class
*&quot;* definitions, interfaces or data types) you need for method
*&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_STYLES_CONDITIONAL" CMPNAME="STYLES_CONDITIONAL" VERSION="1" LANGU="E" EXPOSURE="0" STATE="1" EDITORDER="1 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " R3RELEASE="701" TYPESRC_LENG="0 "/>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="ADD" VERSION="1" LANGU="E" DESCRIPT="Adds an Element to the Collection" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="ADD" SCONAME="IP_STYLE_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD add.
styles_conditional-&gt;add( ip_style_conditional ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="CLEAR" VERSION="1" LANGU="E" DESCRIPT="Initializes the Collection" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD clear.
styles_conditional-&gt;clear( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="2" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<source>METHOD constructor.
CREATE OBJECT styles_conditional.
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET" VERSION="1" LANGU="E" DESCRIPT="Gets Element" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET" SCONAME="IP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET" SCONAME="EO_STYLE_CONDITIONAL" VERSION="1" LANGU="E" DESCRIPT="Font Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDBY="FEMIA" CHANGEDON="20100708" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD get.
DATA lv_index TYPE i.
lv_index = ip_index.
eo_style_conditional ?= styles_conditional-&gt;if_object_collection~get( lv_index ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Returns an iterator" EXPOSURE="2" STATE="1" EDITORDER="5 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="GET_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
<source>METHOD get_iterator.
eo_iterator ?= styles_conditional-&gt;if_object_collection~get_iterator( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="Checks whether elements are contained" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="IS_EMPTY" SCONAME="IS_EMPTY" VERSION="1" LANGU="E" DESCRIPT="General Flag" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="FLAG"/>
<source>METHOD is_empty.
is_empty = styles_conditional-&gt;if_object_collection~is_empty( ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="REMOVE" VERSION="1" LANGU="E" DESCRIPT="Deletes an Element from the Collection" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="REMOVE" SCONAME="IP_STYLE_CONDITIONAL" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE_CONDITIONAL"/>
<source>METHOD remove.
styles_conditional-&gt;remove( ip_style_conditional ).
ENDMETHOD.</source>
</method>
<method CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="SIZE" VERSION="1" LANGU="E" DESCRIPT="Specifies number of contained elements" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" MTDTYPE="0" MTDDECLTYP="0" R3RELEASE="701" BCMTDCAT="00" BCMTDSYN="0">
<parameter CLSNAME="ZCL_EXCEL_STYLES_CONDITIONAL" CMPNAME="SIZE" SCONAME="EP_SIZE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " AUTHOR="FEMIA" CREATEDON="20100708" CHANGEDON="00000000" PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
<source>METHOD size.
ep_size = styles_conditional-&gt;if_object_collection~size( ).
ENDMETHOD.</source>
</method>
</CLAS>
<DOMA DOMNAME="ZEXCEL_FORMAT" DDLANGUAGE="E" DATATYPE="CHAR" LENG="000004" OUTPUTLEN="000004" DECIMALS="000000" VALEXI="X" MASKLEN="0000" DDTEXT="File format" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="155425">
<dd07v DOMNAME="ZEXCEL_FORMAT" VALPOS="0001" DDLANGUAGE="E" DOMVALUE_L="XLSX" DDTEXT="Excel 2007 workbook (.xlsx)"/>
<dd07v DOMNAME="ZEXCEL_FORMAT" VALPOS="0002" DDLANGUAGE="E" DOMVALUE_L="XLS" DDTEXT="Excel 2003 workbook (.xls)"/>
</DOMA>
<DTEL ROLLNAME="ZEXCEL_SHEET_STATE" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Sheet state" REPTEXT="Sheet state" SCRTEXT_S="State" SCRTEXT_M="Sheet state" SCRTEXT_L="Sheet state" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="102247" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SHEET_PAPER_SIZE" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Fill Type" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="104727" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SHEET_ORIENATATION" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="17" SCRLEN3="20" DDTEXT="Sheet orientation" REPTEXT="Sheet orientation" SCRTEXT_S="Orientat." SCRTEXT_M="Sheet orientation" SCRTEXT_L="Sheet orientation" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="105348" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SCALECROP" DDLANGUAGE="E" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="ScaleCrop" REPTEXT="ScaleCrop" SCRTEXT_S="ScaleCrop" SCRTEXT_M="ScaleCrop" SCRTEXT_L="ScaleCrop" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100701" AS4TIME="173224" DTELMASTER="E" DATATYPE="CHAR" LENG="000001" DECIMALS="000000" OUTPUTLEN="000001" VALEXI="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_ROTATION" DDLANGUAGE="E" DOMNAME="DEC_15_3" ROUTPUTLEN="000000" HEADLEN="19" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Rotation" REPTEXT="Rotation" SCRTEXT_S="Rotation" SCRTEXT_M="Rotation" SCRTEXT_L="Rotation" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175104" DTELMASTER="E" DATATYPE="DEC" LENG="000015" DECIMALS="000003" OUTPUTLEN="000019" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_REVISIONSPASSWORD" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="20" SCRLEN3="20" DDTEXT="Revisions password" REPTEXT="Revisions password" SCRTEXT_S="Password" SCRTEXT_M="Revisions password" SCRTEXT_L="Revisions password" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="151410" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_PROTECTION" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Protection" REPTEXT="Protection" SCRTEXT_S="Protection" SCRTEXT_M="Protection" SCRTEXT_L="Protection" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="184716" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_NUMBER_FORMAT" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Number format" REPTEXT="Number format" SCRTEXT_S="Format" SCRTEXT_M="Number format" SCRTEXT_L="Number format" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="183529" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_KEYWORDS" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Keywords" REPTEXT="Keywords" SCRTEXT_S="Keywords" SCRTEXT_M="Keywords" SCRTEXT_L="Keywords" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145741" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_INDENT" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="13" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Indent" REPTEXT="Indent" SCRTEXT_S="Indent" SCRTEXT_M="Indent" SCRTEXT_L="Indent" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="183128" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_GRAPH_TYPE" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Graph type" REPTEXT="Graph type" SCRTEXT_S="Graph type" SCRTEXT_M="Graph type" SCRTEXT_L="Graph type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="170025" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FORMAT" DDLANGUAGE="E" DOMNAME="ZEXCEL_FORMAT" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="File format" REPTEXT="File format" SCRTEXT_S="File type" SCRTEXT_M="File format" SCRTEXT_L="File format" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="155538" DTELMASTER="E" DATATYPE="CHAR" LENG="000004" DECIMALS="000000" OUTPUTLEN="000004" VALEXI="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FONT" DDLANGUAGE="E" DOMNAME="CHAR10" ROUTPUTLEN="000000" HEADLEN="04" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DDTEXT="Font" REPTEXT="Font" SCRTEXT_S="Font" SCRTEXT_M="Font" SCRTEXT_L="Font" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="163757" DTELMASTER="E" DATATYPE="CHAR" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_WORKSHEETS_NAME" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Worksheets name" REPTEXT="Worksheets name" SCRTEXT_S="Name" SCRTEXT_M="Worksheets name" SCRTEXT_L="Worksheets name" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100701" AS4TIME="174843" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_WORKBOOKPASSWORD" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="20" SCRLEN3="20" DDTEXT="Workbook password" REPTEXT="Workbook password" SCRTEXT_S="Password" SCRTEXT_M="Workbook password" SCRTEXT_L="Workbook password" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="151443" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_TITLE" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Title" REPTEXT="Title" SCRTEXT_S="Title" SCRTEXT_M="Title" SCRTEXT_L="Title" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145528" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_TEXT_ROTATION" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="13" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Text Rotation" REPTEXT="Text Rotation" SCRTEXT_S="Rotation" SCRTEXT_M="Text Rotation" SCRTEXT_L="Text Rotation" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="181018" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SUBJECT" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Subject" REPTEXT="Subject" SCRTEXT_S="Subject" SCRTEXT_M="Subject" SCRTEXT_L="Subject" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145646" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_PRIORITY" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="14" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Style Priority" REPTEXT="Style Priority" SCRTEXT_S="Priority" SCRTEXT_M="Style Priority" SCRTEXT_L="Style Priority" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="172619" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_FORMULA" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="13" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Style formula" REPTEXT="Style formula" SCRTEXT_S="Formula" SCRTEXT_M="Style formula" SCRTEXT_L="Style formula" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="172713" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_FONT_SCHEME" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Font scheme" REPTEXT="Font scheme" SCRTEXT_S="Scheme" SCRTEXT_M="Font scheme" SCRTEXT_L="Font scheme" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100704" AS4TIME="222313" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_COLOR_COMPONENT" DDLANGUAGE="E" DOMNAME="CHAR2" ROUTPUTLEN="000000" HEADLEN="15" SCRLEN1="10" SCRLEN2="15" SCRLEN3="15" DDTEXT="Color Component" REPTEXT="Color Component" SCRTEXT_S="Color Comp" SCRTEXT_M="Color Component" SCRTEXT_L="Color Component" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="115840" DTELMASTER="E" DATATYPE="CHAR" LENG="000002" DECIMALS="000000" OUTPUTLEN="000002" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" DDLANGUAGE="E" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="115643" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" DECIMALS="000000" OUTPUTLEN="000008" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_SHEET_TITLE" DDLANGUAGE="E" DOMNAME="TEXT16" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Title" REPTEXT="Title" SCRTEXT_S="Title" SCRTEXT_M="Title" SCRTEXT_L="Title" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100707" AS4TIME="171946" DTELMASTER="E" DATATYPE="CHAR" LENG="000016" DECIMALS="000000" OUTPUTLEN="000016" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FILL_TYPE" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Fill Type" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175141" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_ROW" DDLANGUAGE="E" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="08" SCRLEN1="08" SCRLEN2="08" SCRLEN3="08" DDTEXT="Cell Row" REPTEXT="Cell Row" SCRTEXT_S="Row" SCRTEXT_M="Cell Row" SCRTEXT_L="Cell Row" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="112227" DTELMASTER="E" DATATYPE="INT4" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" SIGNFLAG="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_FORMULA" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Cell Formula" REPTEXT="Cell Formula" SCRTEXT_S="Formula" SCRTEXT_M="Cell Formula" SCRTEXT_L="Cell Formula" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="100133" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_COORDS" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="25" SCRLEN1="10" SCRLEN2="16" SCRLEN3="25" DDTEXT="Cell coordinates as Excel" REPTEXT="Cell coordinates as Excel" SCRTEXT_S="Cell coord" SCRTEXT_M="Cell coordinates" SCRTEXT_L="Cell coordinates as Excel" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100704" AS4TIME="162915" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_COLUMN_ALPHA" DDLANGUAGE="E" DOMNAME="CHAR2" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="06" SCRLEN2="11" SCRLEN3="11" DDTEXT="Cell Column" REPTEXT="Cell Column" SCRTEXT_S="Column" SCRTEXT_M="Cell Column" SCRTEXT_L="Cell Column" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="113748" DTELMASTER="E" DATATYPE="CHAR" LENG="000002" DECIMALS="000000" OUTPUTLEN="000002" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_COLUMN" DDLANGUAGE="E" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="06" SCRLEN2="11" SCRLEN3="11" DDTEXT="Cell Column" REPTEXT="Cell Column" SCRTEXT_S="Column" SCRTEXT_M="Cell Column" SCRTEXT_L="Cell Column" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="112051" DTELMASTER="E" DATATYPE="INT4" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" SIGNFLAG="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CATEGORY" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Category" REPTEXT="Category" SCRTEXT_S="Category" SCRTEXT_M="Category" SCRTEXT_L="Category" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145805" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_BREAK" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="15" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Worksheet Break" REPTEXT="Worksheet Break" SCRTEXT_S="Break" SCRTEXT_M="Worksheet Break" SCRTEXT_L="Worksheet Break" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100629" AS4TIME="102144" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_BORDER" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="180210" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_APPVERSION" DDLANGUAGE="E" DOMNAME="CHAR07" ROUTPUTLEN="000000" HEADLEN="19" SCRLEN1="10" SCRLEN2="19" SCRLEN3="20" DDTEXT="Application version" REPTEXT="Application version" SCRTEXT_S="AppVersion" SCRTEXT_M="Application version" SCRTEXT_L="Application version" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="100702" DTELMASTER="E" DATATYPE="CHAR" LENG="000007" DECIMALS="000000" OUTPUTLEN="000007" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_APPLICATION" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Application" REPTEXT="Application" SCRTEXT_S="Applic." SCRTEXT_M="Application" SCRTEXT_L="Application" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100701" AS4TIME="172918" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_ALIGNMENT" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Alignment" REPTEXT="Alignment" SCRTEXT_S="Alignment" SCRTEXT_M="Alignment" SCRTEXT_L="Alignment" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="180748" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_ACTIVE_WORKSHEET" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="16" SCRLEN1="06" SCRLEN2="16" SCRLEN3="16" DDTEXT="Active Worksheet" REPTEXT="Active Worksheet" SCRTEXT_S="Active" SCRTEXT_M="Active Worksheet" SCRTEXT_L="Active Worksheet" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="152531" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_STYLE" DDLANGUAGE="E" DOMNAME="GUID16" ROUTPUTLEN="000000" HEADLEN="16" SCRLEN1="10" SCRLEN2="16" SCRLEN3="20" DDTEXT="Style identifier" REPTEXT="Style identifier" SCRTEXT_S="Style no" SCRTEXT_M="Style identifier" SCRTEXT_L="Style identifier" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100704" AS4TIME="221000" DTELMASTER="E" DATATYPE="RAW" LENG="000016" DECIMALS="000000" OUTPUTLEN="000032" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_FILL" DDLANGUAGE="E" DOMNAME="CHAR10" ROUTPUTLEN="000000" HEADLEN="04" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DDTEXT="Font" REPTEXT="Font" SCRTEXT_S="Font" SCRTEXT_M="Font" SCRTEXT_L="Font" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175104" DTELMASTER="E" DATATYPE="CHAR" LENG="000010" DECIMALS="000000" OUTPUTLEN="000010" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_DOCSECURITY" DDLANGUAGE="E" DOMNAME="NUMC1" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="DocSecurity" REPTEXT="DocSecurity" SCRTEXT_S="DocSec." SCRTEXT_M="DocSecurity" SCRTEXT_L="DocSecurity" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="102503" DTELMASTER="E" DATATYPE="NUMC" LENG="000001" DECIMALS="000000" OUTPUTLEN="000001" VALEXI="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_DIAGONAL" DDLANGUAGE="E" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DDTEXT="Diagonal" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="175618" DTELMASTER="E" DATATYPE="INT1" LENG="000003" DECIMALS="000000" OUTPUTLEN="000003" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_DESCRIPTION" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Description" REPTEXT="Description" SCRTEXT_S="Descr." SCRTEXT_M="Description" SCRTEXT_L="Description" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145725" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CREATOR" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="07" SCRLEN1="07" SCRLEN2="07" SCRLEN3="07" DDTEXT="Creator" REPTEXT="Creator" SCRTEXT_S="Creator" SCRTEXT_M="Creator" SCRTEXT_L="Creator" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145200" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITION_RULE_ICONSET" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="22" SCRLEN1="10" SCRLEN2="18" SCRLEN3="22" DDTEXT="Condition rule iconset" REPTEXT="Condition rule iconset" SCRTEXT_S="Cond. rule" SCRTEXT_M="Cond. rule iconset" SCRTEXT_L="Condition rule iconset" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="172922" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITION_RULE" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Condition rule" REPTEXT="Condition rule" SCRTEXT_S="Cond. rule" SCRTEXT_M="Condition rule" SCRTEXT_L="Condition rule" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="170658" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITION_OPERATOR" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="18" SCRLEN3="20" DDTEXT="Condition operator" REPTEXT="Condition operator" SCRTEXT_S="Cond. oper" SCRTEXT_M="Condition operator" SCRTEXT_L="Condition operator" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="171214" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CONDITIONAL" DDLANGUAGE="E" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Conditional" REPTEXT="Conditional" SCRTEXT_S="Condit." SCRTEXT_M="Conditional" SCRTEXT_L="Conditional" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="184130" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" DECIMALS="000000" OUTPUTLEN="000020" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_COMPANY" DDLANGUAGE="E" DOMNAME="TEXT80" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Company" REPTEXT="Company" SCRTEXT_S="Company" SCRTEXT_M="Company" SCRTEXT_L="Company" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="145840" DTELMASTER="E" DATATYPE="CHAR" LENG="000080" DECIMALS="000000" OUTPUTLEN="000080" LOWERCASE="X" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_COLOR" DDLANGUAGE="E" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DDTEXT="Color" REPTEXT="Color" SCRTEXT_S="Color" SCRTEXT_M="Color" SCRTEXT_L="Color" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100628" AS4TIME="180424" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" DECIMALS="000000" OUTPUTLEN="000008" REFKIND="D">
<tpara/>
</DTEL>
<DTEL ROLLNAME="ZEXCEL_CELL_VALUE" DDLANGUAGE="E" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DDTEXT="Cell Value" REPTEXT="Cell Value" SCRTEXT_S="Value" SCRTEXT_M="Cell Value" SCRTEXT_L="Cell Value" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="163301" DTELMASTER="E" DATATYPE="STRG" LENG="000000" DECIMALS="000000" OUTPUTLEN="000000" REFKIND="D">
<tpara/>
</DTEL>
<PROG NAME="ZDEMO_EXCEL1" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181343" IDATE="20100711" ITIME="181343" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel1.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
&quot; Creates active sheet
CREATE OBJECT lo_excel.
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_worksheet-&gt;title = &apos;Sheet1&apos;.
lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 2 ip_value = &apos;Hello world&apos; ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\HelloWorld.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<PROG NAME="ZDEMO_EXCEL2" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181348" IDATE="20100711" ITIME="181348" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel2.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_bold TYPE REF TO zcl_excel_style,
lo_style_underline TYPE REF TO zcl_excel_style,
lo_style_filled TYPE REF TO zcl_excel_style,
lo_style_border TYPE REF TO zcl_excel_style,
lo_style_button TYPE REF TO zcl_excel_style,
lo_border_dark TYPE REF TO zcl_excel_style_border,
lo_border_light TYPE REF TO zcl_excel_style_border.
DATA: lv_style_bold_guid TYPE zexcel_cell_style,
lv_style_underline_guid TYPE zexcel_cell_style,
lv_style_filled_guid TYPE zexcel_cell_style,
lv_style_border_guid TYPE zexcel_cell_style,
lv_style_button_guid TYPE zexcel_cell_style.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
&quot; Creates active sheet
CREATE OBJECT lo_excel.
&quot; Create border object
CREATE OBJECT lo_border_dark.
lo_border_dark-&gt;border_color = zcl_excel_style_color=&gt;c_black.
lo_border_dark-&gt;border_style = zcl_excel_style_border=&gt;c_border_thin.
CREATE OBJECT lo_border_light.
lo_border_light-&gt;border_color = zcl_excel_style_color=&gt;c_gray.
lo_border_light-&gt;border_style = zcl_excel_style_border=&gt;c_border_thin.
&quot; Create a bold / italic style
lo_style_bold = lo_excel-&gt;add_new_style( ).
lo_style_bold-&gt;font-&gt;bold = abap_true.
lo_style_bold-&gt;font-&gt;italic = abap_true.
lo_style_bold-&gt;font-&gt;color = zcl_excel_style_color=&gt;c_red.
lv_style_bold_guid = lo_style_bold-&gt;get_guid( ).
&quot; Create an underline double style
lo_style_underline = lo_excel-&gt;add_new_style( ).
lo_style_underline-&gt;font-&gt;underline = abap_true.
lo_style_underline-&gt;font-&gt;underline_mode = zcl_excel_style_font=&gt;c_underline_double.
lv_style_underline_guid = lo_style_underline-&gt;get_guid( ).
&quot; Create filled style
lo_style_filled = lo_excel-&gt;add_new_style( ).
lo_style_filled-&gt;fill-&gt;filltype = zcl_excel_style_fill=&gt;c_fill_solid.
lo_style_filled-&gt;fill-&gt;fgcolor = zcl_excel_style_color=&gt;c_yellow.
lv_style_filled_guid = lo_style_filled-&gt;get_guid( ).
&quot; Create border with button effects
lo_style_button = lo_excel-&gt;add_new_style( ).
lo_style_button-&gt;borders-&gt;right = lo_border_dark.
lo_style_button-&gt;borders-&gt;down = lo_border_dark.
lo_style_button-&gt;borders-&gt;left = lo_border_light.
lo_style_button-&gt;borders-&gt;top = lo_border_light.
lv_style_button_guid = lo_style_button-&gt;get_guid( ).
&quot;Create style with border
lo_style_border = lo_excel-&gt;add_new_style( ).
lo_style_border-&gt;borders-&gt;allborders = lo_border_dark.
lv_style_border_guid = lo_style_border-&gt;get_guid( ).
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_worksheet-&gt;title = &apos;Styles&apos;.
lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 2 ip_value = &apos;Hello world&apos; ).
lo_worksheet-&gt;set_cell( ip_column = &apos;C&apos; ip_row = 3 ip_value = &apos;Bold text&apos; ip_style = lv_style_bold_guid ).
lo_worksheet-&gt;set_cell( ip_column = &apos;D&apos; ip_row = 4 ip_value = &apos;Underlined text&apos; ip_style = lv_style_underline_guid ).
lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 5 ip_value = &apos;Filled text&apos; ip_style = lv_style_filled_guid ).
lo_worksheet-&gt;set_cell( ip_column = &apos;C&apos; ip_row = 6 ip_value = &apos;Borders&apos; ip_style = lv_style_border_guid ).
lo_worksheet-&gt;set_cell( ip_column = &apos;D&apos; ip_row = 7 ip_value = &apos;I&apos;&apos;m not a button :)&apos; ip_style = lv_style_button_guid ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\Styles.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<PROG NAME="ZDEMO_EXCEL3" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181355" IDATE="20100711" ITIME="181355" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel3.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_header TYPE REF TO zcl_excel_style,
lo_style_body TYPE REF TO zcl_excel_style,
lo_border_dark TYPE REF TO zcl_excel_style_border,
lo_border_light TYPE REF TO zcl_excel_style_border.
DATA: lv_style_header_guid TYPE zexcel_cell_style,
lv_style_body_guid TYPE zexcel_cell_style.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
&quot; Creates active sheet
CREATE OBJECT lo_excel.
&quot; Create border object
CREATE OBJECT lo_border_dark.
lo_border_dark-&gt;border_color = zcl_excel_style_color=&gt;c_black.
lo_border_dark-&gt;border_style = zcl_excel_style_border=&gt;c_border_thin.
&quot; Create filled style
lo_style_header = lo_excel-&gt;add_new_style( ).
lo_style_header-&gt;fill-&gt;filltype = zcl_excel_style_fill=&gt;c_fill_solid.
lo_style_header-&gt;fill-&gt;fgcolor = zcl_excel_style_color=&gt;c_yellow.
lo_style_header-&gt;borders-&gt;allborders = lo_border_dark.
lv_style_header_guid = lo_style_header-&gt;get_guid( ).
&quot;Create style with border
lo_style_body = lo_excel-&gt;add_new_style( ).
lo_style_body-&gt;borders-&gt;allborders = lo_border_dark.
lv_style_body_guid = lo_style_body-&gt;get_guid( ).
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_worksheet-&gt;title = &apos;Internal table&apos;.
DATA lt_test TYPE TABLE OF sflight.
SELECT * FROM sflight INTO TABLE lt_test.
lo_worksheet-&gt;set_table( ip_table = lt_test
ip_hdr_style = lv_style_header_guid
ip_body_style = lv_style_body_guid ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\iTab.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<PROG NAME="ZDEMO_EXCEL4" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181400" IDATE="20100711" ITIME="181400" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel4.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet.
DATA: lv_file TYPE xstring,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
&quot; Creates active sheet
CREATE OBJECT lo_excel.
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_worksheet-&gt;title = &apos;Sheet1&apos;.
lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 2 ip_value = &apos;This is the first sheet&apos; ).
lo_worksheet = lo_excel-&gt;add_new_worksheet( ).
lo_worksheet-&gt;title = &apos;Sheet2&apos;.
lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos; ip_row = 2 ip_value = &apos;This is the second sheet&apos; ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\Sheets.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<PROG NAME="ZDEMO_EXCEL5" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181406" IDATE="20100711" ITIME="181406" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel5.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional,
lo_style_number TYPE REF TO zcl_excel_style,
lv_file TYPE xstring,
lv_style_number_guid TYPE zexcel_cell_style,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
CREATE OBJECT lo_excel.
lo_style_number = lo_excel-&gt;add_new_style( ).
lo_style_number-&gt;number_format-&gt;format_code = zcl_excel_style_number_format=&gt;c_format_number.
lv_style_number_guid = lo_style_number-&gt;get_guid( ).
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3trafficlights2.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;C&apos;
ip_start_row = 4
ip_stop_column = &apos;C&apos;
ip_stop_row = 8 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;C&apos; ip_value = &apos;100&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;C&apos; ip_value = &apos;1000&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;C&apos; ip_value = &apos;150&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;500&apos; ip_style = lv_style_number_guid ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&quot;convert to table
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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\CondFormatting.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<PROG NAME="ZDEMO_EXCEL6" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181412" IDATE="20100711" ITIME="181412" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel6.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional,
lo_style_number TYPE REF TO zcl_excel_style,
lv_file TYPE xstring,
lv_style_number_guid TYPE zexcel_cell_style,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
CREATE OBJECT lo_excel.
lo_style_number = lo_excel-&gt;add_new_style( ).
lo_style_number-&gt;number_format-&gt;format_code = zcl_excel_style_number_format=&gt;c_format_number.
lv_style_number_guid = lo_style_number-&gt;get_guid( ).
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;C&apos; ip_value = &apos;100&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;C&apos; ip_value = &apos;1000&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;C&apos; ip_value = &apos;150&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;500&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;C&apos; ip_value = &apos;1760&apos; ip_formula = &apos;SUM(C4:C8)&apos; ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&quot;convert to table
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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\Formula.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<PROG NAME="ZDEMO_EXCEL7" VARCL="X" SUBC="1" CNAM="FEMIA" CDAT="20100711" UNAM="FEMIA" UDAT="20100711" VERN="000011" RSTAT="T" RMAND="001" RLOAD="E" FIXPT="X" SDATE="20100711" STIME="181416" IDATE="20100711" ITIME="181416" UCCHECK="X">
<textPool>
<language SPRAS="E">
<textElement ID="R" ENTRY="Test for excel" LENGTH="14 "/>
</language>
</textPool>
<source>*&amp;---------------------------------------------------------------------*
*&amp; Report ZIFE_TEST_EXCEL
*&amp;
*&amp;---------------------------------------------------------------------*
*&amp;
*&amp;
*&amp;---------------------------------------------------------------------*
REPORT zdemo_excel7.
DATA: lo_excel TYPE REF TO zcl_excel,
lo_worksheet TYPE REF TO zcl_excel_worksheet,
lo_style_conditional TYPE REF TO zcl_excel_style_conditional,
lo_style_number TYPE REF TO zcl_excel_style,
lv_file TYPE xstring,
lv_style_number_guid TYPE zexcel_cell_style,
lv_bytecount TYPE i,
lt_file_tab TYPE STANDARD TABLE OF solisti1.
CREATE OBJECT lo_excel.
lo_style_number = lo_excel-&gt;add_new_style( ).
lo_style_number-&gt;number_format-&gt;format_code = zcl_excel_style_number_format=&gt;c_format_number.
lv_style_number_guid = lo_style_number-&gt;get_guid( ).
&quot; Get active sheet
lo_worksheet = lo_excel-&gt;get_active_worksheet( ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3arrows.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;B&apos;
ip_start_row = 5
ip_stop_column = &apos;B&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;B&apos; ip_value = &apos;C_ICONSET_3ARROWS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;B&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;B&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;B&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;B&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;B&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3arrowsgray.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;C&apos;
ip_start_row = 5
ip_stop_column = &apos;C&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;C&apos; ip_value = &apos;C_ICONSET_3ARROWSGRAY&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;C&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;C&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;C&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;C&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;C&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3flags.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;D&apos;
ip_start_row = 5
ip_stop_column = &apos;D&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;D&apos; ip_value = &apos;C_ICONSET_3FLAGS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;D&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;D&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;D&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;D&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;D&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3trafficlights.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;E&apos;
ip_start_row = 5
ip_stop_column = &apos;E&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;E&apos; ip_value = &apos;C_ICONSET_3TRAFFICLIGHTS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;E&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;E&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;E&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;E&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;E&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3trafficlights2.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;F&apos;
ip_start_row = 5
ip_stop_column = &apos;F&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;F&apos; ip_value = &apos;C_ICONSET_3TRAFFICLIGHTS2&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;F&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;F&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;F&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;F&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;F&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3signs.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;G&apos;
ip_start_row = 5
ip_stop_column = &apos;G&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;G&apos; ip_value = &apos;C_ICONSET_3SIGNS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;G&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;G&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;G&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;G&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;G&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3symbols.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;H&apos;
ip_start_row = 5
ip_stop_column = &apos;H&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;H&apos; ip_value = &apos;C_ICONSET_3SYMBOLS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;H&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;H&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;H&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;H&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;H&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_3symbols2.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;I&apos;
ip_start_row = 5
ip_stop_column = &apos;I&apos;
ip_stop_row = 9 ).
lo_worksheet-&gt;set_cell( ip_row = 4 ip_column = &apos;I&apos; ip_value = &apos;C_ICONSET_3SYMBOLS2&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 5 ip_column = &apos;I&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 6 ip_column = &apos;I&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 7 ip_column = &apos;I&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 8 ip_column = &apos;I&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 9 ip_column = &apos;I&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_4arrows.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;B&apos;
ip_start_row = 12
ip_stop_column = &apos;B&apos;
ip_stop_row = 16 ).
lo_worksheet-&gt;set_cell( ip_row = 11 ip_column = &apos;B&apos; ip_value = &apos;C_ICONSET_4ARROWS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 12 ip_column = &apos;B&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 13 ip_column = &apos;B&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 14 ip_column = &apos;B&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 15 ip_column = &apos;B&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 16 ip_column = &apos;B&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_4arrowsgray.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;C&apos;
ip_start_row = 12
ip_stop_column = &apos;C&apos;
ip_stop_row = 16 ).
lo_worksheet-&gt;set_cell( ip_row = 11 ip_column = &apos;C&apos; ip_value = &apos;C_ICONSET_4ARROWSGRAY&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 12 ip_column = &apos;C&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 13 ip_column = &apos;C&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 14 ip_column = &apos;C&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 15 ip_column = &apos;C&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 16 ip_column = &apos;C&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_4redtoblack.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;D&apos;
ip_start_row = 12
ip_stop_column = &apos;D&apos;
ip_stop_row = 16 ).
lo_worksheet-&gt;set_cell( ip_row = 11 ip_column = &apos;D&apos; ip_value = &apos;C_ICONSET_4REDTOBLACK&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 12 ip_column = &apos;D&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 13 ip_column = &apos;D&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 14 ip_column = &apos;D&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 15 ip_column = &apos;D&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 16 ip_column = &apos;D&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_4rating.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;E&apos;
ip_start_row = 12
ip_stop_column = &apos;E&apos;
ip_stop_row = 16 ).
lo_worksheet-&gt;set_cell( ip_row = 11 ip_column = &apos;E&apos; ip_value = &apos;C_ICONSET_4RATING&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 12 ip_column = &apos;E&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 13 ip_column = &apos;E&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 14 ip_column = &apos;E&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 15 ip_column = &apos;E&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 16 ip_column = &apos;E&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_4trafficlights.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;F&apos;
ip_start_row = 12
ip_stop_column = &apos;F&apos;
ip_stop_row = 16 ).
lo_worksheet-&gt;set_cell( ip_row = 11 ip_column = &apos;F&apos; ip_value = &apos;C_ICONSET_4TRAFFICLIGHTS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 12 ip_column = &apos;F&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 13 ip_column = &apos;F&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 14 ip_column = &apos;F&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 15 ip_column = &apos;F&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 16 ip_column = &apos;F&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_5arrows.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;B&apos;
ip_start_row = 19
ip_stop_column = &apos;B&apos;
ip_stop_row = 23 ).
lo_worksheet-&gt;set_cell( ip_row = 18 ip_column = &apos;B&apos; ip_value = &apos;C_ICONSET_5ARROWS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 19 ip_column = &apos;B&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 20 ip_column = &apos;B&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 21 ip_column = &apos;B&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 22 ip_column = &apos;B&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 23 ip_column = &apos;B&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_5arrowsgray.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;C&apos;
ip_start_row = 19
ip_stop_column = &apos;C&apos;
ip_stop_row = 23 ).
lo_worksheet-&gt;set_cell( ip_row = 18 ip_column = &apos;C&apos; ip_value = &apos;C_ICONSET_5ARROWSGRAY&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 19 ip_column = &apos;C&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 20 ip_column = &apos;C&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 21 ip_column = &apos;C&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 22 ip_column = &apos;C&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 23 ip_column = &apos;C&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_5rating.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;D&apos;
ip_start_row = 19
ip_stop_column = &apos;D&apos;
ip_stop_row = 23 ).
lo_worksheet-&gt;set_cell( ip_row = 18 ip_column = &apos;D&apos; ip_value = &apos;C_ICONSET_5RATING&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 19 ip_column = &apos;D&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 20 ip_column = &apos;D&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 21 ip_column = &apos;D&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 22 ip_column = &apos;D&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 23 ip_column = &apos;D&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lo_style_conditional = lo_worksheet-&gt;add_new_conditional_style( ).
lo_style_conditional-&gt;rule = zcl_excel_style_conditional=&gt;c_rule_iconset.
lo_style_conditional-&gt;iconset = zcl_excel_style_conditional=&gt;c_iconset_5quarters.
lo_style_conditional-&gt;priority = 1.
lo_style_conditional-&gt;set_range( ip_start_column = &apos;E&apos;
ip_start_row = 19
ip_stop_column = &apos;E&apos;
ip_stop_row = 23 ).
lo_worksheet-&gt;set_cell( ip_row = 18 ip_column = &apos;E&apos; ip_value = &apos;C_ICONSET_5QUARTERS&apos; ).
lo_worksheet-&gt;set_cell( ip_row = 19 ip_column = &apos;E&apos; ip_value = &apos;10&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 20 ip_column = &apos;E&apos; ip_value = &apos;20&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 21 ip_column = &apos;E&apos; ip_value = &apos;30&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 22 ip_column = &apos;E&apos; ip_value = &apos;40&apos; ip_style = lv_style_number_guid ).
lo_worksheet-&gt;set_cell( ip_row = 23 ip_column = &apos;E&apos; ip_value = &apos;50&apos; ip_style = lv_style_number_guid ).
lv_file = lo_excel-&gt;save_as( zcl_excel=&gt;c_xlsx ).
&quot;convert to table
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
CALL FUNCTION &apos;GUI_DOWNLOAD&apos;
EXPORTING
bin_filesize = lv_bytecount
filename = &apos;C:\Iconset.xlsx&apos;
filetype = &apos;BIN&apos;
TABLES
data_tab = lt_file_tab.</source>
</PROG>
<TABL TABNAME="ZEXCEL_S_STYLE_FONT" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell Font" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120344" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="BOLD" DDLANGUAGE="E" POSITION="0001" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="ITALIC" DDLANGUAGE="E" POSITION="0002" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="UNDERLINE" DDLANGUAGE="E" POSITION="0003" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="UNDERLINE_MODE" DDLANGUAGE="E" POSITION="0004" ROLLNAME="CHAR20" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Char 20" REPTEXT="Char20" SCRTEXT_S="Char20" SCRTEXT_M="Char20" SCRTEXT_L="Char20" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="STRIKETHROUGH" DDLANGUAGE="E" POSITION="0005" ROLLNAME="FLAG" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="FLAG" ROUTPUTLEN="000000" HEADLEN="55" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" VALEXI="X" MASK=" CHARE" MASKLEN="0000" DDTEXT="General Flag" REPTEXT="Flag" SCRTEXT_S="Indicator" SCRTEXT_M="Indicator" SCRTEXT_L="Indicator" DOMNAME3L="FLAG" SHLPORIGIN="F" DEPTH="00" COMPTYPE="E" DEFFDNAME="FLAG" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="SIZE" DDLANGUAGE="E" POSITION="0006" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="COLOR" DDLANGUAGE="E" POSITION="0007" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="NAME" DDLANGUAGE="E" POSITION="0008" ROLLNAME="CHAR255" ADMINFIELD="0" INTTYPE="C" INTLEN="000510" DOMNAME="CHAR255" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="07" SCRLEN2="00" SCRLEN3="00" DATATYPE="CHAR" LENG="000255" OUTPUTLEN="000255" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Char255" SCRTEXT_S="Char255" DOMNAME3L="CHAR255" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="FAMILY" DDLANGUAGE="E" POSITION="0009" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FONT" FIELDNAME="SCHEME" DDLANGUAGE="E" POSITION="0010" ROLLNAME="ZEXCEL_STYLE_FONT_SCHEME" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="20" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Font scheme" REPTEXT="Font scheme" SCRTEXT_S="Scheme" SCRTEXT_M="Font scheme" SCRTEXT_L="Font scheme" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_CELLXFS" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell style" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="234104" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="NUMFMTID" DDLANGUAGE="E" POSITION="0001" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="FONTID" DDLANGUAGE="E" POSITION="0002" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="FILLID" DDLANGUAGE="E" POSITION="0003" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="BORDERID" DDLANGUAGE="E" POSITION="0004" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="XFID" DDLANGUAGE="E" POSITION="0005" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYNUMBERFORMAT" DDLANGUAGE="E" POSITION="0006" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYFONT" DDLANGUAGE="E" POSITION="0007" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYFILL" DDLANGUAGE="E" POSITION="0008" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELLXFS" FIELDNAME="APPLYBORDER" DDLANGUAGE="E" POSITION="0009" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_CELL_DATA" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell data" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="094200" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_ROW" DDLANGUAGE="E" POSITION="0001" ROLLNAME="ZEXCEL_CELL_ROW" ADMINFIELD="0" INTTYPE="X" INTLEN="000004" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="08" SCRLEN1="08" SCRLEN2="08" SCRLEN3="08" DTELMASTER="E" DATATYPE="INT4" LENG="000010" OUTPUTLEN="000010" DECIMALS="000000" SIGNFLAG="X" MASK=" INT4E" MASKLEN="0000" DDTEXT="Cell Row" REPTEXT="Cell Row" SCRTEXT_S="Row" SCRTEXT_M="Cell Row" SCRTEXT_L="Cell Row" DOMNAME3L="INT4" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_COLUMN" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_CELL_COLUMN" ADMINFIELD="0" INTTYPE="X" INTLEN="000004" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="11" SCRLEN1="06" SCRLEN2="11" SCRLEN3="11" DTELMASTER="E" DATATYPE="INT4" LENG="000010" OUTPUTLEN="000010" DECIMALS="000000" SIGNFLAG="X" MASK=" INT4E" MASKLEN="0000" DDTEXT="Cell Column" REPTEXT="Cell Column" SCRTEXT_S="Column" SCRTEXT_M="Cell Column" SCRTEXT_L="Cell Column" DOMNAME3L="INT4" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_VALUE" DDLANGUAGE="E" POSITION="0003" ROLLNAME="ZEXCEL_CELL_VALUE" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell Value" REPTEXT="Cell Value" SCRTEXT_S="Value" SCRTEXT_M="Cell Value" SCRTEXT_L="Cell Value" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_FORMULA" DDLANGUAGE="E" POSITION="0004" ROLLNAME="ZEXCEL_CELL_FORMULA" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell Formula" REPTEXT="Cell Formula" SCRTEXT_S="Formula" SCRTEXT_M="Cell Formula" SCRTEXT_L="Cell Formula" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_COORDS" DDLANGUAGE="E" POSITION="0005" ROLLNAME="ZEXCEL_CELL_COORDS" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="25" SCRLEN1="10" SCRLEN2="16" SCRLEN3="25" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell coordinates as Excel" REPTEXT="Cell coordinates as Excel" SCRTEXT_S="Cell coord" SCRTEXT_M="Cell coordinates" SCRTEXT_L="Cell coordinates as Excel" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_CELL_DATA" FIELDNAME="CELL_STYLE" DDLANGUAGE="E" POSITION="0006" ROLLNAME="ZEXCEL_CELL_STYLE" ADMINFIELD="0" INTTYPE="X" INTLEN="000016" DOMNAME="GUID16" ROUTPUTLEN="000000" HEADLEN="16" SCRLEN1="10" SCRLEN2="16" SCRLEN3="20" DTELMASTER="E" DATATYPE="RAW" LENG="000016" OUTPUTLEN="000032" DECIMALS="000000" MASK=" RAW E" MASKLEN="0000" DDTEXT="Style identifier" REPTEXT="Style identifier" SCRTEXT_S="Style no" SCRTEXT_M="Style identifier" SCRTEXT_L="Style identifier" DOMNAME3L="GUID16" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_SHARED_STRING" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Shared strings" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="163328" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_SHARED_STRING" FIELDNAME="STRING_NO" DDLANGUAGE="E" POSITION="0001" ROLLNAME="INT4" ADMINFIELD="0" INTTYPE="X" INTLEN="000004" DOMNAME="INT4" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="INT4" LENG="000010" OUTPUTLEN="000010" DECIMALS="000000" SIGNFLAG="X" MASK=" INT4E" MASKLEN="0000" DDTEXT="Natural Number" SCRTEXT_S="Number" SCRTEXT_M="Number" SCRTEXT_L="Natural Number" DOMNAME3L="INT4" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_SHARED_STRING" FIELDNAME="STRING_VALUE" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_CELL_VALUE" ADMINFIELD="0" INTTYPE="g" INTLEN="000008" DOMNAME="STRING" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="STRG" LENG="000000" OUTPUTLEN="000000" DECIMALS="000000" MASK=" STRGE" MASKLEN="0000" DDTEXT="Cell Value" REPTEXT="Cell Value" SCRTEXT_S="Value" SCRTEXT_M="Cell Value" SCRTEXT_L="Cell Value" DOMNAME3L="STRING" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_STYLES_MAPPING" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Style mapping" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100709" AS4TIME="174300" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLES_MAPPING" FIELDNAME="GUID" DDLANGUAGE="E" POSITION="0001" ROLLNAME="GUID_16" ADMINFIELD="0" INTTYPE="X" INTLEN="000016" DOMNAME="SYSUUID" ROUTPUTLEN="000000" HEADLEN="07" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="D" DATATYPE="RAW" LENG="000016" OUTPUTLEN="000032" DECIMALS="000000" MASK=" RAW E" MASKLEN="0000" DDTEXT="GUID in &apos;RAW&apos; format" REPTEXT="GUID 16" SCRTEXT_S="GUID 16" SCRTEXT_M="GUID 16" SCRTEXT_L="GUID 16" DOMNAME3L="SYSUUID" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLES_MAPPING" FIELDNAME="STYLE" DDLANGUAGE="E" POSITION="0002" ROLLNAME="INT1" ADMINFIELD="0" INTTYPE="X" INTLEN="000001" DOMNAME="INT1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="04" SCRLEN2="04" SCRLEN3="04" DTELMASTER="D" DATATYPE="INT1" LENG="000003" OUTPUTLEN="000003" DECIMALS="000000" MASK=" INT1E" MASKLEN="0000" DDTEXT="Byte Value" SCRTEXT_S="Byte" SCRTEXT_M="Byte" SCRTEXT_L="Byte" DOMNAME3L="INT1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLES_MAPPING" FIELDNAME="CELL_FORMAT" DDLANGUAGE="E" POSITION="0003" ROLLNAME="CHAR1" ADMINFIELD="0" INTTYPE="C" INTLEN="000002" DOMNAME="CHAR1" ROUTPUTLEN="000000" HEADLEN="00" SCRLEN1="00" SCRLEN2="00" SCRLEN3="00" DTELMASTER="D" DATATYPE="CHAR" LENG="000001" OUTPUTLEN="000001" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Single-Character Indicator" DOMNAME3L="CHAR1" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_STYLE_BORDER" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Border Style" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100706" AS4TIME="120557" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="LEFT_COLOR" DDLANGUAGE="E" POSITION="0001" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="LEFT_STYLE" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="RIGHT_COLOR" DDLANGUAGE="E" POSITION="0003" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="RIGHT_STYLE" DDLANGUAGE="E" POSITION="0004" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="TOP_COLOR" DDLANGUAGE="E" POSITION="0005" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="TOP_STYLE" DDLANGUAGE="E" POSITION="0006" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="BOTTOM_COLOR" DDLANGUAGE="E" POSITION="0007" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="BOTTOM_STYLE" DDLANGUAGE="E" POSITION="0008" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="DIAGONAL_COLOR" DDLANGUAGE="E" POSITION="0009" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_BORDER" FIELDNAME="DIAGONAL_STYLE" DDLANGUAGE="E" POSITION="0010" ROLLNAME="ZEXCEL_BORDER" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="12" SCRLEN1="06" SCRLEN2="12" SCRLEN3="12" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Border style" REPTEXT="Border style" SCRTEXT_S="Border" SCRTEXT_M="Border style" SCRTEXT_L="Border style" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TABL TABNAME="ZEXCEL_S_STYLE_FILL" DDLANGUAGE="E" TABCLASS="INTTAB" DATMIN="0000000000" DATMAX="0000000000" DATAVG="0000000000" DDTEXT="Cell Fill" AUTHCLASS="00" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120552" PROZPUFF="000" EXCLASS="1">
<dd09l AS4VERS="0000" SCHFELDANZ="000" AS4DATE="00000000" AS4TIME="000000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="FILLTYPE" DDLANGUAGE="E" POSITION="0001" ROLLNAME="ZEXCEL_FILL_TYPE" ADMINFIELD="0" INTTYPE="C" INTLEN="000040" DOMNAME="CHAR20" ROUTPUTLEN="000000" HEADLEN="09" SCRLEN1="09" SCRLEN2="09" SCRLEN3="09" DTELMASTER="E" DATATYPE="CHAR" LENG="000020" OUTPUTLEN="000020" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Fill Type" REPTEXT="Fill Type" SCRTEXT_S="Fill Type" SCRTEXT_M="Fill Type" SCRTEXT_L="Fill Type" DOMNAME3L="CHAR20" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="ROTATION" DDLANGUAGE="E" POSITION="0002" ROLLNAME="ZEXCEL_ROTATION" ADMINFIELD="0" INTTYPE="P" INTLEN="000008" DOMNAME="DEC_15_3" ROUTPUTLEN="000000" HEADLEN="19" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="DEC" LENG="000015" OUTPUTLEN="000019" DECIMALS="000003" MASK=" DEC E" MASKLEN="0000" DDTEXT="Rotation" REPTEXT="Rotation" SCRTEXT_S="Rotation" SCRTEXT_M="Rotation" SCRTEXT_L="Rotation" DOMNAME3L="DEC_15_3" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="FGCOLOR" DDLANGUAGE="E" POSITION="0003" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
<dd03p TABNAME="ZEXCEL_S_STYLE_FILL" FIELDNAME="BGCOLOR" DDLANGUAGE="E" POSITION="0004" ROLLNAME="ZEXCEL_STYLE_COLOR_ARGB" ADMINFIELD="0" INTTYPE="C" INTLEN="000016" DOMNAME="CHAR8" ROUTPUTLEN="000000" HEADLEN="10" SCRLEN1="10" SCRLEN2="15" SCRLEN3="20" DTELMASTER="E" DATATYPE="CHAR" LENG="000008" OUTPUTLEN="000008" DECIMALS="000000" MASK=" CHARE" MASKLEN="0000" DDTEXT="Color ARGB" REPTEXT="Color ARGB" SCRTEXT_S="Color ARGB" SCRTEXT_M="Color ARGB" SCRTEXT_L="Color ARGB" DOMNAME3L="CHAR8" DEPTH="00" COMPTYPE="E" EXCLASS="0" DBPOSITION="0000"/>
</TABL>
<TTYP TYPENAME="ZEXCEL_T_STYLE_FONT" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLE_FONT" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0010" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120344" DDTEXT="Table type for styles ZEXCEL_S_STYLE_FONT" TYPELEN="000618" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="BOLD"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="ITALIC"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="UNDERLINE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="UNDERLINE_MODE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0005" ROWTYPEPOS="0005" KEYFIELD="STRIKETHROUGH"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0006" ROWTYPEPOS="0006" KEYFIELD="SIZE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0007" ROWTYPEPOS="0007" KEYFIELD="COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0008" ROWTYPEPOS="0008" KEYFIELD="NAME"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0009" ROWTYPEPOS="0009" KEYFIELD="FAMILY"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FONT" KEYFDPOS="0010" ROWTYPEPOS="0010" KEYFIELD="SCHEME"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_STYLE_FILL" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLE_FILL" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0004" AS4USER="FEMIA" AS4DATE="20100705" AS4TIME="120624" DDTEXT="Cell Fills" TYPELEN="000080" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="FILLTYPE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="ROTATION"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="FGCOLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_FILL" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="BGCOLOR"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_STYLE_BORDER" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLE_BORDER" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0010" AS4USER="FEMIA" AS4DATE="20100706" AS4TIME="120613" DDTEXT="Border Style" TYPELEN="000280" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="LEFT_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="LEFT_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="RIGHT_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="RIGHT_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0005" ROWTYPEPOS="0005" KEYFIELD="TOP_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0006" ROWTYPEPOS="0006" KEYFIELD="TOP_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0007" ROWTYPEPOS="0007" KEYFIELD="BOTTOM_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0008" ROWTYPEPOS="0008" KEYFIELD="BOTTOM_STYLE"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0009" ROWTYPEPOS="0009" KEYFIELD="DIAGONAL_COLOR"/>
<dd42v TYPENAME="ZEXCEL_T_STYLE_BORDER" KEYFDPOS="0010" ROWTYPEPOS="0010" KEYFIELD="DIAGONAL_STYLE"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_STYLES_MAPPING" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_STYLES_MAPPING" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="D" KEYKIND="N" KEYFDCOUNT="0000" AS4USER="FEMIA" AS4DATE="20100709" AS4TIME="174301" DDTEXT="Styles mapping" TYPELEN="000020" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000"/>
<TTYP TYPENAME="ZEXCEL_T_SHARED_STRING" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_SHARED_STRING" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="D" KEYKIND="N" KEYFDCOUNT="0000" AS4USER="FEMIA" AS4DATE="20100702" AS4TIME="163328" DDTEXT="Shared Strings" TYPELEN="000012" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000"/>
<TTYP TYPENAME="ZEXCEL_T_CELL_DATA_UNSORTED" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_CELL_DATA" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="D" KEYKIND="N" KEYFDCOUNT="0000" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="094202" DDTEXT="Excel worksheet content" TYPELEN="000048" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000"/>
<TTYP TYPENAME="ZEXCEL_T_CELL_DATA" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_CELL_DATA" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0002" AS4USER="FEMIA" AS4DATE="20100710" AS4TIME="094202" DDTEXT="Excel worksheet content" TYPELEN="000048" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_CELL_DATA" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="CELL_ROW"/>
<dd42v TYPENAME="ZEXCEL_T_CELL_DATA" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="CELL_COLUMN"/>
</TTYP>
<TTYP TYPENAME="ZEXCEL_T_CELLXFS" DDLANGUAGE="E" ROWTYPE="ZEXCEL_S_CELLXFS" ROWKIND="S" DATATYPE="STRU" LENG="000000" DECIMALS="000000" ACCESSMODE="T" KEYDEF="K" KEYKIND="N" KEYFDCOUNT="0009" AS4USER="FEMIA" AS4DATE="20100708" AS4TIME="235645" DDTEXT="Cell styles" TYPELEN="000009" CTLENG="000000" CTDECIMALS="000000" OCCURS="00000">
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0001" ROWTYPEPOS="0001" KEYFIELD="NUMFMTID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0002" ROWTYPEPOS="0002" KEYFIELD="FONTID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0003" ROWTYPEPOS="0003" KEYFIELD="FILLID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0004" ROWTYPEPOS="0004" KEYFIELD="BORDERID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0005" ROWTYPEPOS="0005" KEYFIELD="XFID"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0006" ROWTYPEPOS="0006" KEYFIELD="APPLYNUMBERFORMAT"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0007" ROWTYPEPOS="0007" KEYFIELD="APPLYFONT"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0008" ROWTYPEPOS="0008" KEYFIELD="APPLYFILL"/>
<dd42v TYPENAME="ZEXCEL_T_CELLXFS" KEYFDPOS="0009" ROWTYPEPOS="0009" KEYFIELD="APPLYBORDER"/>
</TTYP>
</nugget>