diff --git a/src/zcl_excel_worksheet.clas.abap b/src/zcl_excel_worksheet.clas.abap index 77ad294..c650015 100644 --- a/src/zcl_excel_worksheet.clas.abap +++ b/src/zcl_excel_worksheet.clas.abap @@ -2115,7 +2115,8 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. TYPE data, TYPE ts_field_conv, TYPE x031l, - TYPE zexcel_s_cell_data. + TYPE zexcel_s_cell_data, + TYPE abap_typekind. CLEAR: et_data, er_data. @@ -2162,18 +2163,18 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. lo_line_type ?= lo_tab_type->get_table_line_type( ). lo_line_type->get_ddic_object( RECEIVING - p_object = lt_ddic_object + p_object = lt_ddic_object EXCEPTIONS - OTHERS = 3 + OTHERS = 3 ). IF lt_ddic_object IS INITIAL. lt_comp_view = lo_line_type->get_included_view( ). LOOP AT lt_comp_view INTO ls_comp_view. ls_comp_view-type->get_ddic_object( RECEIVING - p_object = lt_ddic_object_comp + p_object = lt_ddic_object_comp EXCEPTIONS - OTHERS = 3 + OTHERS = 3 ). IF lt_ddic_object_comp IS NOT INITIAL. READ TABLE lt_ddic_object_comp INTO ls_ddic_object INDEX 1. @@ -2189,10 +2190,16 @@ CLASS zcl_excel_worksheet IMPLEMENTATION. MOVE-CORRESPONDING ls_field_catalog TO . READ TABLE lt_ddic_object ASSIGNING WITH KEY fieldname = -fieldname BINARY SEARCH. CHECK: sy-subrc EQ 0. + + ASSIGN ('CL_ABAP_TYPEDESCR=>TYPEKIND_INT8') TO . + IF sy-subrc <> 0. + ASSIGN space TO . "not used as typekind! + ENDIF. + CASE -exid. WHEN cl_abap_typedescr=>typekind_int OR cl_abap_typedescr=>typekind_int1 - OR cl_abap_typedescr=>typekind_int8 + OR OR cl_abap_typedescr=>typekind_int2 OR cl_abap_typedescr=>typekind_packed OR cl_abap_typedescr=>typekind_decfloat