首页 > 其他分享 >汉得PI&PO教材-Adapter使用-实例9-基于PO(PI)的IDOC发送返回机制V2.1

汉得PI&PO教材-Adapter使用-实例9-基于PO(PI)的IDOC发送返回机制V2.1

时间:2024-04-25 11:22:05浏览次数:15  
标签:.. 建立 Adapter 发送 IDOC MES PI PO

 

汉得SAP技术文档

基于PO/PI的IDOC发送返回机制

 

 

 

 

 

基于PO/PI的IDOC发送返回机制     

 

 

 

 

 

 

 

 

 


仅限汉得内部使用

作者:吴流滨

版本:21

日期:2017-02-19


图标

 

图标

含义

 

警告

 

示例

 

注释

 

建议

 

语法

 

外部处理

 

可选业务处理或决定

 

 

排版惯例

 

字体风格

描述

Example text

出现在屏幕上的单字或字符。包括字段名、屏幕标题、按钮以及菜单名、路径和选项。

到其它文档的交叉引用。

Example text

正文文本中强调的字或词组,图形和表格的标题。

EXAMPLE TEXT

系统中元素的名称。包括报表名、程序名、事务代码、表名和正文文本中嵌入的编程语言关键字,如 SELECT 和 INCLUDE。

Example text

屏幕输出。包括文件和目录的名称及其路径、消息、源代码、变量和参数的名称以及安装工具、更新工具和数据库工具的名称。

EXAMPLE TEXT

键盘上的按键。例如,功能键(如F2)或ENTER键。

Example text

用户输入原文。完全如文档所示输入这些单字或字符至系统中。

<Example text>

可变用户输入。尖括号表示应使用适当的输入替换括号中的单字和字符。


 

目录

一、发送返回机制简单说明.. 4

1、发送返回流程.. 4

2、开发IDOC发送程序.. 4

3、统一IDOC发送监控报表.. 4

4、效果图.. 4

二、自定义开发IDOC及基础配置.. 6

1、SALE定义逻辑系统.. 6

2、SM59创建RFC TCP/IP连接.. 7

3、WE31创建段类型.. 9

4、WE30创建IDOC类型.. 10

5、WE81定义消息类.. 12

6、WE82把基本类型分配给消息类型.. 12

7、BD64分配模型视图.. 13

8、WE21检查端口.. 15

9、WE20调整发送端.. 15

三、IDOC发送例子程序.. 16

四、PO的IR配置流程(MES) 17

1、IR导入软件组件.. 17

2、导入IDOC和RFC. 19

3、MES目录下的配置.. 23

3.1、建立文件夹.. 23

3.2、建立外围系统的ED.. 24

3.3、建立接收方的SI 26

3.4、建立接受返回消息的SI 27

4、ERP目录下的配置(MES) 27

4.1、建立发送方的MM.. 27

4.2、建立接收返回消息的MM.. 28

4.3、建立发送方的OM.. 30

4.4、建立接受返回消息的OM.. 31

五、PO 中ID 的配置流程(MES) 32

1、建立PI到MES的CC. 32

2、建立SAP到PI的CC. 34

3、建立发送方的IC. 34

4、建立MES到PI的CC. 37

5、建立接受返回消息的IC. 38

六、物料主数据发送到CRM配置.. 41

七、附录.. 41

 


一、发送返回机制简单说明

1、发送返回流程

ERP

PO

PO

 

THIRD

 

IDOC

WS

WS

RFC: ZIDOC_MSG_RETURN

 

 

 

 


           

 

 

ERP系统IDOC形式将数据发送至PO,同时PO会添加唯一消息号MSGID,系统标识SYSID,IDOC号码DOCNUM三个字段消息后分发至各个外围系统,外围系统接收时,除了业务数据,也必须要有ZID0C_MSG传入结构,外围系统以WebService的方式接收,并以固定结构ZIDOC_MSG返回消息,所以,外围系统传入传出都需要包含结构ZIDOC_MSG。

