WEBI, fix pull after initial pull

This commit is contained in:
larshp 2016-07-06 06:20:36 +00:00
parent 638306fc2d
commit 58a3457d1e

View File

@ -176,6 +176,11 @@ CLASS lcl_object_webi IMPLEMENTATION.
LOOP AT is_webi-pvepfunction ASSIGNING <ls_function>. LOOP AT is_webi-pvepfunction ASSIGNING <ls_function>.
IF mi_vi->has_function( funcname = <ls_function>-function
version = sews_c_vif_version-active ) = abap_true.
CONTINUE.
ENDIF.
li_function = mi_vi->create_function( li_function = mi_vi->create_function(
funcname = <ls_function>-function funcname = <ls_function>-function
mapped_name = <ls_function>-mappedname ). mapped_name = <ls_function>-mappedname ).
@ -246,11 +251,14 @@ CLASS lcl_object_webi IMPLEMENTATION.
li_elem->set_signed( <ls_elem>-signed ). li_elem->set_signed( <ls_elem>-signed ).
li_elem->set_abaptype( <ls_elem>-abaptype ). li_elem->set_abaptype( <ls_elem>-abaptype ).
READ TABLE is_webi-pveptypesoapext ASSIGNING <ls_soap> IF li_elem->if_ws_md_vif_type~has_soap_extension_type(
WITH KEY typename = <ls_elem>-typename. sews_c_vif_version-all ) = abap_false.
IF sy-subrc = 0. READ TABLE is_webi-pveptypesoapext ASSIGNING <ls_soap>
li_soap = li_elem->if_ws_md_vif_type~create_soap_extension_type( ). WITH KEY typename = <ls_elem>-typename.
li_soap->set_namespace( <ls_soap>-namespace ). IF sy-subrc = 0.
li_soap = li_elem->if_ws_md_vif_type~create_soap_extension_type( ).
li_soap->set_namespace( <ls_soap>-namespace ).
ENDIF.
ENDIF. ENDIF.
ENDLOOP. ENDLOOP.
@ -258,6 +266,12 @@ CLASS lcl_object_webi IMPLEMENTATION.
lv_index = sy-tabix. lv_index = sy-tabix.
li_struc = mi_vi->create_type_as_structure( <ls_struc>-typename ). li_struc = mi_vi->create_type_as_structure( <ls_struc>-typename ).
IF li_struc->has_field( field_pos = <ls_struc>-fieldpos
version = sews_c_vif_version-active ) = abap_true.
CONTINUE.
ENDIF.
li_field = li_struc->create_field( li_field = li_struc->create_field(
field_name = <ls_struc>-fieldname field_name = <ls_struc>-fieldname
fieldpos = <ls_struc>-fieldpos ). fieldpos = <ls_struc>-fieldpos ).
@ -265,11 +279,14 @@ CLASS lcl_object_webi IMPLEMENTATION.
version = sews_c_vif_version-inactive ) ). version = sews_c_vif_version-inactive ) ).
IF lv_index = 1. IF lv_index = 1.
READ TABLE is_webi-pveptypesoapext ASSIGNING <ls_soap> IF li_struc->if_ws_md_vif_type~has_soap_extension_type(
WITH KEY typename = <ls_struc>-typename. sews_c_vif_version-all ) = abap_false.
IF sy-subrc = 0. READ TABLE is_webi-pveptypesoapext ASSIGNING <ls_soap>
li_soap = li_struc->if_ws_md_vif_type~create_soap_extension_type( ). WITH KEY typename = <ls_struc>-typename.
li_soap->set_namespace( <ls_soap>-namespace ). IF sy-subrc = 0.
li_soap = li_struc->if_ws_md_vif_type~create_soap_extension_type( ).
li_soap->set_namespace( <ls_soap>-namespace ).
ENDIF.
ENDIF. ENDIF.
ENDIF. ENDIF.
ENDLOOP. ENDLOOP.
@ -279,11 +296,14 @@ CLASS lcl_object_webi IMPLEMENTATION.
li_table->set_line_type( mi_vi->get_type( typename = <ls_table>-typeref li_table->set_line_type( mi_vi->get_type( typename = <ls_table>-typeref
version = sews_c_vif_version-inactive ) ). version = sews_c_vif_version-inactive ) ).
READ TABLE is_webi-pveptypesoapext ASSIGNING <ls_soap> IF li_table->if_ws_md_vif_type~has_soap_extension_type(
WITH KEY typename = <ls_table>-typename. sews_c_vif_version-all ) = abap_false.
IF sy-subrc = 0. READ TABLE is_webi-pveptypesoapext ASSIGNING <ls_soap>
li_soap = li_table->if_ws_md_vif_type~create_soap_extension_type( ). WITH KEY typename = <ls_table>-typename.
li_soap->set_namespace( <ls_soap>-namespace ). IF sy-subrc = 0.
li_soap = li_table->if_ws_md_vif_type~create_soap_extension_type( ).
li_soap->set_namespace( <ls_soap>-namespace ).
ENDIF.
ENDIF. ENDIF.
ENDLOOP. ENDLOOP.
@ -298,6 +318,10 @@ CLASS lcl_object_webi IMPLEMENTATION.
READ TABLE is_webi-pvepvisoapext INDEX 1 INTO ls_soap. READ TABLE is_webi-pvepvisoapext INDEX 1 INTO ls_soap.
ASSERT sy-subrc = 0. ASSERT sy-subrc = 0.
IF mi_vi->has_soap_extension_virtinfc( sews_c_vif_version-active ).
RETURN.
ENDIF.
li_soap = mi_vi->create_soap_extension_virtinfc( ls_soap-soap_appl_uri ). li_soap = mi_vi->create_soap_extension_virtinfc( ls_soap-soap_appl_uri ).
li_soap->set_namespace( ls_soap-namespace ). li_soap->set_namespace( ls_soap-namespace ).
@ -347,6 +371,10 @@ CLASS lcl_object_webi IMPLEMENTATION.
mi_vi->if_ws_md_lockable_object~save( ). mi_vi->if_ws_md_lockable_object~save( ).
mi_vi->if_ws_md_lockable_object~unlock( ). mi_vi->if_ws_md_lockable_object~unlock( ).
CATCH cx_ws_md_exception INTO lx_root. CATCH cx_ws_md_exception INTO lx_root.
TRY.
mi_vi->if_ws_md_lockable_object~unlock( ).
CATCH cx_ws_md_exception.
ENDTRY.
lv_text = lx_root->if_message~get_text( ). lv_text = lx_root->if_message~get_text( ).
_raise 'error deserializing WEBI'. _raise 'error deserializing WEBI'.
ENDTRY. ENDTRY.
@ -358,7 +386,7 @@ CLASS lcl_object_webi IMPLEMENTATION.
METHOD lif_object~delete. METHOD lif_object~delete.
DATA: lv_name TYPE vepname, DATA: lv_name TYPE vepname,
lo_vif TYPE REF TO cl_ws_md_vif_root. lo_vif TYPE REF TO cl_ws_md_vif_root.
lv_name = ms_item-obj_name. lv_name = ms_item-obj_name.