mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-05 02:39:48 +08:00
554 lines
35 KiB
XML
554 lines
35 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
||
<CLAS CLSNAME="ZCL_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Excel creator" CATEGORY="00" EXPOSURE="2" STATE="1" RELEASE="0" CLSFINAL="X" CLSCCINCL="X" FIXPT="X" UNICODE="X" CLSBCCAT="00" DURATION_TYPE="0 " RISK_LEVEL="0 ">
|
||
<implementing CLSNAME="ZCL_EXCEL" REFCLSNAME="ZIF_EXCEL_BOOK_VBA_PROJECT" VERSION="1" EXPOSURE="2" STATE="1" RELTYPE="1" EDITORDER="0 "/>
|
||
<implementing CLSNAME="ZCL_EXCEL" REFCLSNAME="ZIF_EXCEL_BOOK_PROTECTION" VERSION="1" EXPOSURE="2" STATE="1" RELTYPE="1" EDITORDER="0 "/>
|
||
<implementing CLSNAME="ZCL_EXCEL" REFCLSNAME="ZIF_EXCEL_BOOK_PROPERTIES" VERSION="1" EXPOSURE="2" STATE="1" RELTYPE="1" EDITORDER="0 "/>
|
||
<localImplementation>*"* local class implementation for public class
|
||
*"* use this source file for the implementation part of
|
||
*"* local helper classes</localImplementation>
|
||
<localTypes>*"* use this source file for any type declarations (class
|
||
*"* definitions, interfaces or data types) you need for method
|
||
*"* implementation or private method's signature</localTypes>
|
||
<localMacros>*"* use this source file for any macro definitions you need
|
||
*"* in the implementation part of the class</localMacros>
|
||
<localTestClasses>CLASS zcl_tc_excel DEFINITION DEFERRED.
|
||
CLASS zcl_excel DEFINITION LOCAL FRIENDS zcl_tc_excel.
|
||
|
||
*----------------------------------------------------------------------*
|
||
* CLASS zcl_Tc_Excel DEFINITION
|
||
*----------------------------------------------------------------------*
|
||
*
|
||
*----------------------------------------------------------------------*
|
||
CLASS zcl_tc_excel DEFINITION FOR TESTING
|
||
DURATION SHORT
|
||
RISK LEVEL HARMLESS
|
||
.
|
||
*?<asx:abap xmlns:asx="http://www.sap.com/abapxml" version="1.0">
|
||
*?<asx:values>
|
||
*?<TESTCLASS_OPTIONS>
|
||
*?<TEST_CLASS>zcl_Tc_Excel
|
||
*?</TEST_CLASS>
|
||
*?<TEST_MEMBER>f_Cut
|
||
*?</TEST_MEMBER>
|
||
*?<OBJECT_UNDER_TEST>ZCL_EXCEL
|
||
*?</OBJECT_UNDER_TEST>
|
||
*?<OBJECT_IS_LOCAL/>
|
||
*?<GENERATE_FIXTURE>X
|
||
*?</GENERATE_FIXTURE>
|
||
*?<GENERATE_CLASS_FIXTURE>X
|
||
*?</GENERATE_CLASS_FIXTURE>
|
||
*?<GENERATE_INVOCATION>X
|
||
*?</GENERATE_INVOCATION>
|
||
*?<GENERATE_ASSERT_EQUAL>X
|
||
*?</GENERATE_ASSERT_EQUAL>
|
||
*?</TESTCLASS_OPTIONS>
|
||
*?</asx:values>
|
||
*?</asx:abap>
|
||
PRIVATE SECTION.
|
||
* ================
|
||
DATA:
|
||
f_cut TYPE REF TO zcl_excel. "class under test
|
||
|
||
CLASS-METHODS: class_setup.
|
||
CLASS-METHODS: class_teardown.
|
||
METHODS: setup.
|
||
METHODS: teardown.
|
||
METHODS: create_empty_excel FOR TESTING.
|
||
|
||
ENDCLASS. "zcl_Tc_Excel
|
||
|
||
|
||
*----------------------------------------------------------------------*
|
||
* CLASS zcl_Tc_Excel IMPLEMENTATION
|
||
*----------------------------------------------------------------------*
|
||
*
|
||
*----------------------------------------------------------------------*
|
||
CLASS zcl_tc_excel IMPLEMENTATION.
|
||
* ==================================
|
||
|
||
METHOD class_setup.
|
||
* ===================
|
||
|
||
|
||
ENDMETHOD. "class_Setup
|
||
|
||
|
||
METHOD class_teardown.
|
||
* ======================
|
||
|
||
|
||
ENDMETHOD. "class_Teardown
|
||
|
||
|
||
METHOD setup.
|
||
* =============
|
||
|
||
CREATE OBJECT f_cut.
|
||
ENDMETHOD. "setup
|
||
|
||
|
||
METHOD teardown.
|
||
* ================
|
||
|
||
|
||
ENDMETHOD. "teardown
|
||
|
||
*// START TEST METHODS
|
||
|
||
METHOD create_empty_excel.
|
||
* ==================================
|
||
|
||
DATA: lv_count TYPE i.
|
||
lv_count = f_cut->get_worksheets_size( ).
|
||
|
||
cl_abap_unit_assert=>assert_equals( act = lv_count
|
||
exp = 1
|
||
msg = 'Testing number of sheet'
|
||
level = if_aunit_constants=>tolerable ).
|
||
ENDMETHOD. "create_empty_excel
|
||
|
||
*// END TEST METHODS
|
||
|
||
|
||
ENDCLASS. "zcl_Tc_Excel</localTestClasses>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="AUTOFILTERS" VERSION="1" LANGU="E" DESCRIPT="Autofilters collection" EXPOSURE="0" STATE="1" EDITORDER="5 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_AUTOFILTERS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="CHARTS" VERSION="1" LANGU="E" DESCRIPT="Charts collection" EXPOSURE="0" STATE="1" EDITORDER="9 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWINGS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="DEFAULT_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" EXPOSURE="0" STATE="1" EDITORDER="8 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="DRAWINGS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" EXPOSURE="0" STATE="1" EDITORDER="1 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_DRAWINGS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="LEGACY_PALETTE" VERSION="1" LANGU="E" EXPOSURE="2" STATE="1" EDITORDER="2 " ATTDECLTYP="0" ATTRDONLY="X" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_LEGACY_PALETTE" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="RANGES" VERSION="1" LANGU="E" DESCRIPT="Ranges collection" EXPOSURE="0" STATE="1" EDITORDER="2 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="SECURITY" VERSION="1" LANGU="E" DESCRIPT="Security" EXPOSURE="2" STATE="1" EDITORDER="1 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_SECURITY" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="STYLES" VERSION="1" LANGU="E" DESCRIPT="Styles collection" EXPOSURE="0" STATE="1" EDITORDER="3 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLES" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="T_STYLEMAPPING1" VERSION="1" LANGU="E" DESCRIPT="Stylemapping: Values -> GUID" EXPOSURE="0" STATE="1" EDITORDER="6 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_STYLEMAPPING1" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="T_STYLEMAPPING2" VERSION="1" LANGU="E" DESCRIPT="Stylemapping: GUID -> Values" EXPOSURE="0" STATE="1" EDITORDER="7 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="ZEXCEL_T_STYLEMAPPING2" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="USE_TEMPLATE" VERSION="1" LANGU="E" DESCRIPT="Checkbox" EXPOSURE="2" STATE="1" EDITORDER="3 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="1" TYPE="XFELD" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<attribute CLSNAME="ZCL_EXCEL" CMPNAME="WORKSHEETS" VERSION="1" LANGU="E" DESCRIPT="Worksheets collection" EXPOSURE="0" STATE="1" EDITORDER="4 " ATTDECLTYP="0" ATTEXPVIRT="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEETS" SRCROW1="0 " SRCCOLUMN1="0 " SRCROW2="0 " SRCCOLUMN2="0 " TYPESRC_LENG="0 "/>
|
||
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_PROPERTIES~INITIALIZE">
|
||
<source>method ZIF_EXCEL_BOOK_PROPERTIES~INITIALIZE.
|
||
DATA: lv_timestamp TYPE timestampl.
|
||
|
||
me->zif_excel_book_properties~application = 'Microsoft Excel'.
|
||
me->zif_excel_book_properties~appversion = '12.0000'.
|
||
|
||
GET TIME STAMP FIELD lv_timestamp.
|
||
me->zif_excel_book_properties~created = lv_timestamp.
|
||
me->zif_excel_book_properties~creator = sy-uname.
|
||
me->zif_excel_book_properties~description = 'Generated with ABAP2XLSX Version 7_0'.
|
||
me->zif_excel_book_properties~modified = lv_timestamp.
|
||
me->zif_excel_book_properties~lastmodifiedby = sy-uname.
|
||
endmethod.</source>
|
||
</interfaceMethod>
|
||
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_PROTECTION~INITIALIZE">
|
||
<source>method ZIF_EXCEL_BOOK_PROTECTION~INITIALIZE.
|
||
me->zif_excel_book_protection~protected = zif_excel_book_protection=>c_unprotected.
|
||
me->zif_excel_book_protection~lockrevision = zif_excel_book_protection=>c_unlocked.
|
||
me->zif_excel_book_protection~lockstructure = zif_excel_book_protection=>c_unlocked.
|
||
me->zif_excel_book_protection~lockwindows = zif_excel_book_protection=>c_unlocked.
|
||
CLEAR me->zif_excel_book_protection~workbookpassword.
|
||
CLEAR me->zif_excel_book_protection~revisionspassword.
|
||
endmethod.</source>
|
||
</interfaceMethod>
|
||
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME">
|
||
<source>method ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME.
|
||
me->zif_excel_book_vba_project~codename = ip_codename.
|
||
endmethod.</source>
|
||
</interfaceMethod>
|
||
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME_PR">
|
||
<source>method ZIF_EXCEL_BOOK_VBA_PROJECT~SET_CODENAME_PR.
|
||
me->zif_excel_book_vba_project~codename_pr = ip_codename_pr.
|
||
endmethod.</source>
|
||
</interfaceMethod>
|
||
<interfaceMethod CLSNAME="ZCL_EXCEL" CPDNAME="ZIF_EXCEL_BOOK_VBA_PROJECT~SET_VBAPROJECT">
|
||
<source>method ZIF_EXCEL_BOOK_VBA_PROJECT~SET_VBAPROJECT.
|
||
me->zif_excel_book_vba_project~vbaproject = ip_vbaproject.
|
||
endmethod.</source>
|
||
</interfaceMethod>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_AUTOFILTER" VERSION="1" LANGU="E" DESCRIPT="Create a new autofilter" EXPOSURE="2" STATE="1" EDITORDER="1 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_AUTOFILTER" SCONAME="IO_SHEET" VERSION="1" LANGU="E" DESCRIPT="Sheet GUID for the OLTP System (RAW16)" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_AUTOFILTER" SCONAME="RO_AUTOFILTER" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_AUTOFILTER"/>
|
||
<source>method ADD_NEW_AUTOFILTER.
|
||
* Check for autofilter reference: new or overwrite; only one per sheet
|
||
ro_autofilter = autofilters->add( io_sheet = io_sheet ) .
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" VERSION="1" LANGU="E" DESCRIPT="Create a new drawing" EXPOSURE="2" STATE="1" EDITORDER="2 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" SCONAME="IP_TYPE" VERSION="1" LANGU="E" DESCRIPT="Excel Drawing type" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_DRAWING_TYPE" PARVALUE="ZCL_EXCEL_DRAWING=>TYPE_IMAGE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_DRAWING" SCONAME="IP_TITLE" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " 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="3 " DISPID="0 " 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_type = ip_type
|
||
ip_title = ip_title.
|
||
|
||
CASE ip_type.
|
||
WHEN 'image'.
|
||
drawings->add( eo_drawing ).
|
||
WHEN 'chart'.
|
||
charts->add( eo_drawing ).
|
||
ENDCASE.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_RANGE" VERSION="1" LANGU="E" DESCRIPT="Create a new range" EXPOSURE="2" STATE="1" EDITORDER="3 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_RANGE" SCONAME="EO_RANGE" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_RANGE"/>
|
||
<source>method ADD_NEW_RANGE.
|
||
* Create default blank range
|
||
CREATE OBJECT eo_range.
|
||
ranges->add( eo_range ).
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" VERSION="1" LANGU="E" DESCRIPT="Create a new style" EXPOSURE="2" STATE="1" EDITORDER="4 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" SCONAME="IP_GUID" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE" PAROPTIONL="X"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_STYLE" SCONAME="EO_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
|
||
<source>method ADD_NEW_STYLE.
|
||
* Start of deletion # issue 139 - Dateretention of cellstyles
|
||
* CREATE OBJECT eo_style.
|
||
* styles->add( eo_style ).
|
||
* End of deletion # issue 139 - Dateretention of cellstyles
|
||
* Start of insertion # issue 139 - Dateretention of cellstyles
|
||
* Create default style
|
||
CREATE OBJECT eo_style
|
||
EXPORTING
|
||
ip_guid = ip_guid.
|
||
styles->add( eo_style ).
|
||
|
||
DATA: style2 TYPE zexcel_s_stylemapping.
|
||
* Copy to new representations
|
||
style2 = stylemapping_dynamic_style( eo_style ).
|
||
INSERT style2 INTO TABLE t_stylemapping1.
|
||
INSERT style2 INTO TABLE t_stylemapping2.
|
||
* End of insertion # issue 139 - Dateretention of cellstyles
|
||
|
||
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="5 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" 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 " 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 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
|
||
<exception CLSNAME="ZCL_EXCEL" CMPNAME="ADD_NEW_WORKSHEET" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 "/>
|
||
<source>method ADD_NEW_WORKSHEET.
|
||
DATA: lv_guid TYPE guid_16.
|
||
|
||
* Create default blank worksheet
|
||
CREATE OBJECT eo_worksheet
|
||
EXPORTING
|
||
ip_excel = me
|
||
ip_title = ip_title.
|
||
|
||
worksheets->add( eo_worksheet ).
|
||
worksheets->active_worksheet = worksheets->size( ).
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="ADD_STATIC_STYLES" VERSION="1" LANGU="E" DESCRIPT="Add static styles to styles iterator" EXPOSURE="2" STATE="1" EDITORDER="6 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<source>method ADD_STATIC_STYLES.
|
||
" # issue 139
|
||
* sp#ƒÂ¤ter hier noch die Worksheets abklappern, welche Styles #ƒÂ#berhaupt noch ben#ƒÂ#tigt werden
|
||
* und nur diese dann auch hier zur Verf#ƒÂ#gung stellen
|
||
* Da muss ich noch mal nachfragen, ob die beiden ersten Styles, die scheinbar immer mit dem
|
||
* EXCEL-Objekt erzeugt werden evtl. immer ben#ƒÂ#tigt werden, egal ob verwendet oder nicht
|
||
* Aber als Start fange ich mal an einfach alle static styles der Reihe nach hinzuzuf#ƒÂ#gen
|
||
FIELD-SYMBOLS: <style1> LIKE LINE OF t_stylemapping1,
|
||
<style2> LIKE LINE OF t_stylemapping2.
|
||
DATA: style TYPE REF TO zcl_excel_style.
|
||
|
||
LOOP AT me->t_stylemapping1 ASSIGNING <style1> WHERE added_to_iterator IS INITIAL.
|
||
READ TABLE me->t_stylemapping2 ASSIGNING <style2> WITH TABLE KEY guid = <style1>-guid.
|
||
CHECK sy-subrc = 0. " Should always be true since these tables are being filled parallel
|
||
|
||
style = me->add_new_style( <style1>-guid ).
|
||
|
||
zcl_excel_common=>recursive_struct_to_class( EXPORTING i_source = <style1>-complete_style
|
||
i_sourcex = <style1>-complete_stylex
|
||
CHANGING e_target = style ).
|
||
|
||
ENDLOOP.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="CONSTRUCTOR" VERSION="1" LANGU="E" DESCRIPT="CONSTRUCTOR" EXPOSURE="2" STATE="1" EDITORDER="7 " DISPID="0 " MTDTYPE="2" MTDDECLTYP="0" 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 security.
|
||
CREATE OBJECT worksheets.
|
||
CREATE OBJECT ranges.
|
||
CREATE OBJECT styles.
|
||
CREATE OBJECT drawings
|
||
EXPORTING
|
||
ip_type = zcl_excel_drawing=>type_image.
|
||
CREATE OBJECT charts
|
||
EXPORTING
|
||
ip_type = zcl_excel_drawing=>type_chart.
|
||
CREATE OBJECT legacy_palette.
|
||
CREATE OBJECT autofilters.
|
||
|
||
me->zif_excel_book_protection~initialize( ).
|
||
me->zif_excel_book_properties~initialize( ).
|
||
|
||
me->add_new_worksheet( ).
|
||
me->add_new_style( ). " Standard style
|
||
lo_style = me->add_new_style( ). " Standard style with fill gray125
|
||
lo_style->fill->filltype = zcl_excel_style_fill=>c_fill_pattern_gray125.
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_SHEET_INDEX" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet index" EXPOSURE="2" STATE="1" EDITORDER="8 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_SHEET_INDEX" SCONAME="R_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
|
||
<source>method GET_ACTIVE_SHEET_INDEX.
|
||
r_active_worksheet = me->worksheets->active_worksheet.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Get active worksheet" EXPOSURE="2" STATE="1" EDITORDER="9 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" 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 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
|
||
<source>method GET_ACTIVE_WORKSHEET.
|
||
|
||
eo_worksheet = me->worksheets->get( me->worksheets->active_worksheet ).
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_AUTOFILTERS_REFERENCE" VERSION="1" LANGU="E" DESCRIPT="Get filter reference" EXPOSURE="2" STATE="1" EDITORDER="10 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_AUTOFILTERS_REFERENCE" SCONAME="RO_AUTOFILTERS" VERSION="1" LANGU="E" DESCRIPT="Autofilters collection" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_AUTOFILTERS"/>
|
||
<source>method GET_AUTOFILTERS_REFERENCE.
|
||
|
||
ro_autofilters = autofilters.
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_DEFAULT_STYLE" VERSION="1" LANGU="E" DESCRIPT="Get default style" EXPOSURE="2" STATE="1" EDITORDER="11 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_DEFAULT_STYLE" SCONAME="EP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
|
||
<source>method GET_DEFAULT_STYLE.
|
||
ep_style = me->default_style.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get drawing iterator" EXPOSURE="2" STATE="1" EDITORDER="12 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" SCONAME="IP_TYPE" VERSION="1" LANGU="E" DESCRIPT="Excel Drawing type" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_DRAWING_TYPE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_DRAWINGS_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
|
||
<source>method GET_DRAWINGS_ITERATOR.
|
||
|
||
CASE ip_type.
|
||
WHEN zcl_excel_drawing=>type_image.
|
||
eo_iterator = me->drawings->get_iterator( ).
|
||
WHEN zcl_excel_drawing=>type_chart.
|
||
eo_iterator = me->charts->get_iterator( ).
|
||
WHEN OTHERS.
|
||
ENDCASE.
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_NEXT_TABLE_ID" VERSION="1" LANGU="E" DESCRIPT="Get table ID unique across sheets" EXPOSURE="2" STATE="1" EDITORDER="13 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_NEXT_TABLE_ID" SCONAME="EP_ID" VERSION="1" LANGU="E" DESCRIPT="ID" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
|
||
<source>method GET_NEXT_TABLE_ID.
|
||
DATA: lo_worksheet TYPE REF TO zcl_excel_worksheet,
|
||
lo_iterator TYPE REF TO cl_object_collection_iterator,
|
||
lv_tables_count TYPE i.
|
||
|
||
lo_iterator = me->get_worksheets_iterator( ).
|
||
WHILE lo_iterator->if_object_collection_iterator~has_next( ) EQ abap_true.
|
||
lo_worksheet ?= lo_iterator->if_object_collection_iterator~get_next( ).
|
||
|
||
lv_tables_count = lo_worksheet->get_tables_size( ).
|
||
ADD lv_tables_count TO ep_id.
|
||
|
||
ENDWHILE.
|
||
|
||
ADD 1 TO ep_id.
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_RANGES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get ranges iterator" EXPOSURE="2" STATE="1" EDITORDER="14 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_RANGES_ITERATOR" SCONAME="EO_ITERATOR" VERSION="1" LANGU="E" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
|
||
<source>method GET_RANGES_ITERATOR.
|
||
|
||
eo_iterator = me->ranges->get_iterator( ).
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_STATIC_CELLSTYLE_GUID" VERSION="1" LANGU="E" DESCRIPT="Get GUID for static cellstyle" EXPOSURE="2" STATE="1" EDITORDER="15 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STATIC_CELLSTYLE_GUID" SCONAME="IP_CSTYLE_COMPLETE" VERSION="1" LANGU="E" DESCRIPT="Values for Cellstyles ( 1 structure holds all )" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_S_CSTYLE_COMPLETE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STATIC_CELLSTYLE_GUID" SCONAME="IP_CSTYLEX_COMPLETE" VERSION="1" LANGU="E" DESCRIPT="Changeflag for Cellstyles ( 1 structure holds all )" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_S_CSTYLEX_COMPLETE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STATIC_CELLSTYLE_GUID" SCONAME="EP_GUID" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="3 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
|
||
<source>method GET_STATIC_CELLSTYLE_GUID.
|
||
" # issue 139
|
||
DATA: style LIKE LINE OF me->t_stylemapping1.
|
||
|
||
READ TABLE me->t_stylemapping1 INTO style
|
||
WITH TABLE KEY dynamic_style_guid = style-guid " no dynamic style --> look for initial guid here
|
||
complete_style = ip_cstyle_complete
|
||
complete_stylex = ip_cstylex_complete.
|
||
IF sy-subrc <> 0.
|
||
style-complete_style = ip_cstyle_complete.
|
||
style-complete_stylex = ip_cstylex_complete.
|
||
CALL FUNCTION 'GUID_CREATE'
|
||
IMPORTING
|
||
ev_guid_16 = style-guid.
|
||
INSERT style INTO TABLE me->t_stylemapping1.
|
||
INSERT style INTO TABLE me->t_stylemapping2.
|
||
|
||
ENDIF.
|
||
|
||
ep_guid = style-guid.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLES_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get styles iterator" EXPOSURE="2" STATE="1" EDITORDER="16 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" 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 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
|
||
<source>method GET_STYLES_ITERATOR.
|
||
|
||
eo_iterator = me->styles->get_iterator( ).
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_INDEX_IN_STYLES" VERSION="1" LANGU="E" DESCRIPT="Get index of style in styles" EXPOSURE="2" STATE="1" EDITORDER="17 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_INDEX_IN_STYLES" SCONAME="IP_GUID" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_INDEX_IN_STYLES" SCONAME="EP_INDEX" VERSION="1" LANGU="E" DESCRIPT="Index of Internal Tables" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="SYTABIX"/>
|
||
<exception CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_INDEX_IN_STYLES" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 "/>
|
||
<source>method GET_STYLE_INDEX_IN_STYLES.
|
||
DATA: index TYPE syindex.
|
||
DATA: lo_iterator TYPE REF TO cl_object_collection_iterator,
|
||
lo_style TYPE REF TO zcl_excel_style.
|
||
|
||
CHECK ip_guid IS NOT INITIAL.
|
||
|
||
|
||
lo_iterator = me->get_styles_iterator( ).
|
||
WHILE lo_iterator->has_next( ) = 'X'.
|
||
ADD 1 TO index.
|
||
lo_style ?= lo_iterator->get_next( ).
|
||
IF lo_style->get_guid( ) = ip_guid.
|
||
ep_index = index.
|
||
EXIT.
|
||
ENDIF.
|
||
ENDWHILE.
|
||
|
||
IF ep_index IS INITIAL.
|
||
RAISE EXCEPTION TYPE zcx_excel
|
||
EXPORTING
|
||
error = 'Index not found'.
|
||
else.
|
||
SUBTRACT 1 from ep_index. " In excel list starts with "0"
|
||
ENDIF.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_TO_GUID" VERSION="1" LANGU="E" DESCRIPT="Get style(structure) for guid" EXPOSURE="2" STATE="1" EDITORDER="18 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_TO_GUID" SCONAME="IP_GUID" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_TO_GUID" SCONAME="EP_STYLEMAPPING" VERSION="1" LANGU="E" DESCRIPT="Stypemapping" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLEMAPPING"/>
|
||
<exception CLSNAME="ZCL_EXCEL" CMPNAME="GET_STYLE_TO_GUID" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 "/>
|
||
<source>method GET_STYLE_TO_GUID.
|
||
" # issue 139
|
||
|
||
READ TABLE me->t_stylemapping2 INTO ep_stylemapping WITH TABLE KEY guid = ip_guid.
|
||
IF sy-subrc <> 0.
|
||
RAISE EXCEPTION TYPE zcx_excel
|
||
EXPORTING
|
||
error = 'GUID not found'.
|
||
ENDIF.
|
||
|
||
IF ep_stylemapping-dynamic_style_guid IS NOT INITIAL.
|
||
zcl_excel_common=>recursive_class_to_struct( EXPORTING i_source = ep_stylemapping-cl_style
|
||
CHANGING e_target = ep_stylemapping-complete_style
|
||
e_targetx = ep_stylemapping-complete_stylex ).
|
||
ENDIF.
|
||
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEETS_ITERATOR" VERSION="1" LANGU="E" DESCRIPT="Get worksheets iterator" EXPOSURE="2" STATE="1" EDITORDER="19 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" 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 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="CL_OBJECT_COLLECTION_ITERATOR"/>
|
||
<source>method GET_WORKSHEETS_ITERATOR.
|
||
|
||
eo_iterator = me->worksheets->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="20 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" 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 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME"/>
|
||
<source>method GET_WORKSHEETS_NAME.
|
||
|
||
ep_name = me->worksheets->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="21 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" 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 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="I"/>
|
||
<source>method GET_WORKSHEETS_SIZE.
|
||
|
||
ep_size = me->worksheets->size( ).
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEET_BY_NAME" VERSION="1" LANGU="E" DESCRIPT="Get worksheet by name" EXPOSURE="2" STATE="1" EDITORDER="22 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEET_BY_NAME" SCONAME="IP_SHEET_NAME" VERSION="1" LANGU="E" DESCRIPT="Title" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_SHEET_TITLE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="GET_WORKSHEET_BY_NAME" SCONAME="EO_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="3" TYPE="ZCL_EXCEL_WORKSHEET"/>
|
||
<source>method GET_WORKSHEET_BY_NAME.
|
||
|
||
DATA: lv_index TYPE zexcel_active_worksheet,
|
||
l_size TYPE i.
|
||
|
||
l_size = get_worksheets_size( ).
|
||
|
||
DO l_size TIMES.
|
||
lv_index = sy-index.
|
||
eo_worksheet = me->worksheets->get( lv_index ).
|
||
IF eo_worksheet->get_title( ) = ip_sheet_name.
|
||
RETURN.
|
||
ENDIF.
|
||
ENDDO.
|
||
|
||
CLEAR eo_worksheet.
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX" VERSION="1" LANGU="E" DESCRIPT="Set active worksheet index" EXPOSURE="2" STATE="1" EDITORDER="23 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX" SCONAME="I_ACTIVE_WORKSHEET" VERSION="1" LANGU="E" DESCRIPT="Active Worksheet" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_ACTIVE_WORKSHEET"/>
|
||
<source>method SET_ACTIVE_SHEET_INDEX.
|
||
me->worksheets->active_worksheet = i_active_worksheet.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX_BY_NAME" VERSION="1" LANGU="E" DESCRIPT="Set active worksheet index by name" EXPOSURE="2" STATE="1" EDITORDER="24 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_ACTIVE_SHEET_INDEX_BY_NAME" SCONAME="I_WORKSHEET_NAME" VERSION="1" LANGU="E" DESCRIPT="Worksheets name" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_WORKSHEETS_NAME"/>
|
||
<source>method SET_ACTIVE_SHEET_INDEX_BY_NAME.
|
||
|
||
DATA: ws_it TYPE REF TO cl_object_collection_iterator,
|
||
ws TYPE REF TO zcl_excel_worksheet,
|
||
lv_title TYPE ZEXCEL_SHEET_TITLE,
|
||
count TYPE i VALUE 1.
|
||
|
||
ws_it = me->worksheets->get_iterator( ).
|
||
|
||
WHILE ws_it->if_object_collection_iterator~has_next( ) = abap_true.
|
||
ws ?= ws_it->if_object_collection_iterator~get_next( ).
|
||
lv_title = ws->get_title( ).
|
||
IF lv_title = i_worksheet_name.
|
||
me->worksheets->active_worksheet = count.
|
||
EXIT.
|
||
ENDIF.
|
||
count = count + 1.
|
||
ENDWHILE.
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="SET_DEFAULT_STYLE" VERSION="1" LANGU="E" DESCRIPT="Set default style" EXPOSURE="2" STATE="1" EDITORDER="25 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" MTDNEWEXC="X" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="SET_DEFAULT_STYLE" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style identifier" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="1" TYPE="ZEXCEL_CELL_STYLE"/>
|
||
<exception CLSNAME="ZCL_EXCEL" CMPNAME="SET_DEFAULT_STYLE" SCONAME="ZCX_EXCEL" VERSION="1" LANGU="E" DESCRIPT="Exceptions for ABAP2XLSX" MTDTYPE="0" EDITORDER="1 "/>
|
||
<source>method SET_DEFAULT_STYLE.
|
||
me->default_style = ip_style.
|
||
endmethod.</source>
|
||
</method>
|
||
<method CLSNAME="ZCL_EXCEL" CMPNAME="STYLEMAPPING_DYNAMIC_STYLE" VERSION="1" LANGU="E" DESCRIPT="Convert dynamic style to static stlyeentry" EXPOSURE="0" STATE="1" EDITORDER="26 " DISPID="0 " MTDTYPE="0" MTDDECLTYP="0" BCMTDCAT="00" BCMTDSYN="0">
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="STYLEMAPPING_DYNAMIC_STYLE" SCONAME="IP_STYLE" VERSION="1" LANGU="E" DESCRIPT="Style" CMPTYPE="1" MTDTYPE="0" EDITORDER="1 " DISPID="0 " PARDECLTYP="0" PARPASSTYP="1" TYPTYPE="3" TYPE="ZCL_EXCEL_STYLE"/>
|
||
<parameter CLSNAME="ZCL_EXCEL" CMPNAME="STYLEMAPPING_DYNAMIC_STYLE" SCONAME="EO_STYLE2" VERSION="1" LANGU="E" DESCRIPT="Stypemapping" CMPTYPE="1" MTDTYPE="0" EDITORDER="2 " DISPID="0 " PARDECLTYP="3" PARPASSTYP="0" TYPTYPE="1" TYPE="ZEXCEL_S_STYLEMAPPING"/>
|
||
<source>method STYLEMAPPING_DYNAMIC_STYLE.
|
||
" # issue 139
|
||
eo_style2-dynamic_style_guid = ip_style->get_guid( ).
|
||
eo_style2-guid = eo_style2-dynamic_style_guid.
|
||
eo_style2-added_to_iterator = abap_true.
|
||
eo_style2-cl_style = ip_style.
|
||
|
||
* don't care about attributes here, since this data may change
|
||
* dynamically
|
||
|
||
endmethod.</source>
|
||
</method>
|
||
</CLAS>
|