您的位置 首页 > 数码极客

“json格式在线转换“ue怎么转换json格式…

主动调用与被调用webservice实例

2019年3月14日 星期四

16:18


  1. 主动调用:

步骤:创建企业服务代理类—SM59配置—LPCONFIG配置逻辑端口—接口调用方法类

1.1创建企业服务代理类:

1.1.1

1.1.2


1.1.3




















1.2 SM59配置 最后保存即可






1.3 LPCONFIG配置逻辑端口











1.4接口调用方法类

*"----------------------------------------------------------------------

*"*"本地接口:

*" IMPORTING

*" VALUE(INPUTCOLLECTION) TYPE ZMIP_OSB_MIP_MIP_HQ_IMPORT_CA1

*" OPTIONAL

*" EXPORTING

*" VALUE(E_TYPE) TYPE CHAR2

*" VALUE(E_MSG) TYPE CHAR255

*" VALUE(OUTPUTPARAMETERS) TYPE ZMIP_OSB_MIP_MIP_HQ_IMPORT_CAN

*"----------------------------------------------------------------------


DATA:ESB_MIP_CO_OSB TYPE REF TO ZMIP_CO_OSB_MIP_MIP_HQ_IMPORT,

OBJ_EXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT,

L_OUTPUT TYPE ZMIP_OSB_MIP_MIP_HQ_IMPORT_CAN,

L_INPUT TYPE ZMIP_OSB_MIP_MIP_HQ_IMPORT_CA1.

DATA: ERRORTEXT TYPE STRING.



*INPUTCOLLECTION-PAYLOAD-INPUTCOLLECTION-INPUTCOLLECTION_ITEMs

****Set the input parameter into the Request of the SOAP Object

****Create the Proxy and Clall it.

CREATE OBJECT ESB_MIP_CO_OSB.


TRY.

CALL METHOD ESB_MIP_CO_OSB->PROCESS

EXPORTING

INPUT = INPUTCOLLECTION

IMPORTING

OUTPUT = OUTPUTPARAMETERS.




CATCH CX_AI_SYSTEM_FAULT INTO OBJ_EXCEPTION .

CALL METHOD OBJ_EXCEPTION->GET_TEXT

RECEIVING

RESULT = ERRORTEXT.

E_TYPE = 'E'.

E_MSG = ERRORTEXT.

EXIT.



ENDTRY.




2.被调用


步骤:创建RFC函数—创建该函数的企业服务生产URL(WSDL)—SOAMANAGER配置

2.1




















被调用代码(json格式转换):

FUNCTION ZFM_ESB_LIFNR_MAINTAIN_OL.

*"----------------------------------------------------------------------

*"*"本地接口:

*" IMPORTING

*" VALUE(MSGHEADER) TYPE ZSESB_MSGHEADER OPTIONAL

*" VALUE(INPUTCOLLECTION) TYPE ZINPUTCOLLECTION OPTIONAL

*" EXPORTING

*" VALUE(OUTPUTPARAMETERS) TYPE ZSESB_OUT_OL

*"----------------------------------------------------------------------


DATA: ZINPUTCOLLECTION TYPE ZESB_INPUT_JSON_MAINTAIN,

ZOUTPUTPARAMETERS TYPE ZSESB_OUT_LIFNR_MAINTAIN,

LS_INPUT TYPE ZSLIFNR,

LS_INPUTJSON TYPE STRING,

LS_OUTPUTJSON TYPE STRING,

ERRORTEXT TYPE STRING.


DATA: JSON_SER TYPE REF TO CL_TREX_JSON_SERIALIZER,

JSON_DES TYPE REF TO CL_TREX_JSON_DESERIALIZER.


DATA CX_TREX TYPE REF TO CX_TREX_SERIALIZATION.

DATA: OBJ_EXCEPTION TYPE REF TO CX_AI_SYSTEM_FAULT.


* ls_inputjson = msgheader-input_json.

* DATA:ZINPUTCOLLECTION TYPE

* DATA:LT_ITEM TYPE ZTINPUTCOLLECTION .

DATA:LW_ITEM TYPE ZSINPUTCOLLECTION .

LW_ITEM = INPUTCOLLECTION-INPUTCOLLECTION_ITEM.

* READ TABLE LT_ITEM INTO LW_ITEM INDEX 1.


LS_INPUTJSON = LW_ITEM-INPUT_JSON.


TRANSLATE LS_INPUTJSON TO UPPER CASE.


REPLACE ALL OCCURRENCES OF '"LIFNR"' IN LS_INPUTJSON WITH 'lifnr'.

