当前位置: 首页 > news >正文

湛江制作企业网站信息发布网站建设

湛江制作企业网站,信息发布网站建设,wordpress 提交熊掌,做网站开发学什么内容RFC连接 CSDN RFC中引用类型组 http://t.csdnimg.cn/wQWAYhttp://t.csdnimg.cn/wQWAY 远程目标系统维护SM59 这里的类型指的是目标系统的系统类型(目标系统即rfc函数存在的系统). 类型2#xff08;R/2连接#xff09;#xff0c;只需给出主机名#xff0c;所有通信信息… RFC连接 CSDN RFC中引用类型组 http://t.csdnimg.cn/wQWAYhttp://t.csdnimg.cn/wQWAY 远程目标系统维护SM59  这里的类型指的是目标系统的系统类型(目标系统即rfc函数存在的系统). 类型2R/2连接只需给出主机名所有通信信息都已在存储在SAP网关的sideinfo表中如果需要也可以指定登录信息。 类型3ABAP连接或称R/3连接创建时必须给出主机名和通信服务。如果需要也可以指定登录信息。还可以选择负载平衡选项。 类型I内部连接与当前系统连接到同一数据库的ABAP系统。这种类型的条目都是预定义的且无法修改。条目名称与事务SM51中所显示的应用服务器名相同。 类型L逻辑目标该条目不指定连接而是参照物理目标生成。也可以参照其他逻辑目标生成。这类条目通常除包含所参照的条目中的信息外还添加额外信息。一般情况下所参照的条目会给出主机信息类型L的条目本身给出登录数据。通常工作流系统定制过程中需配置的RFC目标即为该类型的逻辑目标 类型X指定安装了特殊ABAP设备驱动程序的系统。在创建类型X条目时必须给出ABAP设备驱动程序名。 类型S定义通过SNA或APPC启动的外部程序连接。 类型M定义通过CMC即协议X.400到ABAP系统中异步RFC连接。 类型T定义通过TCP/IP并使用RFC库或SAP连接器的外部程序连接。该类型分为启动和注册两种连接模式。如果设为启动模式必须指定要启动的主机名和程序路径名如果设为注册模式则需要指定一个RFC服务器程序。 类型G定义外部系统到本地的HTTP连接 类型H定义ABAP系统到本地的HTTP连接 rfc函数创建: RFC函数是对一个函数模块的调用但是调用者的系统与被调用函数所在的系统是不一样的 任何一个ABAP程序都可以调用一个远程调用函数使用语句CALL FUNCTION…DESTINATION.这个DESTINATION参数告诉SAP系统被调用函数运行的系统不同于访问者的系统这个目标参数destination呈现一个入口在RFCDES表中SM59定义这个入口包含了所有必要的字段这些字段用来连接和登录到目标系统中 当你调用一个RFC函数RFC接口关注于转变所有的参数数据为远程系统所需要的形式 1.1、创建函数组 方式一 1登录SAPGUI执行事务码 SE37进入函数构建器初始屏幕 2菜单栏→转到→函数组→创建组 方式二 SE80-选择函数组-输入函数组名称-选择是创建 输入函数组名称以及描述点击保存 选择包点击保存请忽略函数名后面的下划线此处为演示又新建一个 挂载请求点击保存函数组创建完成。 激活函数组 激活成功 1.2、创建函数 SE37 输入功能模块名称点击创建 输入第一步中创建的函数组以及函数描述点击保存(换名称了) 忽略系统提示点击对勾进入函数构建器 切换至属性页签务必勾选处理类型中的“远程启用的模块”否则无法被远程调用PO中就没法导入该RFC。 1.3、添加函数输入输出参数 参数类型 导入仅输入参数此处定义两个输入参数IV_NAME和IV_AGE类型为CHAR10和I以及描述。根据需要设置字段是否可选远程调用函数输入输出参数必须勾选“值传递”。 导出仅输出参数此处定义一个输出参数IV_HELLO类型为CHAR100。 表输入输出参数此处未定义。  例外用于异常 ABAP中的异常处理 - TRY CATCH的使用实例_abap try catch-CSDN博客 1.4、编写函数源代码 编写函数源代码如下 执行测试 填写入参值 执行结果如下 FUNCTION ZXYY_RFC_001 . *---------------------------------------------------------------------- **本地接口 * IMPORTING * VALUE(FIRST_NUM) TYPE INT1 * VALUE(FUHAO) TYPE CHAR1 * VALUE(SECOND_NUM) TYPE INT1 * EXPORTING * VALUE(THREE_NUM) TYPE I * EXCEPTIONS * NO_FUHAO * NO_ZERO * ERRO_FUHAO *---------------------------------------------------------------------- *FUNCTION ZXYY_RFC_001 .CASE FUHAO.WHEN /. IF SECOND_NUM 0.RAISE NO_ZERO.ELSE. THREE_NUM FIRST_NUM / SECOND_NUM.ENDIF.WHEN *. THREE_NUM FIRST_NUM * SECOND_NUM.WHEN .RAISE NO_FUHAO.WHEN . THREE_NUM FIRST_NUM SECOND_NUM.WHEN -. THREE_NUM FIRST_NUM - SECOND_NUM.WHEN ^. THREE_NUM FIRST_NUM ** SECOND_NUM.WHEN % . THREE_NUM FIRST_NUM mod SECOND_NUM.WHEN OTHERS. RAISE ERRO_FUHAO. ENDCASE. 执行结果 第三系统请求RFC 3步骤和关键概念         要从第三方系统请求SAP系统中的RFCRemote Function Call远程函数您需要使用SAP提供的RFC SDKRFC Software Development Kit或者通过SAP Gateway来实现。以下是一些步骤和关键概念 RFC远程函数首先确保您已经在SAP系统中定义了要调用的RFC远程函数。RFC是SAP中的标准方式来实现远程通信和集成。您需要知道要调用的RFC函数名称以及所需的输入和输出参数。 SAP RFC SDKSAP提供了RFC SDK这是一组库和工具用于在非SAP系统中与SAP系统通信。您需要获取并安装RFC SDK以便在第三方系统中使用。 RFC连接配置在第三方系统中您需要配置RFC连接参数包括SAP系统的主机名、端口号、登录凭据等信息。这些参数用于建立到SAP系统的连接。 RFC调用使用RFC SDK或RFC相关的库函数在第三方系统中编写代码来执行RFC调用。在调用RFC函数时您需要提供所需的输入参数并处理返回的结果。 CALL FUNCTION rfc函数名DESTINATION 应用服务器名server name EXPORTING 参数 ...TABLES 参数 EXCEPTIONSno_permission 1command_not_found 2IF sy-subrc 0.ENDIF. DESTINATION附加项后面接的是远程目标名称该目标在事务SM59中设定其中包含连接和登录远程系统所需的全部参数信息。如果调用的就是本机的RFC目标则DESTINATION可以使用主机名_系统标识_实例编号来指定就是指下图中的Server Names可以通过SM51查看当前SAP系统中活动的应用服务器 SM51 英文: 中文:  除去SM59中定义的远程目标之外SAP还提供两个预定义的目标可以直接在CALL FUNCTION语句的DESTINATION附加项中使用。具体包括 1. 目标NONE指定该远程目标意味着将运行当前程序的应用服务器作为目标系统但是调用过程将通过RFC接口实现并拥有自己的RFC上下文。该目标可以应用于任意调用类型。 2. 目标BACK用于被远程调用的RFM程序内部的CALL FUNCTION语句中的目标指定通过已建立的RFC连接反过来调用该函数的主调者系统中的其他功能模块即主调程序—远程系统中的RFM—又回调主调程序所在系统中的其他函数 3. 目标SPACE DESTINATION选项将会被忽略被调功能函数将作为普通函数在本机调用 在事务性RFC调用过程中如果在COMMIT WORK语句之前出现的事务性RFC调用分别针对多个不同的目标则系统将根据其目标分组为多个不同的LUW相同目标的调用组合到同一个LUW中在COMMIT WORK语句执行时处理所有的LUW LUW详解 错误处理和日志记录确保在调用RFC时实施适当的错误处理和日志记录机制以便跟踪调用的状态并处理任何潜在的错误情况。 安全性在RFC调用中确保数据的安全性使用合适的认证和授权机制来验证RFC请求的合法性。 测试和监控在实际应用程序中使用RFC调用之前进行充分的测试以确保其正常运行。监控RFC调用以确保其在生产环境中的可靠性和性能。 SAP Gateway另一种方法是使用SAP Gateway来提供RFC远程函数的RESTful服务。SAP Gateway允许您将RFC函数通过HTTP或HTTPS协议提供给外部系统。这需要在SAP系统中进行一些配置和开发工作但提供了更灵活的方式来与SAP系统集成。 同步异步事务RFC请看下文 *---------------------------------------------------------------------* * Report ZTXYY_1162 *---------------------------------------------------------------------* * *---------------------------------------------------------------------* REPORT ztxyy_1162. PARAMETERS:p_num1 TYPE int1 default 10,p_char type char1 default /,p_num2 TYPE int1 default 2. DATA la_num TYPE string. CALL FUNCTION ZXYY_RFC_001EXPORTINGfirst_num p_num1fuhao p_charsecond_num p_num2IMPORTINGTHREE_NUM la_num EXCEPTIONSsystem_failre 1用于sap连接上的异常,不是在函数中定义communication_failure 2用于sap连接上的异常,不是在函数中定义OTHERS 3.. IF sy-subrc 0. * Implement suitable error handling here ENDIF. WRITE:/ 自身系统: ,la_num. clear la_num. CALL FUNCTION ZXYY_RFC_001DESTINATION rfc_xyy_topu SM59中区分大小写。EXPORTINGfirst_num p_num1fuhao p_charsecond_num p_num2IMPORTINGthree_num la_numEXCEPTIONSsystem_failre 1communication_failure 2OTHERS 3. WRITE:/ 被调用: ,la_num. CLEAR la_num. CALL FUNCTION ZXYY_RFC_001 DESTINATION saptest_ECP_01 SM51中区分大小写。 EXPORTINGfirst_num p_num1fuhao p_charsecond_num p_num2 IMPORTINGthree_num la_num EXCEPTIONSsystem_failre 1communication_failure 2OTHERS 3. WRITE:/ 被调用: ,la_num. 含异步,同步rfc详细介绍  ABAP 远程 RFC 函数创建完整详细教程外部系统调用SAP接口_sap rfc接口配置_lo波德莱尔ve的博客-CSDN博客 rfc创建---需要什么怎么使用巨细 LUW https://www.cnblogs.com/ricoo/p/15481087.html 在SAP ABAP系统中数据库LUW是一个关键概念用于管理数据库操作的一致性和隔离性。 数据库LUWLogical Unit of Work的概念 在SAP ABAP系统中数据库LUW是一组数据库操作的逻辑集合这些操作要么全部成功地提交到数据库要么全部回滚。它确保了数据库操作的一致性和隔离性。在SAP ABAP中事务是一种常见的LUW类型。事务可以由一组相关的数据库操作组成这些操作要么全部成功地执行要么全部回滚以保持数据的完整性和一致性。 数据库LUW的重要性 数据库LUW的概念在SAP ABAP中非常重要。它确保了在一组数据库操作中的数据变化要么全部应用要么全部撤销。这对于避免数据不一致和数据丢失非常关键。在复杂的业务逻辑和多用户并发的情况下数据库LUW可以确保数据操作的正确性和一致性。 SAP ABAP 中的 database LUW数据库逻辑单元是一种重要的数据库交易处理概念用于确保数据的完整性和一致性。database LUW 是一组数据库操作这些操作要么全部成功要么全部失败。这就意味着如果一个 database LUW 中的任何操作失败那么整个 database LUW 都会被回滚撤消以确保数据的一致性。 举个例子假设一个银行应用要进行转账操作。转账操作包含两个步骤从一个账户扣款然后把这个金额加到另一个账户。如果在这两步之间发生错误比如系统崩溃那么就可能出现数据不一致的情况即一个账户被扣款但另一个账户没有收到款项。为了避免这种情况我们可以把这两个步骤放在一个 database LUW 中。这样如果其中一个步骤失败整个 database LUW 都会被回滚就像没有操作发生一样。 在 SAP ABAP 中database LUW 的开始和结束是由 COMMIT WORK 和 ROLLBACK WORK 语句控制的。COMMIT WORK 语句表示当前 database LUW 的结束并提交所有挂起的数据库更改。然后会开始一个新的 database LUW。ROLLBACK WORK 语句用于撤销当前 database LUW 中的所有数据库更改然后开始一个新的 database LUW。 同步或异步更新提交 COMMIT WORK 异步更新该语句执行后不会等待所有更新函数都执行完后才继续执行后面的代码 COMMIT WORK AND WAIT同步更新该语句执行后会等待所有更新函数都执行完后才继续执行后面的代码执行结果可以通过sy-subrc来判断事务提交是否成功 例如以下 ABAP 代码将两个数据库操作包括在一个 database LUW 中   DATA: wa_bkpf TYPE bkpf,wa_bseg TYPE bseg.wa_bkpf-bldat sy-datum. wa_bkpf-budat sy-datum. wa_bkpf-blart DZ. wa_bkpf-waers USD. INSERT INTO bkpf VALUES wa_bkpf.wa_bseg-buzei 1. wa_bseg-shkzg S. wa_bseg-dmbtr 100. INSERT INTO bseg VALUES wa_bseg.COMMIT WORK.在这个例子中如果 INSERT INTO bkpf 或 INSERT INTO bseg 操作失败那么整个 database LUW 都会回滚就像没有插入操作发生一样。只有当这两个插入操作都成功时COMMIT WORK 语句才会提交更改并开始新的 database LUW。 在设计复杂的 ABAP 程序时正确使用 database LUW 是非常关键的。不正确的使用 database LUW 可能会导致数据不一致或者程序性能下降。例如如果你在一个循环中为每个迭代都开始一个新的 database LUW那么可能会导致性能问题因为每个 COMMIT WORK 都需要等待数据库完成所有挂起的更改。 SAP  WebService SAP WebService概念 3.1 什么是SAPWebService SAP Web Services是一种强大的工具用于将SAP系统与其他应用程序集成实现数据共享和自动化业务流程。它在企业中广泛用于提高业务效率、加强数据一致性和支持业务创新。开发人员可以使用标准的Web服务协议与SAP系统进行通信从而简化集成和开发过程.它允许外部应用程序通过标准的Web服务协议与SAP系统通信以执行各种操作如读取或写入数据、执行业务逻辑等。以下是有关SAP Web Services的关键信息 3.2 特征 SOAP和RESTful Web ServicesSAP支持两种主要的Web服务协议即SOAPSimple Object Access Protocol和RESTfulRepresentational State TransferWeb服务。SOAP通常用于复杂的企业级集成而RESTful Web服务更轻量级适用于简单的HTTP请求和响应。 功能SAP Web Services允许外部应用程序执行多种功能包括读取和写入SAP系统中的数据、触发业务流程、调用BAPIsBusiness Application Programming Interfaces等。 数据交换通过SAP Web Services您可以实现SAP系统与其他应用程序之间的数据交换。这可以包括与供应商、客户、合作伙伴系统的集成以及内部SAP系统之间的通信。 安全性SAP Web Services支持各种安全性机制包括基于用户名和密码的身份验证、SSL/TLS加密、SAMLSecurity Assertion Markup Language等以确保数据的机密性和完整性。 WSDL和API文档SAP Web Services通常会提供WSDLWeb Services Description Language文档该文档描述了服务的接口和可用操作。此外SAP通常提供API文档以便开发人员了解如何使用Web服务。 集成工具SAP提供了多种工具和技术以帮助开发人员创建、部署和管理SAP Web Services。这包括SAP NetWeaver平台、SAP Cloud Platform Integration等。 版本和协议SAP Web Services可能基于不同版本的SAP系统和使用不同的协议。开发人员需要根据其具体的SAP环境和需求选择适当的Web服务 生成WS的大致流程为: 1.首先在SAP中创建一个属性为RFC的函数 2.然后对该函数进行封装 3.最后通过事务代码--SOAMANAGER进行配置,即可得到供外部系统进行调用ws的URL 关于Webservice的概念和原理简单来讲Webservice是一种基于SOAP传输协议用WSDL描述用XML封装数据的接口技术。由于其跨平台、跨防火墙、开发成本低、开发周期短等优势而被广泛应用但也有局限性包括传输负载大、没有统一的实现模型等。 Web Service就是一个应用程序它向外界暴露出一个能够通过Web调 用的API。Web Service是一种基于Web的中间件技术。用户通过把应用程 序的一部分包装成Web服务的形式将自己的应用程序功能提供给别人 实现应用程序之间的接口。webservice可用于多个系统和SAP系统之间的 传输比较灵活。 根据外部系统提供的webservice的wsdl地址在SAP系统创建 webservice consumer时候输入该URL。使用SOAMANAGER创建逻辑端口, 封装函数在函数里指定端口并调用类的方法反之创建webservice provider生成wsdl供外部调用。 WebService实战 SAP创建webservice 第一步sm59--rfc连接. 这里采用中文系统连接英文系统(即中文系统调用英文系统中的rfc函数). 如果 IP地址是sap系统已经维护的了话目标主机会变为名称 相反sap系统没有维护的则会IP地址和目标主机都是类似(192.168.1.1)这种. 英文辅助  英文辅助  连接成功 点击后进入目标系统界面. 第二步 rfc函数创建-----参考上面 第三步进入webservice向导创建 方式一: 注意服务定义名称自定义名称要以Z或Y打头 创建webservice有两种途径,一种是通过se80,另一种是通过se37,前一种提供了多种选择类型(WS,Proxy object等),后者只能创建WS.上文中使用后一种方法.  第二种se80 调用webservice SAP 能通过设置WebService与外部的webservice服务连接 1、进入事务SE80选择 Package 指定保存的开发包如图创建一个Enterprise Service。 [注意]在弹出窗口中输入选择本地则是  [注意]在窗口中选择URL/HTTP Destination’ 在弹出的窗口中选择‘URL’并输入wdsl地址  下一步在弹出的窗口中在Package栏中输入所需保存的开发类若保存为本地开发类则需将‘Local/Object’选上 下一步点击完最终的‘Complete’后如果相连接的WDSL没有问题则会出现WebService 代理类的创建窗口 重命名后双击进入类中  点击它们的参考类型 在创建程序 *---------------------------------------------------------------------* * Report ZTXYY_1163 *---------------------------------------------------------------------* * *---------------------------------------------------------------------* REPORT ZTXYY_1163. DATA LR_MOTH TYPE REF TO ZTXYY_11001CO_Z_RFC_XYY_TOPU. DATA INPUT TYPE ZTXYY_11001ZXYY_RFC_001. DATA OUTPUT TYPE ZTXYY_11001ZXYY_RFC_001RESPONS. TRY.CREATE OBJECT lr_mothEXPORTINGlogical_port_name ZLP01用于指定端口lpconfig 配置逻辑端口. CATCH cx_ai_system_fault . ENDTRY.INPUT-FIRST_NUM 10. INPUT-FUHAO /. INPUT-SECOND_NUM 2.IF lr_moth IS NOT INITIAL.TRY.CALL METHOD lr_moth-zxyy_rfc_001EXPORTINGINPUT INPUTIMPORTINGOUTPUT OUTPUT.CATCH cx_ai_system_fault .CATCH ztxyy_11001cx_zxyy_rfc_001_exc .ENDTRY. ENDIF. BREAK-POINT. *下文为最优 DATA: go_proxy TYPE REF TO ZTXYY_11001CO_Z_RFC_XYY_TOPU,gs_input TYPE ZTXYY_11001ZXYY_RFC_001,gs_output TYPE ZTXYY_11001ZXYY_RFC_001RESPONS,go_exception TYPE REF TO cx_ai_system_fault. TRY.CREATE OBJECT go_proxy.gs_input-FIRST_NUM 3.gs_input-SECOND_NUM 7.gs_input-FUHAO *.go_proxy-zxyy_rfc_001(EXPORTING INPUT gs_inputIMPORTING OUTPUT gs_output ).WRITE gs_output-THREE_NUM. CATCH cx_ai_system_fault INTO go_exception.WRITE go_exception-errortext. ENDTRY.uline. DATA:lo_clientproxy TYPE REF TO ZTXYY_11001CO_Z_RFC_XYY_TOPU. proxy class DATA:lo_input TYPE ZTXYY_11001ZXYY_RFC_001, 输入参数lo_output TYPE ZTXYY_11001ZXYY_RFC_001RESPONS. 输出参数 DATA:g_sys_exception TYPE REF TO cx_ai_system_fault. DATA:g_app_exception TYPE REF TO cx_ai_application_fault. *lo_request request.TRY.CREATE OBJECT lo_clientproxy.CALL METHOD lo_clientproxy-zxyy_rfc_001 web service函数EXPORTINGINPUT lo_inputIMPORTINGoutput lo_output.* ***Write Out the Basic Information CATCH cx_ai_system_fault INTO g_sys_exception.捕获错误IF g_sys_exception IS NOT INITIAL.WRITE: Error:Communication Error.ENDIF. CATCH cx_ai_application_fault INTO g_app_exception.IF g_app_exception IS NOT INITIAL.WRITE Error:Application Error.ENDIF. ENDTRY. lpconfig 配置逻辑端口 在进入创建端口的界面后输入描述并在‘一般设置’下的‘调用参数’页签中在URL中输入WSDL地址并在‘应用程序特定设置’的‘全局设置’页签下将‘状态管理’勾上否则在激活的时候会提示‘激活不成功’ 这里可以通过填写 URL 的 方式也可以通过 http 目标的方式这个地方就是 sm59 里 RFC 的名字.(也可以上传本地文件) 操作右侧SOAP操作输入xml文件中soapAction等号后的内容包括引号有可能仅仅只是两个引号 在事务SM59中定义一个指向BB1系统的R3类型的RFC连接连接类型3。  例作用:将内表转成 json 字符串并发送.  MOVE-CORRESPONDING gt_item TO lt_kv.DATA :rv_proxy TYPE REF TO zco_inter_face, y_exp TYPE zexecute_web_services_request,y_imp TYPE zexecute_web_services_response.DATA: serializer TYPE REF TO cl_trex_json_serializer,lv_json TYPE string.DATAo_return5 TYPE string .DATA: lo_writer TYPE REF TO cl_sxml_string_writer,lv_output_length TYPE i,lt_binary_tab TYPE STANDARD TABLE OF sdokcntbin,lv_jsonx TYPE xstring.CLEAR lv_json .lo_writer cl_sxml_string_writercreate( type if_sxmlco_xt_json ).CALL TRANSFORMATION id SOURCE text lt_kv[] RESULT XML lo_writer.lv_jsonx lo_writer-get_output( ).CALL FUNCTION SCMS_XSTRING_TO_BINARYEXPORTINGbuffer lv_jsonxIMPORTINGoutput_length lv_output_lengthTABLESbinary_tab lt_binary_tab.CALL FUNCTION SCMS_BINARY_TO_STRINGEXPORTINGinput_length lv_output_lengthIMPORTINGtext_buffer lv_jsonoutput_length lv_output_lengthTABLESbinary_tab lt_binary_tab.DATA str1 TYPE string.DATA str2 TYPE string.DATA str3 TYPE string.DATA str4 TYPE string.CLEAR:str1,str2,str3,str4 .SPLIT lv_json AT [ INTO str1 str2.SPLIT str2 AT ] INTO str3 str4.CONCATENATE [ str3 ] INTO o_return5 .CLEAR:y_exp,y_imp.TRY.CREATE OBJECT rv_proxyEXPORTINGlogical_port_name LZP01.为此webservice创建的逻辑端口。CATCH cx_ai_system_fault .MESSAGE 出错了 TYPE E.ENDTRY.y_exp-method_para o_return5 .y_exp-method_name tldErpManagerWebGXService.TRY .CALL METHOD rv_proxy-execute_web_servicesEXPORTINGexecute_web_services_request y_expIMPORTINGexecute_web_services_response y_imp.CATCH cx_ai_system_fault .IF y_imp-execute_web_services_return EQ 0.MESSAGE 执行成功 TYPE S.ENDIF.CATCH cx_ai_application_fault .IF y_imp-execute_web_services_return EQ 1.MESSAGE 执行失败 TYPE S.ENDIF.ENDTRY. SAP与 WebService接口的配置与调用_sap lpconfig_酒剑仙abc的博客-CSDN博客 https://www.cnblogs.com/jimi520/p/12125632.html https://www.cnblogs.com/rainysblog/p/6625563.html 查看企业服务(webservice) 外部系统访问配置 若是生成的WS供SAP系统调用,则此步骤可以省略,非SAP系统访问则必须配置,通过事务代码; SOAMANAGER对web service(zrfc_xyy_topu)进行配置具体过程 点击webservice Administration 进行配置,进入后选择自己创建的WS,然后Apply Selection; 再点击Configurations,然后点击Edit按钮,如下 在上图中输入用户名和密码即可,然后点击Save按钮配置完成,再点击下图中的Overview按钮,然后打开;Open WSDL document for selected binding标签,即可获得URL. 总结 1, webservice简介 关于Webservice的概念和原理简单来讲Webservice是一种基于SOAP传输协议用WSDL描述用XML封装数据的接口技术。由于其跨平台、跨防火墙、开发成本低、开发周期短等优势而被广泛应用但也有局限性包括传输负载大、没有统一的实现模型等。 对于Webservice在SAP系统中的应用多被用在系统同步要求高数据传输负载小的接口开发上。下面以SAP系统和外部系统的交互为例SAP ECC系统两个、外部系统一个Java EJB3 Jboss5分别讲述从SAP到SAPSAP到JavaJava到JavaJava到SAP的Webservice实例。 2, SAP系统间的Webservice调用 SE37创建函数z_calculate类型要设置为RFC类型参数都设置为传值 代码如下 *---------------------------------------------------------------------- **Local interface: *  IMPORTING *     VALUE(NUMBER1) TYPE  STRING *     VALUE(NUMBER2) TYPE  STRING *     VALUE(OPERATOR) TYPE  STRING *  EXPORTING *     VALUE(RESULT) TYPE  STRING *----------------------------------------------------------------------   TRY .       CASE operator.         WHEN .           result number1 number2.         WHEN -.           result number1 - number2.         WHEN *.           result number1 * number2.         WHEN /.           result number1 / number2.         WHEN OTHERS.           result Not supported!.       ENDCASE.     CATCH cx_root.       result Not supported!.   ENDTRY.   CONDENSE result. ENDFUNCTION. 把函数发布成Webservice 其他一路下来默认完成后服务已经创建接下来到SOAMANAGER中去找WSDL的URL进入到Web service Administration界面 Apply selection  Overview   Displayselected Bindings WSDL URL在右边可以看到了。 接下来去事务码:SICF中找到服务的Endpoint地址 在浏览器中会得到地址 下面进入到Webservice的Client端SAP系统SE80创建代理类 SAP Webservice实例教程 | 摆渡SAP        中文版 最详细的 SAP ABAP Web Service 创建和消费步骤讲解 - 知乎     英文版 webservice的配置 SAP Web Service配置准备工作 Webservice最终是以WSDL形式发布即一个带有URL的XML文件。既然是URL就必然涉及到发布服务器的域名、端口、目录等信息因此SAP提供的webservice在能够被正常调用之前需要对服务器的域名进行DNS解析并且WS要发布必须要通过SAP的SOA Manager进行服务的绑定所以还需要对SOA Manager进行的一定的设置让其正常工作才能进行下一步的服务绑定。具体步骤见下面章节。 1. 通过RZ10配置服务器名称和其他参数 服务器的参数一般是由basis来配置完成的。这里主要用来查看服务器的Hostname以帮助下一步的DNS解析操作。 在SAP客户端首页运行T-code:RZ10即可进入服务器参数文件管理界面如下图 点击“参数文件”旁边的搜索帮助按钮即可弹出服务器上已有的实例和默认的参数设置这里我们只需选择默认参数文件查看即可。选择下面的“基本维护”选项就可以快速查看服务器默认的Hostname以及默认集团号如下图所示 如果想查看更多服务器信息可以选择参数维护概览界面的“扩展维护”选项就可以看到服务器的详细信息如下图所示 如果想修改系统的参数建议找Basis修改这里与webservice相关的几个重要参数为 v   login/system_client 登录时默认的Client号 v   login/fails_to_user_lock 密码输错多少次后锁定 v   rdisp/mshost 状态栏中显示的系统名称 v   Sapglobalhost SAP全局主机名这个参数就是后面需要设置的被解析的对象 读者如果对其他参数有兴趣可自行到互联网上查找相关信息这里不再赘述。 2. 配置服务器被DNS解析 如果SAP服务器本身没有加入到所在工作环境的域控中那么服务器的hostname默认是无法被解析到的则需要进行服务器的host解析。常见的host解析办法有两种集中解析和单机解析。各自的优缺点和办法如下 1集中解析 集中解析就是将host解析条目添加到服务器所在网络的DNS服务中一般需要联系网络管理员来添加这个解析条目。集中解析的优点就是处于该网络环境中的所有客户端主机只要使用的默认DNS服务器就可以直接访问发布后的webservice而不需要在本机上做出任何操作。 2单机解析 单机解析就是在客户端电脑上直接修改本地的host文件具体操作如下 依次浏览到这个目录下系统盘盘符:\Windows\System32\drivers\etc找到下面的一个名为“hosts”不带文件类型后缀的文件右击这个文件选择以记事本方式打开该文件然后在下面的空白区域添加这样一条解析 SAP服务器的IP地址SAP的hostname 例如 192.168.1.10 erpdev01。这里的hostname就是我们上一步通过RZ10查看到的SAPGlobalhost中名称添加完成后保存该文件即可正常解析了。要检验配置是否成功只需要在命令提示符中使用PING命令即可以检测。 3.启用SOAMANAGER服务 前面已经介绍过SAP是通过SOAMANAGER来对外发布指定服务器的SOAMANAGER本身其实也是一个基于Netweaver的Web Dynpro程序当你在SAP GUI客户端执行T-CodeSOAMANAGER的时候就会默认调用IE来打开这个WDA程序从而实现对webservice的发布的管理。但是根据SAP官方Note1124553的说法出于安全方面的考虑SAP Netweaver组件安装后默认是不激活WDA程序显示服务以及SOAMANAGER服务的因此需要手工通过T-CodeSICF来先激活WAD程序显示相关服务以及SOAMANAGER服务具体需要激活的服务如下 ①与显示WDA程序相关的服务 /default_host/sap/bc/webdynpro 注意这里只需要激活webdynpro这个服务不需要激活其下面的子服务。当你右键激活这个服务的时候其子节点的服务并不会被激活这点与我们常见的激活逻辑有区别 /default_host/sap/public/myssocntl /default_host/sap/public/bc 注意如果你激活bc下面的子服务这里的bc服务就会自动激活不需要再手动激活了因此这里可以跳过这个服务直接激活其下面的子节点服务即可 - /default_host/sap/public/bc/ur - /default_host/sap/public/bc/icons - /default_host/sap/public/bc/icons_rtl - /default_host/sap/public/bc/webicons - /default_host/sap/public/bc/pictograms - /default_host/sap/public/bc/webdynpro/* (ssr, mimes等所有子节点服务) ②与SOAMANAGER相关的服务 - /default_host/sap/bc/soap  - /default_host/sap/bc/srt - /default_host/sap/bc/srt/rfc/sap - /default_host/sap/bc/webdynpro/sap  - /default_host/sap/bc/webdynpro/sap/appl_soap_management. 具体操作步骤如下 在SAP首页执行T-codeSICF打开服务定义选择界面在“层次结构类型”中输入“Service”或者通过F4选择出这个值然后执行就可以进入服务管理界面如下图所示 在服务管理界面可以看到上半部分为一个服务查询的界面可以供用户快速定位到需要的管理的服务上下半部分为一个树形结构的服务目录可以通过逐级展开Default host\sap\bc等等进行服务的查找如下图所示 上半部分通过查找可以快速定位到所需服务在服务名称里面输入服务的名称点击“应用”按钮即可快速定位相应的服务也可以在下半部分逐级展开目录来定位到相应的服务如下图所示 在这里可以看到被激活过的服务或者目录颜色比较深而处于待激活状态的服务或者目录呈现灰色。被激活过的对象无法被再激活只能取消激活。这里我们选择相应的待激活的服务或者子目录呈现灰色状态右击-》激活服务-》选择“是”即可以激活相应的服务或者目录。如下图所示  按照上面的步骤依次激活本节开始所列举的那些服务应该就能顺利打开SOAMANAGER了如果还不能打开可以根据弹出的浏览器中提示的错误来找到相应的服务进行激活即可。配置成功后可以在SAP GUI中运行T-code SOAMANAGER来进行测试。 在SAP首页运行T-code SOAMANAGER回车会弹出IE浏览器窗口如果成功的话会先弹出认证框与某些电脑的安全设置相关也有可能先弹出IE安全站点提示信息这时候只需要展开“详细信息”-》转到网页不推荐继续访问即可输入登录信息后就可以进入到SOA管理界面了。如下3图所示 如果配置失败一般会在浏览器提示相应的错误信息。如果显示为“无法访问此页面”或者类似的完全打不开的提示信息请回头检查自己的网络链接是否正常或者是前面步骤中DNS的解析是否添加成功。 如果提示403错误则表示某些服务没有启动则可以通过显示该页面的URL从URL中找到相应的服务然后再按照上面激活服务的办法去激活相应的服务即可。服务没启动时会报出403错误如下图所示 在该页面空白处右击-》属性即可以打开该页面的属性在属性的地址中找到URL中问号“”前的最后一个子节点即相应的服务。 【SAP】ABAP——Web Service简介与配置方法_abap webservice-CSDN博客 我的运维日常-SAP显示外部系统可访问的Webservice地址 - 知乎
http://www.tj-hxxt.cn/news/228151.html

