mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-06 11:54:25 +08:00
parent
6097702f82
commit
a4a7fe0340
|
@ -524,8 +524,10 @@ CLASS zcl_excel_converter IMPLEMENTATION.
|
||||||
METHOD create_color_style.
|
METHOD create_color_style.
|
||||||
DATA: ls_styles TYPE ts_styles.
|
DATA: ls_styles TYPE ts_styles.
|
||||||
DATA: lo_style TYPE REF TO zcl_excel_style.
|
DATA: lo_style TYPE REF TO zcl_excel_style.
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
READ TABLE wt_styles INTO ls_styles WITH KEY guid = i_style.
|
* READ TABLE wt_styles INTO ls_styles WITH KEY guid = i_style.
|
||||||
|
READ TABLE wt_styles INTO ls_styles WITH KEY guid COMPONENTS guid = i_style.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
IF sy-subrc = 0.
|
IF sy-subrc = 0.
|
||||||
lo_style = wo_excel->add_new_style( ).
|
lo_style = wo_excel->add_new_style( ).
|
||||||
lo_style->font->bold = ls_styles-style->font->bold.
|
lo_style->font->bold = ls_styles-style->font->bold.
|
||||||
|
@ -1370,10 +1372,15 @@ CLASS zcl_excel_converter IMPLEMENTATION.
|
||||||
IF l_line <= 1.
|
IF l_line <= 1.
|
||||||
CLEAR l_hidden.
|
CLEAR l_hidden.
|
||||||
ELSE.
|
ELSE.
|
||||||
LOOP AT wt_sort_values INTO ls_sort_values WHERE is_collapsed = abap_false.
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* LOOP AT wt_sort_values INTO ls_sort_values WHERE is_collapsed = abap_false.
|
||||||
|
LOOP AT wt_sort_values INTO ls_sort_values USING KEY sort_level. "WHERE is_collapsed = abap_false.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
IF ls_sort_values-is_collapsed = abap_false. "ATC fix-issue-1014-part1
|
||||||
IF l_hidden < ls_sort_values-sort_level.
|
IF l_hidden < ls_sort_values-sort_level.
|
||||||
l_hidden = ls_sort_values-sort_level.
|
l_hidden = ls_sort_values-sort_level.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
ENDIF.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ADD 1 TO l_hidden. " As this is the first level we show.
|
ADD 1 TO l_hidden. " As this is the first level we show.
|
||||||
|
@ -1418,8 +1425,13 @@ CLASS zcl_excel_converter IMPLEMENTATION.
|
||||||
<fs_sortval> = <fs_fldval>.
|
<fs_sortval> = <fs_fldval>.
|
||||||
<fs_sortv>-new = abap_false.
|
<fs_sortv>-new = abap_false.
|
||||||
l_line = <fs_sortv>-sort_level.
|
l_line = <fs_sortv>-sort_level.
|
||||||
LOOP AT wt_sort_values ASSIGNING <fs_sortv> WHERE sort_level >= l_line.
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* LOOP AT wt_sort_values ASSIGNING <fs_sortv> WHERE sort_level >= l_line.
|
||||||
|
LOOP AT wt_sort_values ASSIGNING <fs_sortv> USING KEY sort_level .
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
IF <fs_sortv>-sort_level >= l_line. "ATC fix-issue-1014-part1
|
||||||
<fs_sortv>-row_int = l_row_int.
|
<fs_sortv>-row_int = l_row_int.
|
||||||
|
ENDIF. "ATC fix-issue-1014-part1
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
|
@ -18,8 +18,13 @@ TYPES: BEGIN OF ts_sort_values,
|
||||||
sort_level TYPE int4,
|
sort_level TYPE int4,
|
||||||
is_collapsed TYPE flag,
|
is_collapsed TYPE flag,
|
||||||
END OF ts_sort_values,
|
END OF ts_sort_values,
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* tt_sort_values TYPE HASHED TABLE OF ts_sort_values WITH UNIQUE KEY fieldname .
|
||||||
|
tt_sort_values TYPE HASHED TABLE OF ts_sort_values
|
||||||
|
WITH UNIQUE KEY primary_key COMPONENTS fieldname
|
||||||
|
WITH NON-UNIQUE SORTED KEY sort_level COMPONENTS sort_level is_collapsed .
|
||||||
|
|
||||||
tt_sort_values TYPE HASHED TABLE OF ts_sort_values WITH UNIQUE KEY fieldname.
|
* End of ATC fix-issue-1014-part1
|
||||||
TYPES: BEGIN OF ts_subtotal_rows,
|
TYPES: BEGIN OF ts_subtotal_rows,
|
||||||
row_int TYPE zexcel_cell_row,
|
row_int TYPE zexcel_cell_row,
|
||||||
row_int_start TYPE zexcel_cell_row,
|
row_int_start TYPE zexcel_cell_row,
|
||||||
|
@ -36,8 +41,13 @@ TYPES: BEGIN OF ts_styles,
|
||||||
style TYPE REF TO zcl_excel_style,
|
style TYPE REF TO zcl_excel_style,
|
||||||
guid TYPE zexcel_cell_style,
|
guid TYPE zexcel_cell_style,
|
||||||
END OF ts_styles,
|
END OF ts_styles,
|
||||||
|
* Begin of ATC fix-issue-1014-part1
|
||||||
tt_styles TYPE HASHED TABLE OF ts_styles WITH UNIQUE KEY type alignment inttype decimals.
|
* tt_styles TYPE HASHED TABLE OF ts_styles WITH UNIQUE KEY type alignment inttype decimals.
|
||||||
|
tt_styles TYPE HASHED TABLE OF ts_styles with UNIQUE KEY primary_key
|
||||||
|
COMPONENTS type alignment inttype decimals
|
||||||
|
WITH NON-UNIQUE SORTED KEY guid COMPONENTS guid .
|
||||||
|
.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
|
|
||||||
TYPES: BEGIN OF ts_color_styles,
|
TYPES: BEGIN OF ts_color_styles,
|
||||||
guid_old TYPE zexcel_cell_style,
|
guid_old TYPE zexcel_cell_style,
|
||||||
|
|
|
@ -192,7 +192,7 @@ CLASS zcl_excel_autofilter IMPLEMENTATION.
|
||||||
|
|
||||||
DATA: ls_filter LIKE LINE OF rt_filter.
|
DATA: ls_filter LIKE LINE OF rt_filter.
|
||||||
|
|
||||||
LOOP AT me->mt_filters ASSIGNING <ls_filter> WHERE rule = mc_filter_rule_single_values.
|
LOOP AT me->mt_filters ASSIGNING <ls_filter> WHERE rule = mc_filter_rule_single_values. "#EC CI_HASHSEQ
|
||||||
|
|
||||||
ls_filter-column = <ls_filter>-column.
|
ls_filter-column = <ls_filter>-column.
|
||||||
LOOP AT <ls_filter>-t_values ASSIGNING <ls_value>.
|
LOOP AT <ls_filter>-t_values ASSIGNING <ls_value>.
|
||||||
|
|
|
@ -98,7 +98,11 @@ CLASS zcl_excel_reader_2007 DEFINITION
|
||||||
formula TYPE string,
|
formula TYPE string,
|
||||||
END OF ty_ref_formulae .
|
END OF ty_ref_formulae .
|
||||||
TYPES:
|
TYPES:
|
||||||
tyt_ref_formulae TYPE HASHED TABLE OF ty_ref_formulae WITH UNIQUE KEY sheet row column .
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* tyt_ref_formulae TYPE HASHED TABLE OF ty_ref_formulae WITH UNIQUE KEY sheet row column .
|
||||||
|
tyt_ref_formulae TYPE TABLE OF ty_ref_formulae WITH UNIQUE HASHED KEY hash_key COMPONENTS
|
||||||
|
sheet row column si ref formula.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF t_shared_string,
|
BEGIN OF t_shared_string,
|
||||||
value TYPE string,
|
value TYPE string,
|
||||||
|
@ -361,8 +365,11 @@ CLASS zcl_excel_reader_2007 IMPLEMENTATION.
|
||||||
row TYPE i,
|
row TYPE i,
|
||||||
outline_level TYPE i,
|
outline_level TYPE i,
|
||||||
END OF lts_row_data,
|
END OF lts_row_data,
|
||||||
ltt_row_data TYPE SORTED TABLE OF lts_row_data WITH UNIQUE KEY row.
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* ltt_row_data TYPE SORTED TABLE OF lts_row_data WITH UNIQUE KEY row.
|
||||||
|
ltt_row_data TYPE TABLE OF lts_row_data WITH NON-UNIQUE SORTED KEY sort_key
|
||||||
|
COMPONENTS outline_level.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
DATA: lt_row_data TYPE ltt_row_data,
|
DATA: lt_row_data TYPE ltt_row_data,
|
||||||
ls_row_data LIKE LINE OF lt_row_data,
|
ls_row_data LIKE LINE OF lt_row_data,
|
||||||
lt_collapse_rows TYPE HASHED TABLE OF i WITH UNIQUE KEY table_line,
|
lt_collapse_rows TYPE HASHED TABLE OF i WITH UNIQUE KEY table_line,
|
||||||
|
|
|
@ -140,11 +140,15 @@ CLASS zcl_excel_row IMPLEMENTATION.
|
||||||
CHECK io_worksheet IS BOUND.
|
CHECK io_worksheet IS BOUND.
|
||||||
|
|
||||||
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
||||||
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
* Begin of ATC fix-issue-1014-part1
|
||||||
AND row_to >= me->row_index.
|
* LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
||||||
|
* AND row_to >= me->row_index.
|
||||||
|
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> USING KEY collapsed .
|
||||||
|
IF <ls_row_outline>-row_from <= me->row_index
|
||||||
|
AND <ls_row_outline>-row_to >= me->row_index.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
ADD 1 TO r_outline_level.
|
ADD 1 TO r_outline_level.
|
||||||
|
ENDIF.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
@ -175,12 +179,21 @@ CLASS zcl_excel_row IMPLEMENTATION.
|
||||||
CHECK io_worksheet IS BOUND. " But we have to see the worksheet to make sure
|
CHECK io_worksheet IS BOUND. " But we have to see the worksheet to make sure
|
||||||
|
|
||||||
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
lt_row_outlines = io_worksheet->get_row_outlines( ).
|
||||||
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
|
||||||
AND row_to >= me->row_index
|
* Begin of ATC fix-issue-1014-part1
|
||||||
AND collapsed = abap_true. " row is in a collapsed outline --> not visible
|
* LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> WHERE row_from <= me->row_index
|
||||||
|
* AND row_to >= me->row_index
|
||||||
|
* AND collapsed = abap_true. " row is in a collapsed outline --> not visible
|
||||||
|
LOOP AT lt_row_outlines ASSIGNING <ls_row_outline> USING KEY collapsed.
|
||||||
|
|
||||||
|
IF <ls_row_outline>-row_from <= me->row_index
|
||||||
|
AND <ls_row_outline>-row_to >= me->row_index
|
||||||
|
AND <ls_row_outline>-collapsed = abap_true.
|
||||||
|
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
CLEAR r_visible.
|
CLEAR r_visible.
|
||||||
RETURN. " one hit is enough to ensure invisibility
|
RETURN. " one hit is enough to ensure invisibility
|
||||||
|
ENDIF. "ATC fix-issue-1014-part1
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
|
@ -22,7 +22,12 @@ CLASS zcl_excel_worksheet DEFINITION
|
||||||
collapsed TYPE abap_bool,
|
collapsed TYPE abap_bool,
|
||||||
END OF mty_s_outline_row .
|
END OF mty_s_outline_row .
|
||||||
TYPES:
|
TYPES:
|
||||||
mty_ts_outlines_row TYPE SORTED TABLE OF mty_s_outline_row WITH UNIQUE KEY row_from row_to .
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* mty_ts_outlines_row TYPE SORTED TABLE OF mty_s_outline_row WITH UNIQUE KEY row_from row_to .
|
||||||
|
mty_ts_outlines_row TYPE SORTED TABLE OF mty_s_outline_row WITH UNIQUE KEY primary_key
|
||||||
|
COMPONENTS row_from row_to
|
||||||
|
WITH NON-UNIQUE SORTED KEY collapsed COMPONENTS collapsed.
|
||||||
|
* End of ATC fix-issue-1014-part1 .
|
||||||
TYPES:
|
TYPES:
|
||||||
BEGIN OF mty_s_ignored_errors,
|
BEGIN OF mty_s_ignored_errors,
|
||||||
"! Cell reference (e.g. "A1") or list like "A1 A2" or range "A1:G1"
|
"! Cell reference (e.g. "A1") or list like "A1 A2" or range "A1:G1"
|
||||||
|
@ -74,9 +79,10 @@ CLASS zcl_excel_worksheet DEFINITION
|
||||||
col_to TYPE i,
|
col_to TYPE i,
|
||||||
END OF mty_merge .
|
END OF mty_merge .
|
||||||
TYPES:
|
TYPES:
|
||||||
mty_ts_merge TYPE SORTED TABLE OF mty_merge WITH UNIQUE KEY table_line .
|
* Begin of ATC fix-issue-1014-part1
|
||||||
* mty_ts_merge TYPE TABLE OF mty_merge WITH UNIQUE SORTED KEY sort_key COMPONENTS row_from row_to.
|
* mty_ts_merge TYPE SORTED TABLE OF mty_merge WITH UNIQUE KEY table_line .
|
||||||
|
mty_ts_merge TYPE TABLE OF mty_merge WITH UNIQUE SORTED KEY sort_key COMPONENTS row_from row_to.
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
TYPES:
|
TYPES:
|
||||||
ty_area TYPE c LENGTH 1 .
|
ty_area TYPE c LENGTH 1 .
|
||||||
|
|
||||||
|
@ -816,7 +822,7 @@ ENDCLASS.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
CLASS ZCL_EXCEL_WORKSHEET IMPLEMENTATION.
|
CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
|
|
||||||
|
|
||||||
METHOD add_comment.
|
METHOD add_comment.
|
||||||
|
|
|
@ -5924,7 +5924,12 @@ CLASS zcl_excel_writer_2007 IMPLEMENTATION.
|
||||||
|
|
||||||
lo_iterator TYPE REF TO zcl_excel_collection_iterator,
|
lo_iterator TYPE REF TO zcl_excel_collection_iterator,
|
||||||
lo_table TYPE REF TO zcl_excel_table,
|
lo_table TYPE REF TO zcl_excel_table,
|
||||||
lt_table_areas TYPE SORTED TABLE OF lty_table_area WITH NON-UNIQUE KEY left right top bottom,
|
* Begin of ATC fix-issue-1014-part1
|
||||||
|
* lt_table_areas TYPE SORTED TABLE OF lty_table_area WITH NON-UNIQUE KEY left right top bottom,
|
||||||
|
lt_table_areas TYPE STANDARD TABLE OF lty_table_area WITH
|
||||||
|
NON-UNIQUE SORTED KEY sort_key
|
||||||
|
COMPONENTS left right top bottom,
|
||||||
|
* End of ATC fix-issue-1014-part1
|
||||||
ls_table_area LIKE LINE OF lt_table_areas,
|
ls_table_area LIKE LINE OF lt_table_areas,
|
||||||
lo_column TYPE REF TO zcl_excel_column,
|
lo_column TYPE REF TO zcl_excel_column,
|
||||||
|
|
||||||
|
|
|
@ -12,7 +12,9 @@
|
||||||
<KEYDEF>K</KEYDEF>
|
<KEYDEF>K</KEYDEF>
|
||||||
<KEYKIND>U</KEYKIND>
|
<KEYKIND>U</KEYKIND>
|
||||||
<KEYFDCOUNT>0002</KEYFDCOUNT>
|
<KEYFDCOUNT>0002</KEYFDCOUNT>
|
||||||
|
<GENERIC>X</GENERIC>
|
||||||
<DDTEXT>Excel worksheet content</DDTEXT>
|
<DDTEXT>Excel worksheet content</DDTEXT>
|
||||||
|
<FURTHERSECKEY>W</FURTHERSECKEY>
|
||||||
</DD40V>
|
</DD40V>
|
||||||
<DD42V>
|
<DD42V>
|
||||||
<DD42V>
|
<DD42V>
|
||||||
|
|
Loading…
Reference in New Issue
Block a user