Add exeption handling (#889)

* Add exeption handling

* Lint fixes

* Revert back keywords -> upper case

(test classes of zcl_excel_worksheet)

* revert pretty print->diff shows only excp handl

proposing to create a different pull request with only pretty print

* proposing tiny fixes

1) a few alignment fixes
2) ls_message renamed to lv_message
3) message ... type 'E' -> message ... type 'I' display like 'E' to avoid short dumps

Co-authored-by: John Doe <sandra.rossi@accenture.com>
Co-authored-by: sandraros <sandra.rossi@gmail.com>
Co-authored-by: sandraros <34005250+sandraros@users.noreply.github.com>
This commit is contained in:
Mike Pokraka 2021-11-24 18:40:45 +00:00 committed by GitHub
parent 68707e1469
commit dbd260da2c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
13 changed files with 150 additions and 48 deletions

View File

@ -96,6 +96,8 @@ START-OF-SELECTION.
* ALV user command
*--------------------------------------------------------------------*
FORM user_command .
DATA: lo_error TYPE REF TO zcx_excel,
lv_message TYPE string.
IF sy-ucomm = 'EXCEL'.
* get save file path
@ -118,7 +120,12 @@ FORM user_command .
INTO l_path.
* export file to save file path
TRY.
PERFORM export_to_excel.
CATCH zcx_excel INTO lo_error.
lv_message = lo_error->get_text( ).
MESSAGE lv_message TYPE 'I' DISPLAY LIKE 'E'.
ENDTRY.
ENDIF.
ENDFORM. " USER_COMMAND
@ -129,6 +136,9 @@ ENDFORM. " USER_COMMAND
* This subroutine is principal demo session
*--------------------------------------------------------------------*
FORM export_to_excel RAISING zcx_excel.
DATA: lo_error TYPE REF TO zcx_excel,
lv_message TYPE string.
* create zcl_excel_worksheet object
CREATE OBJECT lo_excel.
@ -136,15 +146,12 @@ FORM export_to_excel RAISING zcx_excel.
lo_worksheet->set_title( ip_title = 'Sheet1' ).
* write to excel using method Bin_object
TRY.
lo_worksheet->bind_alv(
io_alv = lo_salv
it_table = gt_sbook
i_top = 2
i_left = 1
).
CATCH zcx_excel .
ENDTRY.
PERFORM write_file.
@ -157,7 +164,7 @@ ENDFORM. "EXPORT_TO_EXCEL
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_file .
FORM write_file RAISING zcx_excel.
DATA: lt_file TYPE solix_tab,
l_bytecount TYPE i,
l_file TYPE xstring.

View File

@ -10,7 +10,9 @@ REPORT zdemo_excel27.
CLASS lcl_app DEFINITION.
PUBLIC SECTION.
METHODS main.
METHODS main
RAISING
zcx_excel.
PRIVATE SECTION.
METHODS conditional_formatting_cellis
IMPORTING
@ -20,14 +22,18 @@ CLASS lcl_app DEFINITION.
op TYPE zexcel_condition_operator
f TYPE zexcel_style_formula
f2 TYPE zexcel_style_formula
numfmt TYPE string.
numfmt TYPE string
RAISING
zcx_excel.
METHODS conditional_formatting_textfun
IMPORTING
column TYPE simple
row TYPE zexcel_cell_row
txtfun TYPE zcl_excel_style_cond=>tv_textfunction
text TYPE string
numfmt TYPE string.
numfmt TYPE string
RAISING
zcx_excel.
ENDCLASS.
CONSTANTS: c_fish TYPE string VALUE 'Fish'.
@ -53,8 +59,16 @@ INCLUDE zdemo_excel_outputopt_incl.
START-OF-SELECTION.
DATA: lo_error TYPE REF TO zcx_excel,
lv_message TYPE string.
CREATE OBJECT lo_app.
TRY.
lo_app->main( ).
CATCH zcx_excel INTO lo_error.
lv_message = lo_error->get_text( ).
MESSAGE lv_message TYPE 'I' DISPLAY LIKE 'E'.
ENDTRY.
CLASS lcl_app IMPLEMENTATION.

