控制ERP物料主数据通过Middleware传往CRM
先说一下优化过滤的必要性。
CRM物料主数据一百多万。
感谢MDM或者相关的系统,每天通过接口更新的不知道什么东西,每天数百万的物料更新队列进入CRM。
CRM系统被搞死了好几次。
然后各种优化报表,程序。。。
最后有几个链接缓慢的自开发接口,背锅了。。。
好吧,先不管那些了。现在在ERP做一个过滤设置,只有某些修改的物料主数据才允许传到CRM。
1,查看SM30(TBE24找对增强ID,TPS34找到增强函数或自己写)
2,做配置表,表+字段,控制哪些表检查哪些字段


3,增强
"物料数据库同步过滤MARA,MAKT,MARM,MVKE "CRM抽数不需要走此逻辑,否则会堵住队列
IF I_OBJ_NAME = C_MATERIAL AND sy-uname <> 'RFC_CRM'."物料bdoc
DATA:GW_MARA TYPE MARA,
GW_MAKT TYPE MAKT,
GW_MARM TYPE MARM,
GW_MLAN TYPE MLAN,
GW_MVKE TYPE MVKE,
GT_006 TYPE TABLE OF ZCRMT0006,
GW_006 LIKE LINE OF GT_006.
FIELD-SYMBOLS:<OLD> TYPE ANY,
<NEW> TYPE ANY,
<MAKT> TYPE MAKT,
<MVKE> TYPE MVKE,
<MLAN> TYPE MLAN,
<MARM> TYPE MARM.
E_DO_NOT_SEND = 'X'."清除发送标记
SELECT * INTO TABLE GT_006 FROM ZCRMT0006.
LOOP AT T_INT_TABLES INTO LS_INT_TABLES.
CHECK E_DO_NOT_SEND IS NOT INITIAL.
CASE LS_INT_TABLES-TABNAME.
WHEN 'MARA'.
ASSIGN LS_INT_TABLES-DATA TO <FS_MARA> CASTING.
SELECT SINGLE * INTO GW_MARA FROM MARA WHERE MATNR = <FS_MARA>-MATNR.
IF SY-SUBRC = 0.
LOOP AT GT_006 INTO GW_006 WHERE TABNAME = LS_INT_TABLES-TABNAME.
IF E_DO_NOT_SEND IS NOT INITIAL.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE <FS_MARA> TO <NEW>.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE GW_MARA TO <OLD>.
IF <NEW> <> <OLD>.
E_DO_NOT_SEND = ''.
ENDIF.
ENDIF.
ENDLOOP.
ELSE.
E_DO_NOT_SEND = ''.
ENDIF.
CLEAR:GW_MARA.
WHEN 'MARC'.
WHEN 'MAKT'.
ASSIGN LS_INT_TABLES-DATA TO <MAKT> CASTING.
SELECT SINGLE * INTO GW_MAKT FROM MAKT WHERE MATNR = <MAKT>-MATNR AND SPRAS = <MAKT>-SPRAS.
IF SY-SUBRC = 0.
LOOP AT GT_006 INTO GW_006 WHERE TABNAME = LS_INT_TABLES-TABNAME.
IF E_DO_NOT_SEND IS NOT INITIAL.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE <MAKT> TO <NEW>.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE GW_MAKT TO <OLD>.
IF <NEW> <> <OLD>.
E_DO_NOT_SEND = ''.
ENDIF.
ENDIF.
ENDLOOP.
ELSE.
E_DO_NOT_SEND = ''.
ENDIF.
CLEAR:GW_MAKT.
WHEN 'MARM'.
ASSIGN LS_INT_TABLES-DATA TO <MARM> CASTING.
SELECT SINGLE * INTO GW_MARM FROM MARM WHERE MATNR = <MARM>-MATNR AND MEINH = <MARM>-MEINH.
IF SY-SUBRC = 0.
LOOP AT GT_006 INTO GW_006 WHERE TABNAME = LS_INT_TABLES-TABNAME.
IF E_DO_NOT_SEND IS NOT INITIAL.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE <MARM> TO <NEW>.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE GW_MARM TO <OLD>.
IF <NEW> <> <OLD>.
E_DO_NOT_SEND = ''.
ENDIF.
ENDIF.
ENDLOOP.
ELSE.
E_DO_NOT_SEND = ''.
ENDIF.
CLEAR:GW_MARM.
WHEN 'MVKE'.
ASSIGN LS_INT_TABLES-DATA TO <MVKE> CASTING.
SELECT SINGLE * INTO GW_MVKE FROM MVKE WHERE MATNR = <MVKE>-MATNR AND VKORG = <MVKE>-VKORG AND VTWEG = <MVKE>-VTWEG.
IF SY-SUBRC = 0.
LOOP AT GT_006 INTO GW_006 WHERE TABNAME = LS_INT_TABLES-TABNAME.
IF E_DO_NOT_SEND IS NOT INITIAL.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE <MVKE> TO <NEW>.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE GW_MVKE TO <OLD>.
IF <NEW> <> <OLD>.
E_DO_NOT_SEND = ''.
ENDIF.
ENDIF.
ENDLOOP.
ELSE.
E_DO_NOT_SEND = ''.
ENDIF.
CLEAR:GW_MVKE.
WHEN 'MLAN'.
ASSIGN LS_INT_TABLES-DATA TO <MLAN> CASTING.
SELECT SINGLE * INTO GW_MLAN FROM MLAN WHERE MATNR = <MLAN>-MATNR AND ALAND = <MLAN>-ALAND.
IF SY-SUBRC = 0.
LOOP AT GT_006 INTO GW_006 WHERE TABNAME = LS_INT_TABLES-TABNAME.
IF E_DO_NOT_SEND IS NOT INITIAL.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE <MLAN> TO <NEW>.
ASSIGN COMPONENT GW_006-FIELDNAME OF STRUCTURE GW_MLAN TO <OLD>.
IF <NEW> <> <OLD>.
E_DO_NOT_SEND = ''.
ENDIF.
ENDIF.
ENDLOOP.
ELSE.
E_DO_NOT_SEND = ''.
ENDIF.
CLEAR:GW_MLAN.
WHEN OTHERS.
ENDCASE.
ENDLOOP.
ENDIF.
控制ERP物料主数据通过Middleware传往CRM的更多相关文章
- SAP物料主数据的屏幕字段控制,必输,隐藏
http://www.cnblogs.com/275147378abc/p/5699077.html 1.事务码MM01,把物料组设为选填字段. 2.找到物料组的屏幕字段. 3.在后台根据屏幕字段找到 ...
- 物料主数据批导bapi
创建物料主数据,根据模板不同批导原材料,半成品,成品.可根据实际需求对字段进行增删. report zmmr_bapi_mm01 no standard page HEADING. type-POOL ...
- SAP MM 物料主数据采购视图中的字段'Var. OUn'的作用?
SAP MM 物料主数据采购视图中的字段'Var. OUn'的作用? 物料主数据采购视图里有一个字段,叫做'Var. OUn'的, 如下图: 这个字段,笔者之前所参与的项目里,从来没有用过.所以,笔者 ...
- SAP MM01 创建物料主数据 [关注公众号后回复MM01获取更多资料]
操作内容 物料主数据,适用于所有有物料编码物料相关信息的系统维护 业务流程 新项目设计冻结后—M公司 PD用-物料编码申请表D-BOM Material Number Application部门内部 ...
- PP主数据-物料主数据
一.PP物料主数据:PP的物料主数据,是对应到系统的组织架构的,不同的组织层次,都有各自的主数据需要创建. (1),一般数据:一般数据是在集团层面的主数据,主要包括:物料编码.物料描述.辅助计量单位以 ...
- SAP MM 物料主数据MRP2 视图Rounding Value字段
SAP MM 物料主数据MRP2 视图Rounding Value字段 如下物料号,MRP2视图中,维护了rounding value字段值为50. MRP type :PD Lot size:EX ...
- SAP MM 物料主数据MRP2 视图’Minimum Lot Size’字段
SAP MM 物料主数据MRP2 视图’Minimum Lot Size’字段 如下物料号,MRP2视图中,维护了最小采购量为500. MRP type : PD Lot size: EX Minim ...
- SAP MM MM17里不能修改物料主数据'Purchasing Value Key'字段值?
SAP MM MM17里不能修改物料主数据'Purchasing Value Key'字段值? 记得在D项目上线之前数据导入系统之后,业务提出一些物料采购视图里的’Purchasing value k ...
- 「SAP 技术」SAP MM 物料主数据利润中心字段之修改
SAP MM 物料主数据利润中心字段之修改 近日,收到业务部门报的一个问题,说是MM02去修改物料的利润中心字段值,系统报错说物料库存存在,不让修改. 笔者查询了该物料的库存,当期库存并不存在.MMB ...
- 【MM系列】SAP MM-模块物料主数据简介
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP MM-模块物料主数据简介 ...
随机推荐
- ffmpeg合并时音画不同步问题及音频软编码实现记录
最近因为耳机3.5mm接口的一些干扰问题,舍弃了之前的接入方式,需要重新实现网络音频流的接入,在这个过程中遇到了一些问题,特来记录一下~ 一.网络音频流的接入 这个音频流来源各不相同,我这里是udp广 ...
- 2D小游戏--猜对应卡牌(unity)
博客地址:https://www.cnblogs.com/zylyehuo/ 项目名称 guess_card_game 参考源码链接: https://www.manning.com/books/un ...
- picoctf general skills-easy 部分题目详解(1)
实验介绍: ctf竞赛(Capture The Flag)是网络安全技术人员代替真实攻击,比拼技术的竞赛. 又名夺旗赛,是以拿到flag为目标的比赛. picoctf上的题目比较适合新手练习. 但是注 ...
- 交换机批量配置生成器(SecureCRT vbs脚本)
交换机批量配置生成器(SecureCRT vbs脚本) QQ交流群:(4817315) 一.工具介绍 本工具主要是针对简化网络工程师重复繁琐的工作而开发.工具只是将重复工作通过自己配置生成脚本代码来执 ...
- 基于C#的学生社团管理系统(简单基础版)
前言 该系统为个人独立编写测试,也算自己的孩子吧,虽然基础功能简单但是也为了大家能有个可以借鉴,可以改写的模版使用,我就写个博客让大家参考,但是拒绝搬运售卖. * 正式介绍 该系统基于C#开发,使用V ...
- 关于ASCII码的一些信息(转载自https://blog.csdn.net/na_tion/article/details/50148883)
ASCII码分基本表(128个字符,从00000000到01111111).扩展表(256个字符,从00000000到11111111)和压缩表(64个字符),我们经常用的是128个的基本表,而在一些 ...
- REST API从木愣到够呆
目前准备写一个API服务,遵循REST规范,因为自己也是第一次接触这玩意,所以就以自我的认知和理解过程来记录,留爪. ##在REST里什么叫资源? 拿数据表为例: 现在有三张表:(此表非彼婊) sch ...
- STM32 DMA中的DMA_BufferSize和DMA_MemoryDataSize
示例代码1 采集2通道ADC数据 查看代码 extern uint16_t ADC3ConvertedValue[2]; /* DMA2 Stream0 channel2 配置 *********** ...
- public void add(int index, E element)的方法源码分析
public class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess ...
- python爬虫爬取B站视频字幕,简单的数据处理(pandas将字幕写入到CSV文件中)
上文,我们爬取到B站视频的字幕:https://www.cnblogs.com/becks/p/14540355.html 这篇,讲讲怎么把爬到的字幕写到CSV文件中,以便用于后面的分析 本文主要用到 ...