SAP与 WebService接口的配置与调用

2023-11-17

SAP 能通过设置WebService与外部的webservice服务连接;

1、进入事务:SE80,选择 Package ,指定保存的开发包,如图,创建一个Enterprise Service

2、在弹出的下一个窗口中选择‘URL/HTTP Destination’,点击‘继续’;

3、在弹出的窗口中,选择‘URL’,并输入wdsl地址;

4、在弹出的窗口中,在'Package'栏中输入所需保存的开发类,若保存为本地开发类,则需将‘Local/Object’选上;

5、点击完最终的‘Complete’后,如果相连接的WDSL没有问题,则会出现WebService 代理类的创建窗口;

6.lpconfig 配置逻辑端口

在进入创建端口的界面后,输入描述,并在‘一般设置’下的‘调用参数’页签中,在'URL'中输入WSDL地址,并在‘应用程序特定设置’的‘全局设置’页签下将‘状态管理’勾上,否则在激活的时候会提示‘激活不成功’;

 

可以通过填写 URL 的 方式,也可以通过 http 目标的方式,这个地方就是 sm59 里 RFC 的名字.

 

7、操作:右侧SOAP操作,输入xml文件中soapAction等号后的内容,包括引号,有可能仅仅只是两个引号

8、在事务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.
  DATA:o_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_writer=>create( type = if_sxml=>co_xt_json ).
  CALL TRANSFORMATION id SOURCE text = lt_kv[] RESULT XML lo_writer.
  lv_jsonx = lo_writer->get_output( ).

  CALL FUNCTION 'SCMS_XSTRING_TO_BINARY'
    EXPORTING
      buffer        = lv_jsonx
    IMPORTING
      output_length = lv_output_length
    TABLES
      binary_tab    = lt_binary_tab.

  CALL FUNCTION 'SCMS_BINARY_TO_STRING'
    EXPORTING
      input_length  = lv_output_length
    IMPORTING
      text_buffer   = lv_json
      output_length = lv_output_length
    TABLES
      binary_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_proxy
        EXPORTING
          logical_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_services
        EXPORTING
          execute_web_services_request  = y_exp
        IMPORTING
          execute_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.

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SAP与 WebService接口的配置与调用 的相关文章

  • SAP MM ME2M ME2L ME28 增强自定义字段

    本人诚心接ABAP远程开发任务 价格公道 有需要的联系我 欢迎个人 甲方爸爸 乙方私信联系 目前项目需要增强ME2L 去增加客制化的字段 一开始顾问要求是copy标准程序 然后增加字段 查阅资料之后发现 SAP 预留了标准的增强出口去做增强
  • Delphi多层开发方案比较

    以下转载自 http blog sina com cn s blog 53decb4101009a5m html type v5 one label rela nextarticle http blog csdn net SmallHand
  • api接口、RPC、WebService分别解决什么问题?

    api接口 RPC WebService分别解决什么问题
  • 项目中集成 axis2 发布webservice

    在网上找了很多例子 发觉很多都是脱离项目 单独使用axis2包发布webservice接口 实际开发中 一般都是跟随项目启动之后 自动发布接口 接下来简单讲解一下 在项目中集成发布axis2 webservice接口 1 打开axis2 w
  • 业务敏捷 SOA从概念到实践迈出的一大步

    2007年5月30号 在北京西四环的世纪金源大酒店宴会厅里 一场关于中国SOA最佳实践的技术大会在这里举行 从Gartner首度提出SOA这个概念到现在已经超过了十个年头 在这十年发展的演变中 SOA的内涵发生了多次的变化 从ESB Web
  • Java调用WebService接口的四种方式

    调用WebService 使用wsimport生成代码 不推荐 使用Axis 1 4 动态调用 使用HTTP SOAP方式远程调用 通过Spring注解方式调用 使用wsimport生成代码 不推荐 配置java环境变量后在命令窗口中输入
  • ABAP OPEN SQL详解

    本章目录 概要 OPEN SQL 读取数据 1 概要 1 1 R 3体系结构 学习SQL之前先了解一下R 3体系结构 如 图1 所示 SAP R 3一共分为三层结构 其中应用层和数据库层由单独的系统构成 1 表示层 表示层 Presenta
  • ALV FIELDCAT添加属性 – REUSE_ALV_FIELDCATALOG_MERGE函数

    在 ALV 定义 Fieldcat 的时候 我们往往需要通过 slis fieldcat alv 的赋值给Fieldcat导入结构 如上篇文章中给出的例子 01 02 03 04 05 06 07 08
  • S/4 Coding block 增加扩张字段与error的解决方法

    在做FICO项目中经常要遇到往标准画面或者标准表追加客户自定义字段 网上也有很多方法 但是都有点不太连贯 今天总结一下初级实施人员也可以掌握的方法分享给大家 1 T CODE OXK3 进入到初期画面里面 我们的扩张对象CI COBL应该是
  • Android通过webservice连接SQLServer 详细教程(数据库+服务器+客户端)

    本文为原创 如果转载请注明出处 http blog csdn net zhyl8157121 article details 8169172 其实之前发过一篇这样的博文http blog csdn net zhyl8157121 artic
  • java调用webservice接口 几种方法

    webservice的 发布一般都是使用WSDL web service descriptive language 文件的样式来发布的 在WSDL文件里面 包含这个webservice暴露在外面可供使用的接口 今天搜索到了非常好的 webs
  • WMS仓库管理系统与ERP仓储系统的区别与联系

    现代企业越来越重视物流及仓储管理 然而提到WMS仓库管理系统与ERP仓储系统 许多企业管理者依旧是一脸茫然的表情 无法清晰的区别分辨 其实这两款软件在功能上有相似的地方 下面就由沈阳达策带您一看究竟 实际上 ERP仓储系统和WMS仓库管理系
  • WebService 四种发布方式总结

    1 CXF方式 CXF与spring搭建webservice是目前最流行的方式 但是传闻cxf与jdk1 5有些不兼容 我没有遇到过 我遇到的问题是cxf与was6 1 1不兼容 表现在cxf必须的jar包 wsdl4j 1 6 2 jar
  • 国际MES供应商与产品大全

    最近花了一点时间 将国际上知名的MES厂商和其产品整理了一下 如下 ABB ABB 苏黎世 瑞士 是一个240亿美元的自动化和电力技术的全球业务的供应商 它的制造软件利用其控制及自动化产品通用解决方案的一部分 其系统800xa控制体系结构
  • SAP 科目的 未清项管理的理解

    清账的事务代码 自动清账 F 13 总账清账 F 04 供应商清账 F 53 客户清账 F032 未清项管理是SAP的一个重要功能 通过未清项管理可以实现付款 收款 的一一对应 以及准确的账龄分析 会计科目设置此标志后 系统会将凭证行标记为
  • SAP-基于批次特定计量单位的应用-01-产品数量管理

    原文链接 https mp weixin qq com s zknWGuz2lU387vAGSiykw 大家可以关注我个人公众号 所有分享内容 会在公众号第一时间推送 且阅读排版更好 愿大家的学习 轻松且愉快 如果大家觉得有用 希望转发关注
  • ChatGPT懂SAP吗?跟ChatGPT聊完后,我暂时还不担心会被它取代岗位

    我弄了个ChatGPT账号 随便问了一下他SAP的问题 它的回答还是比较有意思的 贴出来跟大家分享一下 问题1 我是 SAP 开发工程师 你有什么可以帮到我 作为一个语言模型 我可以为您提供关于SAP开发的一般性建议 以及关于如何使用SAP
  • IOS开发笔记 - 基于wsdl2objc调用webservice

    为了方便在ios下调用webserivce 找来了wsdl2objc这样一个开源的框架来解析webservice方便在ios下引用 下面做个小例子 1 首先是用Asp net搭建一个测试的webserivce并放在IIS服务器上面 核心代码
  • ABAP--新语法--Open SQL--第四天-- From Table

    From Table Internal Table 在 ABAP 7 52 后 支持将内表作为数据源使用 内表作为数据源使用时 需要定义别名并使用转义符 该用法可以用来代替 FOR ALL ENTRIES IN 但FROM 语句中最多使用一
  • SAP MASS 扩展物料的仓库管理视图

    SAP MASS 扩展物料的仓库管理视图 执行事务代码 MASS 进入如下界面 Object Type BUS1002 Materials industry 执行 进入如下界面 选中 Material Data for Each Wareh

