SAP MM学习笔记 - 豆知识05 - Customer Exit 实例,MM01上定义Customer Exit 来Check评估Class

news2024/9/19 10:06:32

上一章讲了一些MM模块的豆知识。

- MM01中设定的安全在库和最小安全在库

- MM01/MMSC/Customize自动 扩张物料的保管场所

- MM01中定义生产订单的默认入库保管场所

- VA01受注票中设定禁止贩卖某个物料

SAP MM学习笔记 - 豆知识03 - 安全在库和最小安全在库,扩张物料的保管场所的几种方法,定义生产订单的默认入库保管场所,受注票中设定禁止贩卖某个物料-CSDN博客

本章继续学习MM模块的豆知识。

1,MM01上定义Customer Exit 来Check评估Class

1-1,CMOD 扩张Project管理

Spro > Logistics > 品目Master > 扩张

点一下 实行 图标前面的那个图标

这样就显示了一下内容:

- 扩张点:MGA00001

- 组件:EXIT_SAPLMGMU_001

点一下Exit的链接,出来详细内容,我也没太看懂是啥意思,先跳过

a),登录扩张Project

点一下 执行图标以后,显示下面的画面(CMOD)

要建一个 SAP 扩张Project管理

输入

- Project:ZMM01

点登录按钮

b),扩张割当(分配)Exit(这里指MGA00001)

输入 内容说明,然后点 扩张割当 按钮

点 确定 按钮

输入

- Package:$TMP

然后点 保存

输入上面的Help里面显示的扩张点

- 扩张:MGA00001

c),有效化Component

点 Component,进行激活

点保存

选中 Function Exit,然后点 激活图标

这样就有效化(激活)完成了

d),写Customize Exit的Check代码

双击 Function Exit 可以进入Exit详细代码页

双击 ZXMG0U02,然后提示说要不要创建,当然要啊

然后就显示了下面的页面

点修改,然后写一段Check的代码上去

DATA lv_t023_bklas TYPE t023-bklas.

SELECT SINGLE bklas FROM t023 INTO lv_t023_bklas
  WHERE matkl = wmara-matkl.
 
IF sy-subrc EQ 0.
  IF wmbew-bklas NE lv_t023_bklas.
    MESSAGE w398(00) WITH 'Invalid valuation class' wmbew-bklas.
    RAISE APPLICATION_ERROR.
  ENDIF.
ENDIF.

这段代码是啥意思呢?

其实就是从 T023 表里取ValCl(评估Class)

这样看得清楚一些哈

品目Group 007 --》对应的是评价Class 3200

所以上面那段代码的意思是,从T023 里取评价Class值(比如 Group 007的话,就取到了 3200)

品目Master保存的时候,判定是否品目Master 中设定的评价Class值等于3200,不等的话就报错

这样就把 品目Group 与 评价Class进行了1:1绑定

TODO:品目Group 与 评价Class是可以在Customize里面设定的,我暂时没找到在哪,先放过

为了做演示,我把表数据直接修改了一下。

修改方法可以参照如下文章。

SAP MM学习笔记 - 豆知识04 - SE16N 如何在SAP中直接修改表数据(Edit any table in SAP)-CSDN博客

品目Group 001, 评价Class:7925

1-2,MM01 品目登录 里测试一下

品目 P-100-F1

选 基本Data1,2 和 会计1 视图,然后点确定

输入Plant 1000

a),确认品目Group

注意

- 品目Group:001

b),确认评价Class(不等于设定值的情况)

点到 会计1 Tab

- 评价Class:默认是7920

直接点Check,好像没啥反映

直接点 保存按钮则会出以下错误

Data転記中发生Error; 请选择"転記Error"。
Msg 番号 MG153

点上图的 Error(转记) 按钮

这次显示更新清晰详细的Message

告诉你 7920 这个评价Class 是不行的

c),确认评价Class(等于设定值的情况)

把评价Class改成 7925

然后再保存

这次就OK了