REPLACE ALL OCCURRENCES OF '"BUKRS"' IN LS_INPUTJSON WITH 'bukrs'.

REPLACE ALL OCCURRENCES OF '"EKORG"' IN LS_INPUTJSON WITH 'ekorg'.

REPLACE ALL OCCURRENCES OF '"KTOKK"' IN LS_INPUTJSON WITH 'ktokk'.

REPLACE ALL OCCURRENCES OF '"AKONT"' IN LS_INPUTJSON WITH 'akont'.


REPLACE ALL OCCURRENCES OF '"TITLE"' IN LS_INPUTJSON WITH 'title'.

REPLACE ALL OCCURRENCES OF '"NAME1"' IN LS_INPUTJSON WITH 'name1'.

REPLACE ALL OCCURRENCES OF '"NAME2"' IN LS_INPUTJSON WITH 'name2'.

REPLACE ALL OCCURRENCES OF '"SORTL"' IN LS_INPUTJSON WITH 'sortl'.

REPLACE ALL OCCURRENCES OF '"STRAS"' IN LS_INPUTJSON WITH 'stras'.


REPLACE ALL OCCURRENCES OF '"PSTLZ"' IN LS_INPUTJSON WITH 'pstlz'.

REPLACE ALL OCCURRENCES OF '"ORT01"' IN LS_INPUTJSON WITH 'ort01'.

REPLACE ALL OCCURRENCES OF '"LAND1"' IN LS_INPUTJSON WITH 'land1'.

REPLACE ALL OCCURRENCES OF '"REGIO"' IN LS_INPUTJSON WITH 'regio'.

REPLACE ALL OCCURRENCES OF '"TELX1"' IN LS_INPUTJSON WITH 'telx1'.


REPLACE ALL OCCURRENCES OF '"TELF3"' IN LS_INPUTJSON WITH 'telf3'.

REPLACE ALL OCCURRENCES OF '"TELFX"' IN LS_INPUTJSON WITH 'telfx'.

REPLACE ALL OCCURRENCES OF '"LANGU"' IN LS_INPUTJSON WITH 'langu'.

REPLACE ALL OCCURRENCES OF '"KUNNR"' IN LS_INPUTJSON WITH 'kinnr'.

REPLACE ALL OCCURRENCES OF '"BEGRU"' IN LS_INPUTJSON WITH 'begru'.


REPLACE ALL OCCURRENCES OF '"STCD3"' IN LS_INPUTJSON WITH 'stcd3'.

REPLACE ALL OCCURRENCES OF '"STCD5"' IN LS_INPUTJSON WITH 'stcd5'.

REPLACE ALL OCCURRENCES OF '"BANKS"' IN LS_INPUTJSON WITH 'banks'.

REPLACE ALL OCCURRENCES OF '"BANKL"' IN LS_INPUTJSON WITH 'bankl'.

REPLACE ALL OCCURRENCES OF '"BANKA"' IN LS_INPUTJSON WITH 'banka'.


REPLACE ALL OCCURRENCES OF '"BANKN"' IN LS_INPUTJSON WITH 'bankn'.

REPLACE ALL OCCURRENCES OF '"KOINH"' IN LS_INPUTJSON WITH 'koinh'.

REPLACE ALL OCCURRENCES OF '"BVTYP"' IN LS_INPUTJSON WITH 'bvtyp'.

REPLACE ALL OCCURRENCES OF '"BKREF"' IN LS_INPUTJSON WITH 'bkref'.

REPLACE ALL OCCURRENCES OF '"ZUAWA"' IN LS_INPUTJSON WITH 'zuawa'.


REPLACE ALL OCCURRENCES OF '"ZTERM"' IN LS_INPUTJSON WITH 'zterm'.

REPLACE ALL OCCURRENCES OF '"REPRF"' IN LS_INPUTJSON WITH 'reprf'.

REPLACE ALL OCCURRENCES OF '"ZWELS"' IN LS_INPUTJSON WITH 'zwels'.

REPLACE ALL OCCURRENCES OF '"WAERS"' IN LS_INPUTJSON WITH 'waers'.

REPLACE ALL OCCURRENCES OF '"WEBRE"' IN LS_INPUTJSON WITH 'webre'.


REPLACE ALL OCCURRENCES OF '"PROVZ"' IN LS_INPUTJSON WITH 'provz'.

REPLACE ALL OCCURRENCES OF '"ORT02"' IN LS_INPUTJSON WITH 'ort02'.

REPLACE ALL OCCURRENCES OF '"BRSCH"' IN LS_INPUTJSON WITH 'brsch'.



REPLACE ALL OCCURRENCES OF '"[' IN LS_INPUTJSON WITH '['.

