Error headerfooter (#603)

Error (again?) when using more than 1 sheet
This commit is contained in:
mfallen 2019-09-29 19:07:29 +02:00 committed by Gregor Wolf
parent 8938dba50f
commit d104e020f3

View File

@ -5236,27 +5236,20 @@ METHOD create_xl_sheet.
* End - Add - Issue #180 * End - Add - Issue #180
* Header/Footer Image * Header/Footer Image
DATA: lo_drawing TYPE REF TO zcl_excel_drawing. DATA: lt_drawings TYPE zexcel_t_drawings.
lo_iterator = me->excel->get_drawings_iterator( zcl_excel_drawing=>type_image ). lt_drawings = io_worksheet->get_header_footer_drawings( ).
WHILE lo_iterator->if_object_collection_iterator~has_next( ) EQ abap_true. IF lines( lt_drawings ) > 0. "Header or footer image exist
lo_drawing ?= lo_iterator->if_object_collection_iterator~get_next( ). lo_element = lo_document->create_simple_element( name = lc_xml_node_drawing_for_hd_ft
IF lo_drawing->get_type( ) = zcl_excel_drawing=>type_image_header_footer. parent = lo_document ).
lo_element = lo_document->create_simple_element( name = lc_xml_node_drawing_for_hd_ft ADD 1 TO lv_relation_id. " +1 for legacyDrawings
parent = lo_document ). lv_value = lv_relation_id.
ADD 1 TO lv_relation_id. " +1 for legacyDrawings CONDENSE lv_value.
lv_value = lv_relation_id. CONCATENATE 'rId' lv_value INTO lv_value.
CONDENSE lv_value. lo_element->set_attribute( name = 'r:id'
CONCATENATE 'rId' lv_value INTO lv_value. value = lv_value ).
lo_element->set_attribute( name = 'r:id' lo_element_root->append_child( new_child = lo_element ).
value = lv_value ). ADD 1 TO lv_relation_id. " +1 for comments (not referenced in XL sheet but let's reserve the rId)
lo_element_root->append_child( new_child = lo_element ). ENDIF.
ADD 1 TO lv_relation_id. " +1 for comments (not referenced in XL sheet but let's reserve the rId)
EXIT.
ENDIF.
ENDWHILE.
* *
* tables * tables