View File

@ -97,6 +97,8 @@ START-OF-SELECTION.
* ALV user command
*--------------------------------------------------------------------*
FORM user_command .
DATA: lo_error TYPE REF TO zcx_excel,
lv_message TYPE string.
* get save file path
cl_gui_frontend_services=>get_sapgui_workdir( CHANGING sapworkdir = l_path ).
@ -117,6 +119,7 @@ FORM user_command .
* export file to save file path
TRY.
CASE sy-ucomm.
WHEN 'EXCELBIND'.
CONCATENATE l_path lv_file_separator lv_default_file_name
@ -130,6 +133,12 @@ FORM user_command .
PERFORM export_to_excel_conv.
ENDCASE.
CATCH zcx_excel INTO lo_error.
lv_message = lo_error->get_text( ).
MESSAGE lv_message TYPE 'I' DISPLAY LIKE 'E'.
ENDTRY.
ENDFORM. " USER_COMMAND
*--------------------------------------------------------------------*
* FORM EXPORT_TO_EXCEL_CONV
@ -193,7 +202,7 @@ ENDFORM. "EXPORT_TO_EXCEL_BIND
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
FORM write_file .
FORM write_file RAISING zcx_excel.
DATA: lt_file TYPE solix_tab,
l_bytecount TYPE i,
l_file TYPE xstring.

View File

@ -5,7 +5,8 @@ CLASS lcl_output DEFINITION CREATE PRIVATE.
PUBLIC SECTION.
CLASS-METHODS:
output IMPORTING cl_excel TYPE REF TO zcl_excel
iv_writerclass_name TYPE clike OPTIONAL,
iv_writerclass_name TYPE clike OPTIONAL
RAISING zcx_excel,
f4_path RETURNING VALUE(selected_folder) TYPE string,
parametertexts.

View File

