SAP开发框架系列之 自定义批次管理
点击蓝字 关注我们
一
前言
归纳总结是个好习惯,我们都值得拥有.
每一个业务的开发需求,都是一次归纳的契机.
根据业务特定的需求分析,是否可以概括出一个通用需求?
特定业务需求是否完全包含在这个通用需求中呢?
是否可以根据这个通用需求概括出一个通用处理模型?
该模型是否可以解决这一类的业务需求?
怎么用特定的语言(ABAP)开发这个模型?
怎么给业务最大的自由度去使用这个配置使用这个模型?
如果你是一个业务人员,带着这些问题去和你的开发沟通.(你毛病呀,半天就可以写完的程序,你想整一周?)
如果你是一个开发人员,带着这些问题去和需求提出者沟通(你找事呀,按我的需求做就完事了,要不你来写功能说明书?)
或者,你也会碰到志同道合的. 嗯,这个提议不错, 咱们一起来完善一下这个设计.
尝试更多的去理解业务,去归纳业务,用开发的思想去重建功能设计.
本文主要介绍一个自定义批次管理体系
二
自定义批次管理概述
SAP批次管理是一个成熟的解决方案. 启用后,可以精细的管理商品的每个批次信息,并且可以通过批次评估确定不同批次的成本.
但同时也给企业的业务操作带来巨大的挑战: 在商品出入库的每个环节都需要确定一个批次(出库环节可以通过系统自动执行批次确定,把交货单拆分到批次行),有时还需要根据批次拆分业务单据行. 实际仓库出库时,又不太可能按照批次实物拣配. 这又会给批次库存盘点带来麻烦.
所以在零售企业往往不建议启用系统标准批次管理功能.
但是企业实际管理时,有些业务又需要有批次数据支持,比如
供应商库存查询
供应商返利计算(基于销售计算对供应商的返利)
供应商库存补差(因为供应商降价引起的对零售企业的补偿)
...
为了解决这个矛盾,有了这个自定义批次管理体系的开发
三
自定义批次实现方式
定义一组表,用于记录采购订单/销售订单/交货单/商品凭证等附带的批次明细
定义表ZTMATDOC记录批次出入库明细
定义表ZTMCHB记录批次主数据
入库时,自动生成一个批次号,补充记录ZTMATDOC及ZTMCHB
出库时,按先进先出原则自动分配一个或多个批次号,补充记录ZTMATDOC.
构造视图ZVMCHB 通过ZTMATDOC的统计,形成批次库存
四
核心处理逻辑
在商品凭证保存时,根据配置,为每一个商品凭证行生成相应的批次行,这些批次行写入ZTMATDOC,如果必要,同时写入ZTMCHB.形成批次管理的核心数据.
针对不同的移动类型执行不同的处理逻辑
五
困难点
自定义批次管理的基本逻辑似乎并不复杂, 复杂的在于一些特殊的业务场景
比如移库移动类型301 系统会自动产生移入方的行. 移入方需要使用移出方分配的批次
比如调拨业务,出库方分配的批次需要传递到入库方使用.
比如盘盈业务:优先使用已经存在的批次.确实不存在再获取新的批次号
比如展示商品:子商品行自动使用父商品行的批次
比如冲销业务:使用原单批次信息
...
总之在一些特殊的处理细节处需要大量的总结分析与测试来完善逻辑.
六
与外部系统的传递
基本上所有单据传递中都需要附加传递批次信息,因此这些单据都会基于明细表,补充一个批次明细表.基于明细记录批次信息. 这些通过单据传递的批次信息要优先影响系统中的批次使用.
实际应用中, 最好能避免与外部系统交互批次信息. 由SAP自行按给定规则产生批次数据即可
七
总结
自定义批次管理是特定项目中产生的需求,是一个相对折衷的方案.
避免由于启用标准SAP批次功能对业务实际操作产生巨大影响,同时又为特定业务产生所需的批次数据.
在零售行业具体使用时,需要通过大量业务测试验证批次数据的准确性.
属于一个费力不讨好,吃饱了撑着的开发行为.
但这又确实是企业项目中的实际需求.
THE
END
约定
如果你对这篇文章感兴趣,请帮忙点赞,在看,分享.
(如果你真的喜欢这篇文章,请记得回来打个赏,作为支持我继续下去的动力,这是一个正反馈过程. 越多的人打赏,作者越有动力分享,读者就能享受更多的福利.毕竟打赏的金额富不了我,穷不了你,却能支持这个公众号长久发文.)
公众号 : syjf1976_abap
ABAP开发技巧
微信号 : 392077
公众号主群加入受限, 请扫码加入副群后,向管理员申请加入主群
SAP开发框架系列之 自定义批次管理相关推荐
- SAP开发框架系列之 自定义单据
前言 归纳总结是个好习惯,我们都值得拥有. 每一个业务的开发需求,都是一次归纳的契机. 根据业务特定的需求分析,是否可以概括出一个通用需求? 特定业务需求是否完全包含在这个通用需求中呢? 是否可以根据 ...
- sap系统中的batch_SAP 批次管理(Batch management)配置介绍
转自:https://blog.csdn.net/FDF9527/article/details/82629090?utm_medium=distribute.pc_relevant_t0.none- ...
- SAP开发框架系列之 自动单据
前言: 归纳总结是个好习惯,我们都值得拥有. 每一个业务的开发需求,都是一次归纳的契机. 根据业务特定的需求分析,是否可以概括出一个通用需求? 特定业务需求是否完全包含在这个通用需求中呢? 是否可以根 ...
- SAP开发框架系列之 快速翻译功能
前言: 归纳总结是个好习惯,我们都值得拥有. 每一个业务的开发需求,都是一次归纳的契机. 根据业务特定的需求分析,是否可以概括出一个通用需求? 特定业务需求是否完全包含在这个通用需求中呢? 是否可以根 ...
- SAP 批次管理(Batch management)配置介绍
批次是物料管理中的常见概念,特别是在化工.制药.快消等行业,由于生产工艺或材料的原因,不同批次的产品或原料,在具体的属性上有区别,或出于保质期.质量追溯等原因,需要对同一物料,不同批次的产品或原料进行 ...
- SAP 最详细的批次管理解释和配置过程
批次是物料管理中的常见概念,特别是在化工.制药.快消等行业,由于生产工艺或材料的原因,不同批次的产品或原料,在具体的属性上有区别,或出于保质期.质量追溯等原因,需要对同一物料,不同批次的产品或原料进行 ...
- SAP 批次管理(Batch management)
批次是物料管理中的常见概念,特别是在化工.制药.快消等行业,由于生产工艺或材料的原因,不同批次的产品或原料,在具体的属性上有区别,或出于保质期.质量追溯等原因,需要对同一物料,不同批次的产品或原料进行 ...
- SAP MM批次管理(2)批次主数据--大海
二.批次主数据 2.1批次主数据 为物料启用批次管理后,就可以使用批次功能了,在SAP系统中,批次与物料一样都是主数据,而且也有组织架构,批次的组织架构包括:物料.工厂.库存地点.可以使用事务代码MS ...
- SAP MM批次管理(2)批次主数据
二.批次主数据 2.1批次主数据 为物料启用批次管理后,就可以使用批次功能了,在SAP系统中,批次与物料一样都是主数据,而且也有组织架构,批次的组织架构包括:物料.工厂.库存地点.可以使用事务代码MS ...
最新文章
- Bit-Z CEO长顺入围2018中国经济潮流人物
- Calling JNI Functions with Java Object Arguments from the Command Line
- pytorch几种损失函数CrossEntropyLoss、NLLLoss、BCELoss、BCEWithLogitsLoss、focal_loss、heatmap_loss
- MySQL创建索引跳过redo_明明我建了索引,为什么sql执行的还是这么慢?
- OpenGL Subdivision Modes细分模式的实例
- P1272 重建道路
- 超级终端工具_【招商通信余俊团队】智能网联汽车发展提速,科技巨头跑步入场,有望成为新一代超级终端——招商通信周周谈(2020年第48周)...
- 【转载】关联分析中的支持度、置信度和提升度
- 用Windows XP自带的性能监视器测试瑞星2010性能(转)
- 一个不完全恢复的疑惑?
- python什么是交换算法_确定交换的算法
- Python内置的服务器的使用
- pat A1032:sharing 题解(简单静态链表)
- 深度学习中的优化算法如何理解--SGD
- 获取微信开放平台申请移动应用时的应用签名和应用包名
- java public aspect_ASPECT Java的使用
- matlab 空间后方交会,摄影测量空间后方交会.docx
- T32. High.最长有效括号
- 拜托,使用 Three.js 让二维图片具有 3D 效果超酷的
- 新课程盘古人工智能框架开发专题发布,智华欢迎读者学习!
热门文章
- 这批钛媒体90后已经瞎了、秃了、腰椎间盘突出了
- 马斯克畅想的“超级高铁”物理上可行,但面临三大工程挑战
- Python 在线多人游戏开发教程 Day05#石头剪刀布游戏
- matlab中的ica工具箱怎么使用吧,ica工具箱matlab
- 万卷书 - 欧洲的门户[The Gates of Europe]
- nokia6闹关机android,诺基亚首款安卓手机为何叫Nokia 6,原因喜人
- 个人看法---如何做一个视频聊天室?
- 网页制作期末大作业成品 HTML5+CSS大作业——简约个性高逼格博客(5页) web网页制作期末大作业模板
- 零基础学习java第一课(适合无基础的非科班生)
- 推荐:俞敏洪的一分钟励志演讲