2、开发IDOC发送程序

下面步骤二有详细配置流程,IDOC发送程序要做到可以后台增量发送,手工发送处理。同时,需要把IDOC发送信息记录到表ZIDOC_MONI

3、统一IDOC发送监控报表

所有的IDOC发送情况均可以在报表ZIDOC_MONI查看,并可以对IDOC进行手工重发,报表数据主要来源两张表,表ZIDOC_MONI主要是ERP发送IDOC数据情况,表ZIDOC_MONI_R是接收外围系统的返回的的消息。

4、效果图

可以实现一发多效果,即sap发送到多个外围系统,并实现对外围系统返回数据的监控。下面以物料主数据下发到CRM,MES为例。

选择要发送的物料

 

首先可以看到SAP发送情况

 

刷新后,可以看到数据已经传到CRM和MES,并且已经返回各自系统消息

 

 

二、自定义开发IDOC及基础配置

1、SALE定义逻辑系统

 

 

2、SM59创建RFC TCP/IP连接

 

 

tcode smgw可以看到目前系统注册的服务

 

 

 

3、WE31创建段类型

系统的段类型以E1开头

自定义段类型以Z开头

创建段类型后系统会自动创建E2或者Z2的段定义

 

 

 

4、WE30创建IDOC类型

 IDOC类型是IDOC文件的结构定义和说明,根据不同的传输格式来定义IDOC类型,需要把刚才创建的段类型挂在IDOC类型下面

 发布后,该版本的IDOC结构无法更改,如要更改需取消发布,更改后再次设置版本,一个IDOC发送程序对应一个基本类型。

 

 

 

 

 

5、WE81定义消息类

 

6、WE82把基本类型分配给消息类型

释放是we31里面设置释放的版本750

 

 

7、BD64分配模型视图

 

 

 

 

 

8、WE21检查端口

 

9、WE20调整发送端

 

 

 

 

三、IDOC发送例子程序

交货单发送程序名称,ZIDOC_MM_001。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

四、PO的IR配置流程(MES)

1、IR导入软件组件

前提 : JAVA JDK 8.0版本以上


输入PI 的网址HTTP://PODEV1:50000/DIR/START/INDEX.JSP,打开ID和IR

导入软件组件Software component

选中一个软件组件点击NEW.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

点击display

 

选中sc_mes后,点击IMPORT

 

2、导入IDOC和RFC

在ERP软件组件下导入IDOC ZPO_MARA。选中IDOC点击IMPORT OF SAP OBJECTS

 

 

 

 

  填入IP地址,系统实例号,用户名和密码

 

IDOC点击CONTINUE

选中

选择FINISH,激活就完成IDOC导入了

 

导入返回消息接受的RFC ZIDOC_MSG_RETURN,选中RFC右键点击 IMPORT OF SAP OBJECTS

 

填入APPLACATION SERVER 、SYSTEM NUMBER 用户名和密码,点击CONTINUE

 

展开RFC ,并填入ZIDOC_MSG_RETURN 回车就能找到RFC,

 

点击CONTINUE 后点击finish ,激活RFC。

 

 

3、MES目录下的配置

3.1、建立文件夹


在软件组件MES下建立命名空间http://DANZ.cn/mes/zIDOC_mm_001和文件夹IDOC2SOAP2RFC,方便管理。

建立命名空间需要输入namespace名称,点击create 后激活

 

 

建立文件,输入文件名后点击create ,激活

 

3.2、建立外围系统的ED

在刚才建立的IDOC2SOAP2RFC文件下建立EXTERNAL DEFINITION ,下面简称(ED),邮件文件夹点击创建

 

选择一级菜单项的INTERFACE OBJECTS 中的EXTERNAL DEFINITION,填入ED的名称后点击create.

 

导入MES提供给我们的WSDL

 

点击保存后激活

 

 

3.3、建立接收方的SI