@ -969,148 +969,176 @@
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>8</LINE_NUMBER>
<SOURCE_LINE> CREATE OBJECT lo_excel.</SOURCE_LINE>
<SOURCE_LINE> TRY.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>9</LINE_NUMBER>
<SOURCE_LINE> lo_worksheet = lo_excel-&gt;get_active_worksheet( ).</SOURCE_LINE>
<SOURCE_LINE> CREATE OBJECT lo_excel.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>10</LINE_NUMBER>
<SOURCE_LINE> lo_worksheet = lo_excel-&gt;get_active_worksheet( ).</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>11</LINE_NUMBER>
<SOURCE_LINE> lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos;</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>12</LINE_NUMBER>
<SOURCE_LINE> ip_row = &apos;2&apos;</SOURCE_LINE>
<SOURCE_LINE> lo_worksheet-&gt;set_cell( ip_column = &apos;B&apos;</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>13</LINE_NUMBER>
<SOURCE_LINE> ip_value = &apos;Welcome to Web Dynpro and abap2xlsx.&apos; ).</SOURCE_LINE>
<SOURCE_LINE> ip_row = &apos;2&apos;</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>14</LINE_NUMBER>
<SOURCE_LINE> ip_value = &apos;Welcome to Web Dynpro and abap2xlsx.&apos; ).</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>15</LINE_NUMBER>
<SOURCE_LINE> CREATE OBJECT lo_excel_writer.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>16</LINE_NUMBER>
<SOURCE_LINE> lv_content = lo_excel_writer-&gt;zif_excel_writer~write_file( lo_excel ).</SOURCE_LINE>
<SOURCE_LINE> CREATE OBJECT lo_excel_writer.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>17</LINE_NUMBER>
<SOURCE_LINE> lv_content = lo_excel_writer-&gt;zif_excel_writer~write_file( lo_excel ).</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>18</LINE_NUMBER>
<SOURCE_LINE> DATA: lv_filename TYPE string.</SOURCE_LINE>
<SOURCE_LINE> CATCH zcx_excel.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>19</LINE_NUMBER>
<SOURCE_LINE> lv_filename = &apos;wda01.xlsx&apos;.</SOURCE_LINE>
<SOURCE_LINE> &quot;Unlikely, ignore to keep demo simple.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>20</LINE_NUMBER>
<SOURCE_LINE> ENDTRY.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>21</LINE_NUMBER>
<SOURCE_LINE> CALL METHOD cl_wd_runtime_services=&gt;attach_file_to_response</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>22</LINE_NUMBER>
<SOURCE_LINE> EXPORTING</SOURCE_LINE>
<SOURCE_LINE> DATA: lv_filename TYPE string.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>23</LINE_NUMBER>
<SOURCE_LINE> i_filename = lv_filename</SOURCE_LINE>
<SOURCE_LINE> lv_filename = &apos;wda01.xlsx&apos;.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>24</LINE_NUMBER>
<SOURCE_LINE> i_content = lv_content</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>25</LINE_NUMBER>
<SOURCE_LINE> i_mime_type = &apos;EXCEL&apos;</SOURCE_LINE>
<SOURCE_LINE> CALL METHOD cl_wd_runtime_services=&gt;attach_file_to_response</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>26</LINE_NUMBER>
<SOURCE_LINE> i_in_new_window = abap_false</SOURCE_LINE>
<SOURCE_LINE> EXPORTING</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>27</LINE_NUMBER>
<SOURCE_LINE> i_inplace = abap_false.</SOURCE_LINE>
<SOURCE_LINE> i_filename = lv_filename</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>28</LINE_NUMBER>
<SOURCE_LINE> i_content = lv_content</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>29</LINE_NUMBER>
<SOURCE_LINE> i_mime_type = &apos;EXCEL&apos;</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>30</LINE_NUMBER>
<SOURCE_LINE> i_in_new_window = abap_false</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>31</LINE_NUMBER>
<SOURCE_LINE> i_inplace = abap_false.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>32</LINE_NUMBER>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>
<COMPONENT_NAME>ZDEMO_EXCEL_WDA01</COMPONENT_NAME>
<CONTROLLER_NAME>V_MAIN</CONTROLLER_NAME>
<CMPNAME>ONACTIONBTN_DOWNLOAD</CMPNAME>
<LINE_NUMBER>33</LINE_NUMBER>
<SOURCE_LINE>ENDMETHOD.</SOURCE_LINE>
</WDY_CTLR_COMPO_SOURCE_VRS>
<WDY_CTLR_COMPO_SOURCE_VRS>

View File

@ -33,7 +33,9 @@ CLASS zcl_excel_autofilter DEFINITION
!io_sheet TYPE REF TO zcl_excel_worksheet .
METHODS get_filter_area
RETURNING
VALUE(rs_area) TYPE zexcel_s_autofilter_area .
VALUE(rs_area) TYPE zexcel_s_autofilter_area
RAISING
zcx_excel .
METHODS get_filter_range
RETURNING
VALUE(r_range) TYPE zexcel_cell_value

View File

@ -12,7 +12,9 @@ CLASS zcl_excel_column DEFINITION
IMPORTING
!ip_index TYPE zexcel_cell_column_alpha
!ip_worksheet TYPE REF TO zcl_excel_worksheet
!ip_excel TYPE REF TO zcl_excel .
!ip_excel TYPE REF TO zcl_excel
RAISING
zcx_excel .
METHODS get_auto_size
RETURNING
VALUE(r_auto_size) TYPE abap_bool .
@ -48,7 +50,9 @@ CLASS zcl_excel_column DEFINITION
IMPORTING
!ip_index TYPE zexcel_cell_column_alpha
RETURNING
VALUE(io_column) TYPE REF TO zcl_excel_column .
VALUE(io_column) TYPE REF TO zcl_excel_column
RAISING
zcx_excel .
METHODS set_outline_level
IMPORTING
!ip_outline_level TYPE int4 .

