`
shz2008bj
  • 浏览: 481344 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

PI 7.1: A step_by_step Guide for JDBC to RFC scenario

阅读更多

转自:http://scnblogs.techweb.com.cn/dario/archives/32.html

1.场景介绍

scenario

2.准备工作

要让JDBC adapter能够正常工作,必须保证对应的JDBC Driver已经被正确的部署了,关于如何部署可以参考SDN上的一篇文章:http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/00b4a020-4ae6-2c10-5a95-fed4ad9a4b60

3.工作环境介绍

在PI安装完成后,通过PI的ABAP client的事务代码SXMB_IFR或者直接在浏览器输入http://<hostname>:5<system number>00/dir 就可以进入到下面的界面

tools

其中我们会在SLD中完成各个系统信息,产品信息等的登记,在ESR中完成整个接口的DESIGN部分,然后在ID中完成CONFIGURATION部分,最后在RWB中可以查看整个场景的工作情况。

4.第一步:在SLD中定义Technical system,Business System和SWCV(Software Components Version),SWCV将会用来在ESR中管理各个OBJECT,相当于ABAP中的Package的概念,而BUSINESS SYSTEM将会作为发送方或者接收方的ID.由于这一部分非常简单,所以在此略过。

在这一步的定义完成之后,登录到ESR,按照路径 新建–>Work Areas–>Software Components Version,然后选择import from SLD就可以将SLD中的信息导入到ESR,以本次SCENARIO为例,我们将会看到我们创建的三个Business System CEA_AOC,CEA_ECC,CEA_PI已经出现在了ESR中,他们分别代表发送方,接收方和PI本身:

sld_to_esr

在上图中,CEA_AOC代表Oracle系统,CEA_ECC代表SAP ECC系统,而CEA_PI代表PI本身,通常我们会按照发送方,PI,接收方建立三个系统,然后会在开发的时候分别将各自相关的OBJECT放到对应的系统下,这样会让整个SCENARIO的结构特别清晰,有时候在网上看到很多的DEMO都是将发送方,PI,接受方的OBJECT放在一起,显得特别混乱。

5.第二步:发送方的相关DESIGN. 这里会牵涉到四个对象,按照依存关系分别是Data Type–>Message Type –>Service Interface –>Action

sender

其中在Data Types的定义中,我们需要定义一个数据结构,这个结构会对应到Oracle数据库表里面的字段,需要特别注意的是,通过JDBC从Oracle取出数据后形成的XML文件里面每一行数据是带有固定的tag<row>的,所以在这里也必须定义structure的名字为row,如下图所示。否则的话也许你已经取到数据到PI了,最后却发现怎么也传不到RFC的参数里面去。这个问题曾经困扰了我很久,测试的时候JDBC取数据一切正常可是RFC就是得不到数据,最后才发现有这里的一个原因。

define-data-type1

然后我们可以基于这个data type定义一个Message Type

message-type

以这个message type为基础,再定义一个Service Interface。

service-interface

最后定义一个action

action

到此为止发送方的定义完成。

6.第三步:定义接收方的信息

由于这次的接收方是通过RFC传递消息的,所以定义会比较简单,只需要从SAP导入RFC interface然后定义一个对应的ACTION就可以了。

导入RFC

rfc

再定义一个ACTION

action

到此接收方定义完毕

7.第四步:定义发送方和接收方的数据在PI上的MAPPING 转换.

先来定义Message Mapping,也就是如何将发送方XML文件转换成接收方XML文件的字段级别的转换规则,这里就会用到前面定义的发送MESSAGE TYPE和接收方的RFC以及各自对应的数据结构

message-mapping1

最下面的编辑框就是SAP自带的图形化MAPPING工具,提供了非常多的FUNCTION来做MAPPING。如果不能满足实际要求的话,也可以自己开发JAVA程序或者XSLT以及ABAP class。这里的MAPPING完成后,可以点击上面的TEST tab page进行测试,很方便。

接下来再来创建一个OPERATION MAPING,这一步会将发送方的OUTBOUND interface和接收方的INBOUND Interface做MAPPING,本例中接收方的Inbound INTERFACE就是前面导入的RFC.

om

接下来我们就可以把我们之前做的所有这些定义做出一个整体的integration scenario,这个scenario也会在下一步的ID配置中用到。

is

其中左边的START ACTION是发送方的ACTION,右边的END ACTION是接收方的ACTION,双击两个ACTION中的连线就可以看到前面定义的MAPPING。

激活所有的OBJECT(分别在每一步完成)后我们就完成了在ESR上的工作。

8.第五步:登录到ID进行配置工作

按照路径 TOOLS–>Apply Module from ES Repository并输入我们在ESR创建的integration scenario名字,我们就可以创建一个Configuration Scenario:

configuration-scenario

在这一步主要需要完成两个TASK,第一是创建或者选择已经选择好的Business System并分别分配到发送方和接收方,如果是新建,点击新建按钮按照提示做下去即可,前提条件是已经在SLD定义了相应的BUSINESS SYSTEM。第二个是为发送方和接收方分别创建CommunicationChannel,这一步有一个前提条件那就是需要先在ESR创建Communication Channel Template,这两步按照提示都可以轻松完成,所以这里就忽略了,这一步完成之后我们就会看到:

cs1

接下来就是两个ADAPTER的详细配置,先看JDBC sender adatper:

JDBC CONNECTION TAB

jdbc_connection

对于上面的CONNECTION 参数,其格式是jdbc:oracle:thin:@<ip address>:<port number>:<service_name>, 对于不同的数据库来说会不一样。

JDBC PROCESSING TAB

jdbc_pro

这里的话要注意的是Document Name必须使用前面我们在发送方定义的Message Type Name,否则的话会导致MAPPING无法进行,数据无法传输到RFC.

再看RFC ADAPTER的配置

rfc-adatper

这一步也就是填一些SAP系统的登录信息,也非常简单。

对于各个ADAPTER的定义和参数设置,可以参考sap help:http://help.sap.com/saphelp_nw2004s/helpdata/en/0b/9a50465ccf84479e39a6d50c90fb3f/frameset.htm

激活所有的OBJECTS, 配置就完成了。

9.第六步:登录到RWB查看Communication Channel状态:

可直接输入下面的URL进行查看: http://<host name>:5<system number>00/mdt/channelmonitorservlet

发送方COMMUNICATION CHANNEL:

cc_sender

接收方COMMUNICATION CHANNEL:

cc_receiver

9.双击生成的MESSAAGE ID可以看到进一步的详细信息,同时登录到PI的ABAP client通过事务代码SXI_MONITOR也可以看到关于每个message的详细信息。

分享到:
评论

相关推荐

    spring java图片上传源码.rar

    源码实现了图片上传功能,可供相关功能开发的小伙伴参考学习使用。

    新入职员工工作总结范文大全(篇).docx

    工作总结,新年计划,岗位总结,工作汇报,个人总结,述职报告,范文下载,新年总结,新建计划。

    本项目内容为《SpringBoot 2.X 基础教程》配套源码.zip

    提供的源码资源涵盖了安卓应用、小程序、Python应用和Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。

    IMG_20240426_195457.jpg

    IMG_20240426_195457.jpg

    培训看版.xlsx

    Excel数据看板,Excel办公模板,Excel模板下载,Excel数据统计,数据展示

    A Confidence-Guided Automated System for Non-emergency Calls.pdf

    A Confidence-Guided Automated System for Non-emergency Calls.pdf

    用于快速反馈控制律优化的梯度丰富机器学习控制matlab代码.zip

    1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    杭州电子科技大学数据结构数据结构讲义.pdf

    杭州电子科技大学,期末考试资料,计算机专业期末考试试卷,试卷及答案,数据结构。

    对保险业中人工智能的监管: 平衡消费者保护与创新.pdf

    对保险业中人工智能的监管: 平衡消费者保护与创新.pdf

    重庆大学电磁场原理10年考题(a卷)答案及评分标准.pdf

    重庆大学期末考试试卷,重大期末考试试题,试题及答案

    银行软件作业代码示例20240426

    震惊,师专男大竟然在夜深人静的夜晚写下了这些普通人都看不懂的东西,内容是...

    导航软件iApp源码V3+配置教程

    一款支持侧边导航栏的网页导航APP源码,风格简约为主,可以通过远程文档进行远程控制列表,浏览器拥有检测下载的功能。,配置较为简单,适合入门小白学习参考。 导航软件iApp源码V3+配置教程 配置教程在mian.iyu的载入事件里面

    基于CNN模型实现土壤湿度检测-数据集和完整代码.rar

    该数据集和完整代码主要实现《基于CNN模型实现土壤湿度检测》,适用于正在学习深度学习、神经网络以及计算机、农业自动化等相关专业的伙伴们。在现代农业和环境监测中,研究土壤湿度数据来预测未来的湿度趋势十分重要。资源中的CNN模型可能仍不够完善,大家可以继续修改完善,不断研究其他的内容。感谢大家的支持和交流,你们的支持也是我前进的十足动力!

    重庆大学数字电子技术试卷2007-2008(1)答案.pdf

    重庆大学期末考试试卷,重大期末考试试题,试题及答案

    mlab-upenn 研究小组的心脏模型模拟.zip

    1.版本:matlab2014/2019a/2021a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。

    【基于Springboot+Vue的Java毕业设计】银行账目账户管理系统项目实战(源码+录像演示+说明).rar

    【基于Springboot+Vue的Java毕业设计】银行账目账户管理系统项目实战(源码+录像演示+说明).rar 【项目技术】 开发语言:Java 框架:Spingboot+vue 架构:B/S 数据库:mysql 【演示视频-编号:305】 https://pan.quark.cn/s/8dea014f4d36 【实现功能】 用户信息管理,存取业务管理,公告信息管理,挂失信息管理,账户信息管理等

    年公司财务会计岗位工作总结(一).docx

    工作总结,新年计划,岗位总结,工作汇报,个人总结,述职报告,范文下载,新年总结,新建计划。

    智能机械装备制造信息化整体解决方案.pptx

    智能机械装备制造信息化整体解决方案.pptx

    杭州电子科技大学学生复习卷及部分答案.pdf

    杭州电子科技大学,期末考试资料,计算机专业期末考试试卷,试卷及答案,数据结构。

    Unity Asset Quantum Console v2.6.3

    Unity在打包后仍能看到控制台输出,甚至通过命令调用绑定好的函数,调试游戏的强大助手!

Global site tag (gtag.js) - Google Analytics