随机推荐

  • postgresql教程

    postgreSQL教程目录 postgreSQL 创建数据库的方式 postgreSQL删除数据库的方式 PostgreSQL 创建表格 postgre删除表格 postgreSQL INSERT INTO 语句 postgreSQL S
  • Android中使用AES加密和解密

    Android中如何使用AES进行加密和解密 作为初入社会的IT行业的大专实习生 只能在公司里被当牛一样每天工作到半夜十二点以后 在这里也是第一次写博客 目的只有两个 1 记录技术实现 尽可能的帮助网友解决困难 2 吐槽公司 不多说了 直接
  • [每日设计] 01、小贱钟,基于STM32的手写机器人

    每日设计 01 小贱钟 基于STM32的手写机器人 原创 starger District 46实验室 3月25日 看厌了圆形的钟表 数字显示又太生硬 相信很多人和我一样 想换一个与众不同的方式看时间 小贱钟就是这样一个有趣的东东 它可以用
  • flask SQLAlchemy-ORM增删改查

    ORM介绍 随着项目越来越大 采用原生SQL的方式在代码中会出现大量的SQL语句 对项目的进展非常不利 SQL语句重复利用率不高 越复杂的SQL语句条件越多 代码越长 会出现很多相近似的SQL语句 很多SQL语句是在业务逻辑中拼出来的 如果
  • 文件ajax上传方式

    直接看代码 1 html table class layui table thead tr td width 20 产品信息 td td 产品信息 td tr thead tbody tr td 产品名称 td td td tr tbody
  • DOM之获取标签元素、属性和属性值

    1 获取标签元素 docunment getElementById id 只能获取一个id标签 docunment getElementByClassName class 获取class标签 结果是一个为数组 不能用forEach docu
  • 【自然语言处理】情感分析(一):基于 NLTK 的 Naive Bayes 实现

    情感分析 一 基于 NLTK 的 Naive Bayes 实现 朴素贝叶斯 Naive Bayes 分类器可以用来确定输入文本属于某一组类别的概率 例如 预测评论是正面的还是负面的 它是 朴素的 它假设文本中的单词是独立的 但在现实的自然人
  • Nginx中root和alias的区别

    root root指定的目录是上级目录 path匹配的整个路径会追加 即root path alias alias指定的目录必须带 path匹配后面的内容会在alias指定的目录下查找 即alias 匹配到path路径后面的部分 例 loc
  • C语言中的static 详细分析

    google了近三页的关于C语言中static的内容 发现可用的信息很少 要么长篇大论不知所云要么在关键之处几个字略过 对于想挖掘底层原理的初学者来说参考性不是很大 所以 我这篇博文博采众家之长 把互联网上的资料整合归类 并亲手编写程序验证
  • 仓鼠与厕鼠

    author skate time 2010 05 28 仓鼠与厕鼠 昨天晚上坐车回家的路上 看见来来往往的人流与车流 行走在高楼之间的马路上 心里当时有个触动 把自己抛离这个画面 站在一个全局的角度看 看似简单的画面 却让人感触很深 行走
  • [Windows驱动开发](一)序言

    笔者学习驱动编程是从两本书入门的 它们分别是 寒江独钓 内核安全编程 和 Windows驱动开发技术详解 两本书分别从不同的角度介绍了驱动程序的制作方法 在我理解 驱动程序可分为两类三种 第一类 传统型驱动 传统型驱动的特点就是所有的IRP
  • 解决网页不能复制或者答题不可粘贴

    F12 gt F1 gt Debugger Disable JavaScript 打勾
  • 用最简单的例子告诉你kafka是怎么用的

    1 首先打开zookeeper集群和kafka集群 三台都开上 2 创建 Kafka 主题 call 在任意几点创都可以 kafka topics sh zookeeper hadoop01 2181 topic call create r
  • Python每日练习题以及答案解析,还不进来测试一下?

    问题引入 现在有5个小朋友要分糖果 他们按照自己的编号顺序围坐在一张圆桌旁边 他们身上都有一些糖果 通过输入来决定每个小孩糖果的数量 从1号小朋友开始 将自己的糖果平均分成最多的3份 多出来的自己吃掉 自己留一份 其余两份分给他相邻的两位小
  • Python中字符串中函数rfind()用法

    Python中字符串中函数rfind 用法 1 rfind 函数概述 rfind 用来在一个字符串中查找一个字符串的最后出现时的索引位置 2 语法 str rfind substr beg 0 end len string rfind 方法
  • Jlink使用技巧之合并烧写文件

    文章目录 前言 准备 创建工程 1 打开JFlash 2 创建新工程 3 选择芯片的型号 4 打开要合并的程序文件1 bootloader hex 5 打开要合并的程序文件2 app hex 6 保存合并后的文件 注意 JLink软件的下载
  • select函数详解

    select函数的功能和调用顺序 使用select函数可以完成非阻塞方式工作的程序 它能够监视我们需要监视的文件描述符的变化情况 读写或是异常 非阻塞方式 non block 就是进程或线程执行此函数时不必非要等待事件的发生 一旦执行肯定返
  • 安装计算机一级出现appcrash,电脑appcrash的问题怎么修复

    电脑是很复杂的程序代码设计的 因而有时会遇到一些奇怪的问题 而APPCRASH错误也是其中一种 如运行程序出现APPCRASH错误 我们在日志中查看事件名称为APPCRASH 这时很多朋友不知道怎么解决 下面小编和大家一起分享下修复这个问题
  • php服务不可用,ThinkPHP/Library/Vendor/Tcpdf/fonts/uni2cid_ak12.php · 白俊遥/thinkphp-bjyadmin - Gitee.com...

    unicode to cid conversion table is from ftp ftp oreilly com pub examples nutshell cjkv adobe cid2code txt in ak12 tar Z
  • SAP与 WebService接口的配置与调用

    SAP 能通过设置WebService与外部的webservice服务连接 1 进入事务 SE80 选择 Package 指定保存的开发包 如图 创建一个Enterprise Service 2 在弹出的下一个窗口中选择 URL HTTP