SAP 业务交易事件BTE(Business Transaction Event)
业务交易事件BTE
BTE是什么,当然不是BT的ERP, E文全称Business Transaction Event,业务交易事件,我们知道一般的增强(Tcode:SMOD|CMOD)依旧使用ABAP,BTE则可提供了RFC调用其它产品的可能(Tcode:FIBF),举一个检查物料主数据的实例说明BTE用法,简化为三个步骤.
第一步:建立附加产品(Tcode:BF24)
图1,建立产品ZMM01-2,选图1-[2]表示激活.
第一步:连接事件到产品(Tcode:BF34).
系统预定义了很多事件,00001250是保存物料主数据的事件,系统似乎并没有为物料主数据的维护设置增强而是留下了这个BTE,输入函数ZMM01_2_CHECK.
第三步:建立检查函数(Tcode:SE37).
你可以输入00001250*快速找到类似SAMPLE_INTERFACE+EVENT号的函数,Copy一个出来,如图3.
下面是一个限制某工厂只能输入某利润中心和不允许用户修改利润中心的参考代码.
DATA: I_MSG1(60) TYPE C, I_MSG2(50) TYPE C. * Never let user change profit center of material . if ( I_MARC_NEW-PRCTR <> I_MARC_OLD-PRCTR ) and ( I_MARC_OLD-PRCTR <> '' ) . CALL FUNCTION 'READ_CUSTOMIZED_MESSAGE' EXPORTING I_ARBGB = 'ZFI' I_DTYPE = '' I_MSGNR = '003' IMPORTING E_MSGTY = SY-MSGTY. CHECK E_MSGTY <> '-' . MESSAGE ID ' ZFI ' TYPE SY-MSGTY NUMBER '003' with 'Change Material profit center not allowed!' . ENDIF. IF ( I_MBEW_NEW-BWKEY = 'FRA1' AND I_MARC_NEW-PRCTR <> '9233110000' ). CALL FUNCTION 'READ_CUSTOMIZED_MESSAGE' EXPORTING I_ARBGB = 'ZFI' I_DTYPE = '' I_MSGNR = '002' IMPORTING E_MSGTY = SY-MSGTY. CHECK E_MSGTY <> '-' . I_MSG1 = 'FRA1 profit center should be 9233110000!'. CONCATENATE 'However,Your input is :' I_MBEW_NEW-BWKEY '&' I_MARC_NEW-PRCTR into I_MSG2 . MESSAGE ID ' ZFI ' TYPE SY-MSGTY NUMBER '002' with I_MSG1 I_MSG2. ENDIF. |
注:此处代码仅供参考。如果涉及多个工厂,可以使用case语分工厂一一检查业务范围和利润中心是否一致,消息号设置成可配置型的。
关于消息请参考如下:
关于消息,请看下一个小技巧-消息,介绍如何使用参考代码中使用到的消息类”ZFI”.
小技巧-消息
消息这词还用在比如PO,SO打印传真等所谓的output message,但是这节的消息则是指程序逻辑出现异常抛出的消息,有点类似其他开发工具的try..catch..finally 语句.
为了说明消息的意思,我也分几个部分阐述.
第一部分:定义和查看消息(Tcode:SE91).
使用Tcode SE91可自定义和查看系统的消息,
图1中建立了消息类ZFI,消息类相当于一个应用区域,如果消息使用了&符号,表示是在程序调用时可使用文本变量替代这符号.
第二部分:调用消息(Tcode:SE38).
调用消息的方法.
(1).可在程序Title中使用MESSAGE-ID加入消息类.
REPORTZMSGTEST1 MESSAGE-ID ZFI .
MESSAGE I001.
(2).在代码中指定消息类.
REPORTZMSGTEST2 .
MESSAGE I001(ZFI).
(3). 在消息类传输文本.
REPORT ZMSGTEST3 .
MESSAGE I002(ZFI) with ‘文本1’‘文本2’ .
或者
MESSAGEID ' ZFI ' TYPE 'I' NUMBER '002' with‘文本1’ ‘文本2’ .
消息的类型一般有以下几种
I:信息窗口 W:警告 E:错误 S:成功 A:终止程序.
(4).将消息设成为配置消息
PROGRAM ZMSGTEST4 .
CALL FUNCTION 'READ_CUSTOMIZED_MESSAGE'
EXPORTING
I_ARBGB ='ZFI'
I_DTYPE = ''
I_MSGNR = '0002'
IMPORTING
E_MSGTY =SY-MSGTY.
CHECK E_MSGTY <> '-' .
MESSAGE ID ' ZFI ' TYPE SY-MSGTY NUMBER '002' with ‘文本1’‘文本2’ .
3常用消息表格和各模块常用消息配置Tcode.
在消息配置中,Application Area和SE91的Message Class实际上是同一概念.
第三部分:配置消息(Tcode:OBA5|OMRM等).
(1).消息相关表格.
Table蕴藏着丰富的信息,看看消息相关表格
T100:系统能用到的消息都应该在此表中找到.
T160M :MM模块相关消息表,此表可完全直接维护.就是说只要记住它,MM的消息配置直接使用SE16就可以.
T100C: FI模块中用户自定义的消息,比如使用OBA5, OFMG等自定义的消息会写入此表,CO配置消息不在此表.
T100S:此表保存着允许用户更改的应用区域和消息号,一个简单实例,假设你删除了KI 005则在Tcode:OBA5中将再不能配置此消息.
此表也可直接维护.和T160M不同的是,你必须在SE16输入T100S按新建按钮 才可维护,这表是跨Client的.
T100U:哪个用户最后更改了消息,从此表能找到.
设置可配置消息
图2是一个合成图,现在要将自定义的消息类ZFI的几个消息设置成可配置的,输入表T100S,然后点击图2-[1]的新建按纽,也就是说设置可配置消息首先需要在T100S折腾一番。
图2-[3]表示ZFI-002|003消息允许配置的消息类型,选上图2-[4]”关闭”标志表示该消息能被关闭.
现在你就可以使用Tcode:OBA5设置消息ZFI 002和ZFI 003是错误警告还是关闭等,而函数READ_CUSTOMIZED_MESSAGE正是根据配置决定消息类型的.
(2).各模块常用消息相关Tcode
FI: OBA5|OFMG|OFPM
MM: OMRM|OKZZ|OMT4|OMCQ |O04C|
SD: OVAH
CO: OPR4_ACT|OPR4_CK|OPR4_CKML|OPR4_CKPF|OPR4_KKA|OPR4_KKP|OPR4_KKS|
OPR4_KKS1|OPR4_PPCOPP
其它:
OPR5|OPR1|OPR3|OPR6|OPR7|OPR8|OPR9|OPRCMFE|MSW1|MSW2
图3是OMRM配置后勤发票校验的消息的,可以在供应商主设计设置其发票校验是” 基于收货的发票验证”->自动带到PO->设置M8 504|M8081为错误消息,这样如果不企业未收到货三单不匹配将不能进行发票校验确定应付.
SAP 业务交易事件BTE(Business Transaction Event)相关推荐
- 【转载】BTEs业务交易事件初识
目录 一.认识BTE 二.查找BTE增强 三.BTE实现 四.已实现增强的查找 一.认识BTE BTE(Business Transaction Event)也称之为"业务交易事件" ...
- Business Transaction Events BTE 增强
BTE 介绍 BTEs Are enhancements that were developed for the Financial Accounting (FI) component BTEs Ha ...
- AppDynamics把业务交易跟踪扩展到SAP环境
Cisco下属应用智能和绩效管理供应商AppDynamics发布AppDynamics for SAP.新的面向SAP高级编程语言ABAP的代码级监控提供了客户体验的可视化,从数字化触点到至关重要的S ...
- SAP SD基础知识之特殊的业务交易
SAP SD基础知识之特殊的业务交易 一,紧急订单Rush Orders 紧急订单和现金销售是用在从工厂销售流程或者用于当客户需要求立即从仓库获得他们的货物时的销售凭证类型. 在立即交货的销售凭证类型 ...
- SAP物料凭证中的凭证类型交易/事件
物料凭证中的凭证类型决定是由于T-code配置对应的凭证类型以及凭证编码产生的 OMBA:定义相关事务执行产生的物料凭证类型 OMBT:为物料凭证类型分配对应的凭证编码范围,与物料编码分配相同 交易/ ...
- 【转】Dynamics 365中的事件框架与事件执行管道(Event execution pipeline)
本文介绍了Microsoft Dynamics 365(以下简称D365)中的两个概念,事件框架(Event Framework)与事件执行管道(Event execution pipeline). ...
- 业务规则管理(Business Rules Management,简称BRM)
企业的业务规则对绝大多数人来说都非常抽象,就算是企业的决策者也说不清自己的企业内部到底有多少业务规 则在使用.如何让企业规则与企业的数据信息一样成为企业的重要资产? 业务规则管理"复苏&qu ...
- 【转载】浏览器事件循环机制(event loop)
首先,本文转自https://juejin.im/post/5afbc62151882542af04112d 当我看完菲利普·罗伯茨的 javascript event loop的演讲的时候,就对于事 ...
- CRM User Status profile中Business Transaction字段的用途
有朋友问到User Status profile中Business Transaction字段的用途,如下图INPR, FINI所示. 实际上,这个字段作为一个桥梁,连接了User Status和Sy ...
最新文章
- 服务器硬盘SAS与SATA区别介绍
- 【Leetcode | easy】两数之和
- idea打开项目慢怎么办?
- 单片机c语言慧尾灯编码,(参考)基于单片机的智能尾灯开发文档.doc
- PHP调用tushare,python调用tushare获取沪股通、深股通成份股数据
- linux mysql失败_linux下登陆mysql失败
- mutable和volatile关键字
- Netrunner 2019.04 Rolling 版本发布
- 数据结构与算法快慢指针
- 在linux内核中修改TCP MSS值
- 实信号变成解析信号的实现方法
- NetWare 客户服务禁用了欢迎屏幕和快速切换恢复方法
- 被讨厌的勇气:共同体感觉
- android wifi 打印文件,Android中的wifi打印
- 基于原子哥开发套件,STM32应用开发的学习笔记
- JavaDay29 CSS
- SAP 第四代增强-BTE
- FPGM(Filter Pruning via Geometric Median)笔记
- python-匹配手机号-按号段-正则
- JavaSE【定制化】~ 基础篇
热门文章
- 龙芯电脑平台kubernetes集群编译及部署方案
- 我的世界java百度什么电脑玩好_【我的世界】为了在龙芯电脑上玩Minecraft(我的世界)我做了什么_玩得好游戏攻略...
- npm WARN deprecated har-validator@5.1.5: this library is no longer supportednpm WARN deprecated uui
- 前后端离线开发相关软件下载地址大全
- 搜狐号按作者火车头采集规则
- SLife 共享生活:去中心化的线下商业交易系统
- apmserv mysql5.1启动失败_APMServ Apache启动失败及MySQL5.1启动失败,请检查相关配置 解...
- 发明专利费用减缓需要哪些资料?
- 量化进阶——如何突破期货交易难点
- Cisco Packet Tracer基础命令操作以及组织网络实验