有关Customer Exit更详细的内容,可以参照下面链接

http://powerofstudy.blog.fc2.com/blog-entry-2359.html

1-3,无效化 Customer Exit

Spro > Logistics > 品目Master > 扩张

或直接 CMOD

点 变更

点 Component

点无效化 图标

无效化完成

1-4,总结一下

以上就是Customer Exit的用法,就是在标准功能里面,加点儿自己的代码进去。

自己可以控制它的有效化和无效化。

有关Customer Exit,可以参照如下文章:

SAP MM学习笔记7-SAP标准功能和Add-on之间的关系_fit gap analyse需求匹配分析-CSDN博客

而且上面只是借用了 T023 这个表做一下演示。

这是个SAP自带的表,有别的用途。

真正做User Exit的时候,一般会另外再建一个自定义的表,然后把初期数据批量导进去,

再按照上面的步骤做扩张。

更多文章请点击如下链接

https://blog.csdn.net/shi_ly/category_12216766.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1986974.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java使用opencv

一、windows安装opencv 下载地址:https://opencv.org/releases/ 下载后安装 本人安装目录 目录说明: build:基于windows构建 java:开发关注 x64、x86对应windows操作系统位数 sources:开源源码 二、java使用ope…

java之多线程篇

一、基本概念 1.什么是线程? 线程就是,操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。简单理解就是:应用软件中互相独立,可以同时运行的功能 2.什么是多线程? 有了多线…

高清无水印视频素材哪里找?分享几个热门的高清无水印素材网站

一个好的短视频离不开精彩的素材,但高清视频素材哪里找?今天小编就跟大家分享五个可以下载高清无水印短视频素材的网站,如果你还不知道从哪里可以下载高清视频素材,赶紧进来看看吧!~ 1、稻虎网 首推的是稻…

leetcode数论(​3044. 出现频率最高的质数)-质数判断

前言 经过前期的基础训练以及部分实战练习,粗略掌握了各种题型的解题思路。现阶段开始专项练习。 描述 给你一个大小为 m x n 、下标从 0 开始的二维矩阵 mat 。在每个单元格,你可以按以下方式生成数字: 最多有 8 条路径可以选择&#xff1…

宝兰德JVM参数查看及优化

最近生产环境宝兰德服务总是莫名奇妙的宕掉,很是搞人心态(幸好是集群服务器多,总有一台提供服务),初步排查是内存溢出导致,需要进行宝兰德JVM进行调整 调整宝兰德(BES)JVM参数通常涉…

Spring源码解析(29)之AOP动态代理对象创建过程分析

一、前言 在上一节中我们已经介绍了在createBean过程中去执行AspectJAutoProxyCreator的after方法,然后去获取当前bean适配的advisor,如果还不熟悉的可以去看下之前的博客,接下来我们分析Spring AOP是如何创建代理对象的,在此之前…

38. 115.不同的子序列,583. 两个字符串的删除操作,72. 编辑距离,编辑距离总结篇