创建外围系统接收方(reveiver)SERVICE INTERFACE,填入名称,下面简称SI.

 

3.4、建立接受返回消息的SI

同理建立接受返回消息的SI,并激活刚才建立的SI.

 

4、ERP目录下的配置(MES)

4.1、建立发送方的MM

建立命名空间 http://danz.cn/erp/zIDOC_MM_001和文件夹IDOC2SOAP2RFC,由于物料数据发送多个系统,在IDOC2SOAP2RFC下建立MES文件夹存放到MES的配置.

 

在MES文件夹下建立发送方的MESSAGE MAPPING 以下简称MM

 

对应开发申请将字段对应起来,将SAP字段名和MES字段名用线连接起来,保存并激活,

 

4.2、建立接收返回消息的MM  

返回方的MM一般只存在几个字段,将关系一一连接起来,保存并激活

 

 

 

 

 

 

 

 

 

 

 

 

 

4.3、建立发送方的OM

建立发送REQUEST方向的OPERATION MAPPING 以下简称OM

 

 

 

 

 

 

 

 

 

 

4.4、建立接受返回消息的OM

同理建立接收返回消息用的OM.

 

填入箭头指向值后保存并激活,至此IDOC发送到MES IR的配置

 

 

 

 

 

 

 

 

五、PO 中ID 的配置流程(MES)

前提:如果ID 里面没有MES业务系统,需要在SLD建立业务系统并在ID中导入

在ERP目录下建立MES文件夹,在MES文件夹下建立ZIDOC_MM_001文件夹,在ZIDOC_MM_001文件夹下建立REQUEST RESPONSE文件夹.

 

1、建立PI到MES的CC

建立PI到MES的通讯通道COMMMUNICATION CHANNEL,下面简称CC.

 

点击create

 

 

 

 

 

 

MODULE页签下同步异步桥配置如下

 

2、建立SAP到PI的CC

SAP到PI的CC可以共用,一个PI系统配置一个即可.

 

3、建立发送方的IC

建立集成配置 INTEGRATED CONFIGURATION,以下简称IC,填入参数点击create.

 

在集成配置第一个页签下(INBOUND PROCESSING)选择SAP到PI的通讯通道

 

第二个页签RECEIVER下选择业务系统MES

 

第三个页签RECEIVER INTERFACE 选择 MES的SI

 

第四个页签选择PI到MES的通讯通道,点击保存激活.

 

 

4、建立MES到PI的CC

建立返回消息MES到PI的通讯通道,填入值后,选择SOAP协议,MESSAGE PROTOCOL选XI3.0,保存并激活

 

 

5、建立接受返回消息的IC

在RESPONSE文件夹下建立MES返回消息接受的集成配置

 

 

第一个页签下inbound processing选mes到PI的通讯通道,

 

第二个RECEIVER页签选择,BS_ED1_300 SAP 业务系统

 

在第三个页签(RECEIVER INTERFACES)选择MES返回消息的SI.



第四个页签选择PI到SAP的通讯通道

 

至此。IDOC发送物料组数据到MES的ID配置完成.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

六、物料主数据发送到CRM配置

物料主数据发送到MES和发送到CRM配置基本一样,基于发送到CRM需要带HEADER,在同步异步桥配置有一定区别.

 

七、附录

1、针对目前遇到问题,在创建MM连线的小总结.

(1)常量连接到对方,选择FUNCTIONS 中的CONSTANTS

 

 

 

 

 

 

然后点击常量输入值后连接到对方字段即可.

 

 

(2)停用时间yyyyMMdd 格式转换成MM/dd/yyyy

 

 

 

(3) 一对多 USEONEASMANY,用于我们在表头的字段需要传到他们的行项目中.

 

标签:..,建立,Adapter,发送,IDOC,MES,PI,PO
From: https://www.cnblogs.com/ZJY-1314/p/18157216