REPLACE ALL OCCURRENCES OF ']"' IN LS_INPUTJSON WITH ']'.


TRY .

"传入参数JSON=> 转换为结构

CREATE OBJECT JSON_DES.

CALL METHOD JSON_DES->DESERIALIZE

EXPORTING

JSON = LS_INPUTJSON

IMPORTING

ABAP = LS_INPUT.


ZINPUTCOLLECTION-INPUT_JSON = LS_INPUT.


CALL FUNCTION 'ZFM_ESB_LIFNR_MAINTAIN'

EXPORTING

MSGHEADER = MSGHEADER

INPUTCOLLECTION = ZINPUTCOLLECTION

IMPORTING

OUTPUTPARAMETERS = ZOUTPUTPARAMETERS.


* CATCH cx_trex_serialization INTO cx_trex.

CATCH CX_AI_SYSTEM_FAULT INTO OBJ_EXCEPTION.

CALL METHOD OBJ_EXCEPTION->GET_TEXT

RECEIVING

RESULT = ERRORTEXT.

ZOUTPUTPARAMETERS-OUTPUT_JSON-E_TYPE = 'E'.

ZOUTPUTPARAMETERS-OUTPUT_JSON-E_MESSAGE = ERRORTEXT.

EXIT.


ENDTRY.

"解析返回参数

TRY .

* ***内表->JSON

CREATE OBJECT JSON_SER

EXPORTING

DATA = ZOUTPUTPARAMETERS-OUTPUT_JSON.


CALL METHOD JSON_SER->SERIALIZE.


CALL METHOD JSON_SER->GET_DATA

RECEIVING

RVAL = LS_OUTPUTJSON.


MOVE: ZOUTPUTPARAMETERS-ESB_FLAG TO OUTPUTPARAMETERS-ESB_FLAG,

ZOUTPUTPARAMETERS-ESB_RETURN_CODE TO OUTPUTPARAMETERS-ESB_RETURN_CODE,

ZOUTPUTPARAMETERS-ESB_RETURN_MESSAGE TO OUTPUTPARAMETERS-ESB_RETURN_MESSAGE,

ZOUTPUTPARAMETERS-BIZ_SERVICE_FLAG TO OUTPUTPARAMETERS-BIZ_SERVICE_FLAG,

ZOUTPUTPARAMETERS-BIZ_RETURN_CODE TO OUTPUTPARAMETERS-BIZ_RETURN_CODE,

ZOUTPUTPARAMETERS-BIZ_RETURN_MESSAGE TO OUTPUTPARAMETERS-BIZ_RETURN_MESSAGE,

ZOUTPUTPARAMETERS-INSTANCE_ID TO OUTPUTPARAMETERS-INSTANCE_ID.


REPLACE ALL OCCURRENCES OF 'e_lifnr' IN LS_OUTPUTJSON WITH '"e_lifnr"'.

REPLACE ALL OCCURRENCES OF 'e_bankl' IN LS_OUTPUTJSON WITH '"e_bankl"'.

REPLACE ALL OCCURRENCES OF 'e_type' IN LS_OUTPUTJSON WITH '"e_type"'.

REPLACE ALL OCCURRENCES OF 'e_message' IN LS_OUTPUTJSON WITH '"e_message"'.




* REPLACE ALL OCCURRENCES OF '[' IN LS_OUTPUTJSON WITH '"['.

* REPLACE ALL OCCURRENCES OF ']' IN LS_OUTPUTJSON WITH ']"'.


OUTPUTPARAMETERS-OUTPUT_JSON = LS_OUTPUTJSON.


TRANSLATE OUTPUTPARAMETERS-OUTPUT_JSON TO UPPER CASE.


CATCH CX_TREX_SERIALIZATION INTO CX_TREX.

CALL METHOD CX_TREX->GET_TEXT

RECEIVING

RESULT = ERRORTEXT.

ZOUTPUTPARAMETERS-OUTPUT_JSON-E_TYPE = 'E'.

ZOUTPUTPARAMETERS-OUTPUT_JSON-E_MESSAGE = ERRORTEXT.

EXIT.


ENDTRY.

ENDFUNCTION.

责任编辑: 鲁达

1.内容基于多重复合算法人工智能语言模型创作,旨在以深度学习研究为目的传播信息知识,内容观点与本网站无关,反馈举报请
2.仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证;
3.本站属于非营利性站点无毒无广告,请读者放心使用!

“json格式在线转换,ue怎么转换json格式,json格式在线转换pdf,json格式在线转换工具,json格式在线转换svg”边界阅读