确定dp数组以及下标的含义。dp[i][j]:以i-1为结尾的s子序列中出现以j-1为结尾的t的个数为dp[i][j]。确定递推公式。这一类问题,基本是要分析两种情况:s[i - 1] 与 t[j - 1]相等;s[i - 1] 与 t[j - 1] 不相等。当s[i - 1] 与 t[j -…

【屏驱MCU】RT-Thread 文件系统接口解析

本文主要介绍【屏驱MCU】基于RT-Thread 系统的文件系统原理介绍与代码接口梳理 目录 0. 个人简介 && 授权须知1. 文件系统架构1.1 虚拟文件系统目录架构 2. menuconfig 分析3. 代码接口分析3.1 DFS框架挂载目录3.2 【FAL抽象层】分区表和设备表3.3 如何将【文件路径】挂…

计算机毕业设计PySpark+Django考研推荐系统 考研分数线预测 中公考研爬虫 混合神经网络推荐算法 考研可视化 机器学习 深度学习 大数据毕业设计

《PySparkDjango考研推荐系统》开题报告 一、研究背景与意义 1.1 研究背景 随着社会对高学历人才需求的不断增加,研究生入学考试(考研)已成为众多大学毕业生追求深造的重要途径。然而,考研涉及的知识面广泛且复杂,考…

Unity补完计划 之Tilemap

本文仅作笔记学习和分享,不用做任何商业用途 本文包括但不限于unity官方手册,unity唐老狮等教程知识,如有不足还请斧正 1.Tilemap 是什么 Q:和 SpriteShape有什么区别? A:tilemap强项在于做重的复背景&…

产品经理-​桌面端、手机端、电视端、平板端在设计上的异同(29)

在互联网产品当中,产品形态,pc网页端,客户端,安卓,苹果端,小程序端等 不同的设备,交互设计、产品设计是不一样的,面对的用户群体不一样,产品的设计,规则也是不一样的 这个考查的是PM的交互设计知识,需要知道一般性的交互设计原则与各端设计差异 互联网的各端产品&am…

树莓派新版本在interface options中找不到camera选项

文章目录 问题原因: 操作方法: 1.系统升级 2. 安装libcamera 3. 测试拍照 4. 拍照和视频 5. 查看图片 问题原因: 版本问题,自2023.10之后的新版本中,树莓派去除了原先使用的picamera库,所以不能通过…

Unity补完计划之 Tile Palette

1.Tile Palette Creating a Tile Palette - Unity 手册 瓦片调色板(Tile Palette)是 Unity 引擎中用于在瓦片地图上进行绘制的工具。它允许您选择和管理颜色、纹理和瓦片,以便在游戏场景中创建地图、背景和其他2D元素 说白了,Ti…

win11启动IIS服务配置成web服务器·

为什么要将本地配置为 Web 服务器? 在 Web 开发过程中,将本地配置为 Web 服务器有诸多好处: 实时预览: 修改代码后,无需每次都上传到远程服务器,即可在本地浏览器中实时查看效果。 离线开发: 无需依赖网络连接&#x…

如何搭建一个圈子社区系统?开源社交陪玩交友圈子论坛帖子系统保姆级搭建教程!

整体部署流程如下: 1.获取源码/前后端分离,前端Uniapp vue2.0 后端thinkphp6(Gitee直达) 2.服务器安装宝塔(已有宝塔请安装环境,Nginx或者Apache/ php 7.3/ mysql 5.6 ) 3.进入宝塔添加网站&…

实验8-1-5 使用函数的选择法排序

本题要求实现一个用选择法对整数数组进行简单排序的函数。 函数接口定义: void sort( int a[], int n );其中a是待排序的数组,n是数组a中元素的个数。该函数用选择法将数组a中的元素按升序排列,结果仍然在数组a中。 输入样例: …

XFS超级块介绍-xfs_sb

XFS超级块介绍 与其他 Unix 文件系统一样,XFS 的超级块在文件系统的第一个扇区,它帮助解码文件系统。超级块占用每个 XFS AG 的前 512 个字节。主超级块是位于文件系统前面的 AG 0 中的超级块,其他 AG 中的超级块用于冗余。目前仅使用超级块…

leetcode-238. 除自身以外数组的乘积

题目描述 给你一个整数数组 nums,返回 数组 answer ,其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法,且在 O(…

【Nuxt】自定义插件和生命周期

自定义插件 方式一: app.vue // 创建插件(在app.vue中创建全局可以使用 而在某个页面中创建只有该页面可以使用) // 方式一: const nuxtApp useNuxtApp(); nuxtApp.provide("formDate", () > {return "2023-12-12"; }) nuxtAp…

vue相关

1,Object.defineProperty和Proxy区别 定义、优缺点、区别 Object.defineProperty:vue2中实现数据监听/响应式的核心API。 Object.defineProperty遍历监听(observer)vue对象中的所有属性:data,props,comp…