View File

@ -34,17 +34,23 @@ CLASS zcl_excel_converter DEFINITION
EXPORTING
!e_bytecount TYPE i
!et_file TYPE solix_tab
!e_file TYPE xstring .
!e_file TYPE xstring
RAISING
zcx_excel .
METHODS get_option
RETURNING
VALUE(rs_option) TYPE zexcel_s_converter_option .
METHODS open_file .
METHODS open_file
RAISING
zcx_excel .
METHODS set_option
IMPORTING
!is_option TYPE zexcel_s_converter_option .
METHODS write_file
IMPORTING
!i_path TYPE string OPTIONAL .
!i_path TYPE string OPTIONAL
RAISING
zcx_excel .
*"* protected components of class ZCL_EXCEL_CONVERTER
*"* do not include other source files here!!!
PROTECTED SECTION.

View File

@ -254,7 +254,9 @@ CLASS zcl_excel_reader_2007 DEFINITION
METHODS load_worksheet_autofilter
IMPORTING
io_ixml_worksheet TYPE REF TO if_ixml_document
io_worksheet TYPE REF TO zcl_excel_worksheet.
io_worksheet TYPE REF TO zcl_excel_worksheet
RAISING
zcx_excel.
METHODS load_worksheet_pagemargins
IMPORTING
!io_ixml_worksheet TYPE REF TO if_ixml_document
@ -276,7 +278,9 @@ CLASS zcl_excel_reader_2007 DEFINITION
METHODS load_theme
IMPORTING
VALUE(iv_path) TYPE string
!ip_excel TYPE REF TO zcl_excel .
!ip_excel TYPE REF TO zcl_excel
RAISING
zcx_excel .
PRIVATE SECTION.
DATA zip TYPE REF TO lcl_zip_archive .

View File

@ -68,7 +68,9 @@ CLASS zcl_excel_reader_huge_file DEFINITION
METHODS put_cell_to_worksheet
IMPORTING
!io_worksheet TYPE REF TO zcl_excel_worksheet
!is_cell TYPE t_cell .
!is_cell TYPE t_cell
RAISING
zcx_excel.
METHODS get_shared_string
IMPORTING
!iv_index TYPE any
@ -88,7 +90,8 @@ CLASS zcl_excel_reader_huge_file DEFINITION
!io_reader TYPE REF TO if_sxml_reader
!io_worksheet TYPE REF TO zcl_excel_worksheet
RAISING
lcx_not_found .
lcx_not_found
zcx_excel .
METHODS get_sxml_reader
IMPORTING
!iv_path TYPE string

View File

@ -111,7 +111,9 @@ CLASS zcl_excel_worksheet DEFINITION
IMPORTING
!ip_column TYPE simple
RETURNING
VALUE(eo_column) TYPE REF TO zcl_excel_column .
VALUE(eo_column) TYPE REF TO zcl_excel_column
RAISING
zcx_excel .
METHODS add_new_style_cond
IMPORTING
!ip_dimension_range TYPE string DEFAULT 'A1'
@ -334,7 +336,9 @@ CLASS zcl_excel_worksheet DEFINITION
IMPORTING
!ip_column TYPE simple
RETURNING
VALUE(eo_column) TYPE REF TO zcl_excel_column .
VALUE(eo_column) TYPE REF TO zcl_excel_column
RAISING
zcx_excel .
METHODS get_columns
RETURNING
VALUE(eo_columns) TYPE REF TO zcl_excel_columns .
@ -352,7 +356,9 @@ CLASS zcl_excel_worksheet DEFINITION
VALUE(ep_size) TYPE i .
METHODS get_default_column
RETURNING
VALUE(eo_column) TYPE REF TO zcl_excel_column .
VALUE(eo_column) TYPE REF TO zcl_excel_column
RAISING
zcx_excel.
METHODS get_default_excel_date_format
RETURNING
VALUE(ep_default_excel_date_format) TYPE zexcel_number_format .
@ -575,7 +581,9 @@ CLASS zcl_excel_worksheet DEFINITION
!ip_column_end TYPE simple OPTIONAL
!ip_row TYPE zexcel_cell_row OPTIONAL
!ip_row_to TYPE zexcel_cell_row OPTIONAL
!ip_style TYPE zexcel_cell_style OPTIONAL .
!ip_style TYPE zexcel_cell_style OPTIONAL
RAISING
zcx_excel .
METHODS set_area_formula
IMPORTING
!ip_column_start TYPE simple
@ -594,7 +602,9 @@ CLASS zcl_excel_worksheet DEFINITION
!ip_row TYPE zexcel_cell_row
!ip_row_to TYPE zexcel_cell_row OPTIONAL
!ip_style TYPE zexcel_cell_style
!ip_merge TYPE abap_bool OPTIONAL .
!ip_merge TYPE abap_bool OPTIONAL
RAISING
zcx_excel .
METHODS set_area
IMPORTING
!ip_column_start TYPE simple

