mirror of
https://github.com/abap2xlsx/abap2xlsx.git
synced 2025-05-05 19:26:10 +08:00
Update zcl_excel_worksheet.clas.abap
This commit is contained in:
parent
b87432c5a2
commit
476c809a32
|
@ -1918,7 +1918,6 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
METHOD check_rtf.
|
METHOD check_rtf.
|
||||||
|
|
||||||
DATA: lo_style TYPE REF TO zcl_excel_style,
|
DATA: lo_style TYPE REF TO zcl_excel_style,
|
||||||
lo_iterator TYPE REF TO zcl_excel_collection_iterator,
|
|
||||||
lv_next_rtf_offset TYPE i,
|
lv_next_rtf_offset TYPE i,
|
||||||
lv_tabix TYPE i,
|
lv_tabix TYPE i,
|
||||||
lv_value TYPE string,
|
lv_value TYPE string,
|
||||||
|
@ -1930,14 +1929,13 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
ip_style = excel->get_default_style( ).
|
ip_style = excel->get_default_style( ).
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
lo_iterator = excel->get_styles_iterator( ).
|
" If there is no style available ls_rtf-font remains initial
|
||||||
WHILE lo_iterator->has_next( ) = abap_true.
|
IF ip_style IS NOT INITIAL.
|
||||||
lo_style ?= lo_iterator->get_next( ).
|
lo_style = excel->get_style_from_guid( ip_style ).
|
||||||
IF lo_style->get_guid( ) = ip_style.
|
IF lo_style IS BOUND.
|
||||||
EXIT.
|
ls_rtf-font = lo_style->font->get_structure( ).
|
||||||
|
ENDIF.
|
||||||
ENDIF.
|
ENDIF.
|
||||||
CLEAR lo_style.
|
|
||||||
ENDWHILE.
|
|
||||||
|
|
||||||
lv_next_rtf_offset = 0.
|
lv_next_rtf_offset = 0.
|
||||||
LOOP AT ct_rtf ASSIGNING <rtf>.
|
LOOP AT ct_rtf ASSIGNING <rtf>.
|
||||||
|
@ -1945,12 +1943,9 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
IF lv_next_rtf_offset < <rtf>-offset.
|
IF lv_next_rtf_offset < <rtf>-offset.
|
||||||
ls_rtf-offset = lv_next_rtf_offset.
|
ls_rtf-offset = lv_next_rtf_offset.
|
||||||
ls_rtf-length = <rtf>-offset - lv_next_rtf_offset.
|
ls_rtf-length = <rtf>-offset - lv_next_rtf_offset.
|
||||||
ls_rtf-font = lo_style->font->get_structure( ).
|
|
||||||
INSERT ls_rtf INTO ct_rtf INDEX lv_tabix.
|
INSERT ls_rtf INTO ct_rtf INDEX lv_tabix.
|
||||||
ELSEIF lv_next_rtf_offset > <rtf>-offset.
|
ELSEIF lv_next_rtf_offset > <rtf>-offset.
|
||||||
RAISE EXCEPTION TYPE zcx_excel
|
zcx_excel=>raise_text( 'Gaps or overlaps in RTF data offset/length specs' ).
|
||||||
EXPORTING
|
|
||||||
error = 'Gaps or overlaps in RTF data offset/length specs'.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
lv_next_rtf_offset = <rtf>-offset + <rtf>-length.
|
lv_next_rtf_offset = <rtf>-offset + <rtf>-length.
|
||||||
ENDLOOP.
|
ENDLOOP.
|
||||||
|
@ -1960,12 +1955,9 @@ CLASS zcl_excel_worksheet IMPLEMENTATION.
|
||||||
IF lv_val_length > lv_next_rtf_offset.
|
IF lv_val_length > lv_next_rtf_offset.
|
||||||
ls_rtf-offset = lv_next_rtf_offset.
|
ls_rtf-offset = lv_next_rtf_offset.
|
||||||
ls_rtf-length = lv_val_length - lv_next_rtf_offset.
|
ls_rtf-length = lv_val_length - lv_next_rtf_offset.
|
||||||
ls_rtf-font = lo_style->font->get_structure( ).
|
|
||||||
INSERT ls_rtf INTO TABLE ct_rtf.
|
INSERT ls_rtf INTO TABLE ct_rtf.
|
||||||
ELSEIF lv_val_length > lv_next_rtf_offset.
|
ELSEIF lv_val_length < lv_next_rtf_offset.
|
||||||
RAISE EXCEPTION TYPE zcx_excel
|
zcx_excel=>raise_text( 'RTF specs length is not equal to value length' ).
|
||||||
EXPORTING
|
|
||||||
error = 'RTF specs length is not equal to value length'.
|
|
||||||
ENDIF.
|
ENDIF.
|
||||||
|
|
||||||
ENDMETHOD.
|
ENDMETHOD.
|
||||||
|
|
Loading…
Reference in New Issue
Block a user