CRM中间件里的发布-订阅者模式

从事务码SMW01里能观察到一个BDOC可能被发送往不止一个目的site去,比如下图所示的5个site都会收到该site,而高亮显示的SMOF_ERPSITE代表ERP系统QI3的client 504会接收到这个BDOC。

所以上图列表里的site是从哪里读取出来的?

以BDOCPRODUCT_MAT为例,在视图SMW3FDBDOC里维护回调函数:

第一个回调SMOH_REPLICATION_WRAPPER_MSG负责决定需要从CRM将该BDOC发送到哪些site去。

这个回调是自动生成的:

在我的系统里,一共决定出了有6个site需要接收:

上图的ABAP代码里使用了guid A17123B82C2DD5118BC8080006277F8D来查询表smohsubsit,那么这个guid到底指什么东西?

可以在表SMOHPUBL里查询到guid对应的对象描述:Product Materials(MESG)

到这里我们发现它就是我们熟悉的在事务码SMOEAC里为某个site订阅它希望监听的众多对象之一。如下图,QI3/504的site注册了"Product Materials(MESG)"的发布,意味着一旦CRM的Product发生了修改,对应的BDOC就会发送到QI3/504.

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏陈树义

高效开发技巧:为什么你下载Git项目这么慢?

笔者所在公司采用的是 GitLab 进行版本管理,但许多同事下载 Git 项目的路径是这样的: 打开浏览器 -> 输入网址 -> 查找项目地址 -> 复制项目...

3454
来自专栏BeJavaGod

nginx + fastDFS 设置开机自动启动

由于在服务器上有太多的软件 不可能每次启动都要重新启动服务吧(每晚断电。。。必须重启电脑) 1 vim /etc/rc.d/rc.local 添加下列脚本 1...

3495
来自专栏用户2442861的专栏

每天一个linux命令(61):wget命令

http://www.cnblogs.com/peida/archive/2013/03/18/2965369.html

632
来自专栏运维

CentOS 5至CentOS 5.8 YUM 源

本源是http://mirrors.163.com的,也可用http://centos.ustc.edu.cn/的,

1812
来自专栏云计算教程系列

如何在Ubuntu 14.04上安装MySQL

MySQL是一个开源数据库管理系统,通常作为流行的LAMP(Linux,Apache,MySQL,PHP / Python / Perl)堆栈的一部分来进行安装...

1541
来自专栏从零开始学自动化测试

Selenium2+python自动化72-logging日志使用

前言 脚本运行的时候,有时候不知道用例的执行情况,这时候可以加入日志,这样出现问题后方便查阅,也容易排查哪些用例执行了,哪些没有执行。 一、封装logging模...

3035
来自专栏网络

CobaltStrike团体服务器部署并后台运行

大家好,我是你们的老朋友Alex。Cobaltstrike的部署安装很简单,但是在实际使用中出现了问题。我把团队服务器放在ECS上,出现了两个问题:1.客户端无...

2226
来自专栏跟着阿笨一起玩NET

用SoapUI进行Webservice的性能压力测试

转载:http://www.cnblogs.com/fnng/archive/2011/08/11/2135440.html

1961
来自专栏铭毅天下

干货 | Elasticsearch 集群健康值红色终极解决方案

题记 Elasticsearch当清理缓存( echo 3 > /proc/sys/vm/drop_caches )的时候,出现 如下集群健康值:red,红...

5958
来自专栏破晓之歌

Redis安装和初步使用 原

获取安装包:https://github.com/MSOpenTech/redis

1352

扫码关注云+社区