diff --git a/ZA2X/CLAS/ZCL_EXCEL_COMMON.slnk b/ZA2X/CLAS/ZCL_EXCEL_COMMON.slnk index a2ebe38..542d099 100644 --- a/ZA2X/CLAS/ZCL_EXCEL_COMMON.slnk +++ b/ZA2X/CLAS/ZCL_EXCEL_COMMON.slnk @@ -1523,7 +1523,7 @@ endmethod. ENDIF. CASE wa_component-type_kind. - WHEN cl_abap_structdescr=>typekind_struct1. " Structure --> use recursio + WHEN cl_abap_structdescr=>typekind_struct1 OR cl_abap_structdescr=>typekind_struct2. " Structure --> use recursio * IF flag_class = abap_true. ** Only borders will be passed as unbound references. But since we want to set a value we have to create an instance * ENDIF. @@ -1543,7 +1543,7 @@ endmethod. - method RECURSIVE_STRUCT_TO_CLASS. + METHOD recursive_struct_to_class. " # issue 139 * is working for me - but after looking through this coding I guess * I'll rewrite this to a version w/o recursion @@ -1554,10 +1554,11 @@ endmethod. flag_class TYPE flag, o_border TYPE REF TO zcl_excel_style_border. - FIELD-SYMBOLS: <field> TYPE any, - <fieldx> TYPE any, - <class> TYPE REF TO object, - <attribute> TYPE any. + FIELD-SYMBOLS: <field> TYPE any, + <fieldx> TYPE any, + <class> TYPE REF TO object, + <attribute> TYPE any, + <attribute_s> TYPE ANY TABLE. descr ?= cl_abap_structdescr=>describe_by_data( i_source ). @@ -1581,7 +1582,7 @@ endmethod. ENDIF. CASE wa_component-type_kind. - WHEN cl_abap_structdescr=>typekind_struct1. " Structure --> use recursion + WHEN cl_abap_structdescr=>typekind_struct1 OR cl_abap_structdescr=>typekind_struct2. " Structure --> use recursion IF flag_class = abap_true AND <attribute> IS INITIAL. * Only borders will be passed as unbound references. But since we want to set a value we have to create an instance CREATE OBJECT o_border. @@ -1590,6 +1591,9 @@ endmethod. zcl_excel_common=>recursive_struct_to_class( EXPORTING i_source = <field> i_sourcex = <fieldx> CHANGING e_target = <attribute> ). +* WHEN cl_abap_structdescr=>typekind_struct2. " String +* CHECK <fieldx> = abap_true. " Marked for change +* <attribute_s> = <field>. WHEN OTHERS. CHECK <fieldx> = abap_true. " Marked for change <attribute> = <field>. @@ -1597,7 +1601,7 @@ endmethod. ENDCASE. ENDLOOP. -endmethod. +ENDMETHOD. diff --git a/ZA2X/DTEL/ZEXCEL_NUMBER_FORMAT.slnk b/ZA2X/DTEL/ZEXCEL_NUMBER_FORMAT.slnk index 894b12d..3fd4707 100644 --- a/ZA2X/DTEL/ZEXCEL_NUMBER_FORMAT.slnk +++ b/ZA2X/DTEL/ZEXCEL_NUMBER_FORMAT.slnk @@ -1,4 +1,4 @@ - - + +