View File

@ -15,9 +15,9 @@ CLASS lcl_excel_worksheet_test DEFINITION FOR TESTING
CLASS-METHODS: class_teardown.
METHODS: setup.
METHODS: teardown.
METHODS: set_merge FOR TESTING.
METHODS: delete_merge FOR TESTING.
METHODS: get_dimension_range FOR TESTING.
METHODS: set_merge FOR TESTING RAISING cx_static_check.
METHODS: delete_merge FOR TESTING RAISING cx_static_check.
METHODS: get_dimension_range FOR TESTING RAISING cx_static_check.
ENDCLASS. "lcl_Excel_Worksheet_Test
@ -78,9 +78,13 @@ CLASS lcl_excel_worksheet_test IMPLEMENTATION.
CREATE OBJECT lo_excel.
TRY.
CREATE OBJECT f_cut
EXPORTING
ip_excel = lo_excel.
CATCH zcx_excel.
cl_abap_unit_assert=>fail( 'Could not create instance' ).
ENDTRY.
ENDMETHOD. "setup

View File

@ -48,13 +48,17 @@ CLASS zcl_excel_writer_2007 DEFINITION
!io_document TYPE REF TO if_ixml_document
!io_worksheet TYPE REF TO zcl_excel_worksheet
RETURNING
VALUE(rv_ixml_sheet_data_root) TYPE REF TO if_ixml_element .
VALUE(rv_ixml_sheet_data_root) TYPE REF TO if_ixml_element
RAISING
zcx_excel .
METHODS add_further_data_to_zip
IMPORTING
!io_zip TYPE REF TO cl_abap_zip .
METHODS create
RETURNING
VALUE(ep_excel) TYPE xstring .
VALUE(ep_excel) TYPE xstring
RAISING
zcx_excel .
METHODS create_content_types
RETURNING
VALUE(ep_content) TYPE xstring .
@ -108,7 +112,9 @@ CLASS zcl_excel_writer_2007 DEFINITION
IMPORTING
!io_worksheet TYPE REF TO zcl_excel_worksheet
RETURNING
VALUE(ep_content) TYPE xstring .
VALUE(ep_content) TYPE xstring
RAISING
zcx_excel .
METHODS create_xl_relationships
RETURNING
VALUE(ep_content) TYPE xstring .
@ -161,13 +167,17 @@ CLASS zcl_excel_writer_2007 DEFINITION
IMPORTING
!io_table TYPE REF TO zcl_excel_table
RETURNING
VALUE(ep_content) TYPE xstring .
VALUE(ep_content) TYPE xstring
RAISING
zcx_excel .
METHODS create_xl_theme
RETURNING
VALUE(ep_content) TYPE xstring .
METHODS create_xl_workbook
RETURNING
VALUE(ep_content) TYPE xstring .
VALUE(ep_content) TYPE xstring
RAISING
zcx_excel .
METHODS get_shared_string_index
IMPORTING
!ip_cell_value TYPE zexcel_cell_value