相关文章

  • 汉得PI&PO教材-Adapter使用-实例1 file2file V1.0
    汉得PI&PO教材系列   Adapter使用-实例1:File2File         仅限汉得内部使用 作者:汉得顾问版本:1.0日期:2017-02-01图标 图标含义 警告 示例 注释 建议 语法 外部......
  • 汉得PI&PO教材-Adapter使用-实例2 soap2rfc V1.0
    汉得PI&PO教材系列   Adapter使用-实例2:SOAP2RFC         仅限汉得内部使用 作者:戴瑞亭版本:1.0日期:2017-03-01图标 图标含义 警告 示例 注释 建议 语法 外部处......
  • 前端调用DRI后端API出现跨域资源共享(CORS)问题解决办法
    目录1.引言2.跨源资源共享和实现方法3.在Django项目中配置django-cors-headers库Reference1.引言在进行后端API开发时,有时会遇到“跨域资源共享(CORS)请求...被阻止“的错误,如图1所示。本文讲解如何在使用DRF(DjangoRESTFramework)的后端API开发项目中解决这个问题。Ac......
  • Poco框架实操:获取节点属性的高效技巧(一)
    此文章来源于项目官方公众号:“AirtestProject”版权声明:允许转载,但转载必须保留原链接;请勿用作商业或者非法用途一、前言上期推文我们介绍了PocoUI树下的节点关系,以及通过节点关系去寻找我们所需要节点的方法,那么本周我们来分享一下,当我们寻找到所需要节点后,能获取到什么信......
  • Group Theory-Burnside-Polya
    注意:博客园渲染不等号有点问题,如果你看到一个等号右下方飘着一根杠的话,那玩意其实是不等号,就像这样:\(\neq\)。群论/Burnside引理/Polya定理学习笔记。这是真的边学边记抄,根本记不住,看得昏昏欲睡的。我现在知道有什么东西是比062还抽象的了,抽象代数你抽象死我了。群......
  • 使用 NestJS 和 qrcode.js 创建 QR 码生成器 API
    前言QR码(QuickResponseCode)是一种二维码,于1994年开发。它能快速存储和识别数据,包含黑白方块图案,常用于扫描获取信息。QR码具有高容错性和快速读取的优点,广泛应用于广告、支付、物流等领域。通过扫描QR码,用户可以快速获取信息和实现便捷操作,为现代生活带来便利。在本教程中,小编......
  • Appium控件交互策略:优化自动化测试效率的关键方法
    简介与Web元素操作一样(参考SeleniumWeb元素操作),定位到APP控件元素后,可以对控件进行一系列的操作,实现与APP交互,比如点击、文本输入、元素属性获取等。控件交互常用方法常见操作点击方法element.click()。输入操作element.send_keys('appium')。清除操作element......
  • WPF 触摸下如何给 StylusPointCollection 添加点
    本文告诉大家如何在触摸下给WPF的StylusPointCollection添加新的点在自己默认创建的StylusPointCollection里面添加点是十分简单的,如以下代码,可以非常简单添加到集合StylusPointCollectionstylusPointCollection=newStylusPointCollection();stylus......
  • POI2012SQU-Squarks
    POI#Year2012#数学考虑如果将\(x_i\)和\(sum_i\)都排序,那么\(sum_1=x_1+x_2\),\(sum_2=x_1+x_3\)考虑枚举一个\(sum_i=x_2+x_3\),此时就可以确定\(x_1,x_2,x_3\)假设当前确定到\(i\),将已经确定的\(x_i\)组成的\(sum\)去掉,剩下的最小的\(sum\)一定为\(x_1+x_{......
  • POI2012ROZ-Fibonacci Representation
    POI#Year2012#数学贪心的每次选择最接近的两个数,\(x=min(x-fib_{i-1},fib_i-x)\)//Author:xiaruizeconstintN=2e5+10;vector<int>vec;intn;voidsolve(){ intres=0; cin>>n; while(n) { autoit=upper_bound(ALL(vec),n); n=min(n-(......