相关文章:

  • 网店平台网站建设需求wordpress建站的教程
  • 清华大学绿色大学建设网站微官网建设公司排行
  • 怎么做北京赛网站安徽六安发现一例新冠阳性检测者
  • 天津都有哪些制作网站网站建设完整步骤
  • 网站建设对用户影响青海省建筑信息平台
  • mooc网站建设食品网站建设实施方案
  • 做网站报价出名的域名到期换个公司做网站
  • 建设局网站安徽虚拟主机怎么发布网站
  • 网站如何做导航条下拉菜单杭州手机网站建设公司 网络服务
  • 网站标题优化可以含几个关键词Wordpress翻译自定义链接
  • 把网站做成静态页面舆情分析系统
  • 网站建设工作室 需要营业执照吗免费企业logo设计
  • 建设局网站查询郑州网站服务公司
  • 教程seo推广排名网站定位网站关键词
  • 做一个微信小程序需要多少钱嘉兴做网站优化哪家好
  • 门户型网站建设方案汕头名域设计
  • 网站宣传专利被罚建筑人才网河南省2022年3月安全员
  • 做门户网站需要什么条件网站建设政务新媒体
  • 各大网站开发的区块链有没有安全一点的网站
  • 电影网站建设模板比特币交易所网站开发
  • 百度爱采购网站官网网站建设设计logo
  • 青岛即墨网站建设设计静态网页怎么放到网上
  • 微信浏览为网站的缓存怎么清理东莞常平天气
  • 济南做网站优化的公司郑州一建
  • 嘉兴网站定制公司免费做橙光封面的网站
  • 江苏大丰做网站网站排名如何做
  • 照明做外贸的有那些网站网站开发技术方案模板
  • 国外建筑公司网站wordpress做阿里巴巴国际站
  • 深圳品牌网站设计专家东莞找工作一般在哪里找
  • 永久免费建站程序潮州建设局网站