多维表格:如何计算MRP净需求

古哥计划
古哥计划 Lv.2 潜力创作者KVP

Lv.2潜力创作者

昨天我们完成了系列文章中第17章的内容:为实现从“排产计划”到“物料准备”的闭环,启动净需求计算模块的设计,首先复制“MRP毛需求分解明细”表并重命名为“MRP净需求分解明细”,继承其BOM展开能力,同时明确系统暂支持10,000行以内的分解规模;随后将数据源由“MRP计划产品明细”切换至“MPS自动排程”,确保需求计算基于已确认的生产计划,并对所有字段引用进行同步更新,以“编号=编号”为关联条件,保障数据一致性;最后,为支持后续库存扣减逻辑,新建“净需求计算”视图,并按“子件编码升序+开工时间升序”进行双条件排序,实现物料集中与时间优先的排列结构,为按物料汇总、按时序冲销的净需求运算奠定了精准、有序的数据基础。

累计需求

在完成“子件编码 + 开工时间”双维度排序后,数据已按物料归集并按生产顺序排列,具备了进行时序化需求累计的条件。为支持后续库存逐笔冲销、避免重复或遗漏扣减,需进一步计算每个子件在当前订单前的累计毛需求,形成一条随生产进度递增的需求累积曲线。这一累计值将作为库存抵扣的基准锚点,确保同一物料的需求按“先产先扣”原则有序覆盖。

字段创建,字段名称:累计需求,字段类型:统计字段(或聚合计算字段),用途:记录截至当前行,同一子件已累计的总毛需求量,用于后续与库存进行比对和冲销

配置参数

统计字段:MRP净需求分解明细 表中的 毛需求 字段

统计方式:求和(SUM)

统计条件1:子件编码 = 子件编码(限定统计范围为同一物料)

统计条件2:编号 ≤ 编号,仅包含当前行及之前所有已排订单(按编号升序模拟时间流向)

计算逻辑解析:该字段的本质是:在相同子件编码下,从第一条记录到当前记录为止,所有毛需求的累加值。

引用库存

在完成毛需求的累计计算后,下一步是将外部库存数据引入计算引擎,作为后续“需求-供应”匹配分析的基础。为此,需从统一的物料库存源表中,精准获取每一子件的当前可用库存(即“现存量”),并将其与需求明细逐行关联,实现供需数据的融合。

字段创建,字段名称:现存量,字段类型:查找与引用(Lookup)字段,用途:将“MRP净需求分解明细”中的子件与“现存量汇总表”中的库存信息进行匹配,获取每个物料的实时可用数量

配置说明:引用字段:现存量汇总表 中的 现存量 字段

查找条件:子件编码 = 子件编码,以子件编码为唯一匹配键,确保引用的库存数据与当前行物料严格对应

净需求计算

在完成“累计需求”与“现存量”的数据准备后,下一步是进行核心的供需比对,通过计算累计净需求,判断当前库存是否足以覆盖各生产订单的物料需求。该指标不仅反映整体供需关系,更能精准定位缺料发生的时点,是生成采购建议与缺料预警的核心依据。

字段创建

字段名称:累计净需求

字段类型:公式字段

用途:衡量在当前生产顺序下,可用库存扣除已累计毛需求后的剩余或缺口数量,体现物料供应的实时状态

计算公式:

=[@[现存量 ]]-[@累计需求]

公式解释:

结果解读

计算结果 含义说明

等于 0 库存刚好满足需求,供需平衡

大于 0 库存充足,尚有余量,可支持后续生产

小于 0 库存不足,出现欠料,需紧急补货

示例:

某物料A,现存量 = 918

第1笔需求:800 → 累计需求 = 800 → 累计净需求 = 918 - 800 = 118(满足,有余量)

第2笔需求:800 → 累计需求 = 1600 → 累计净需求 = 918 - 1600 = -682(不满足,欠料)

该结果显示:第一笔订单可由现有库存覆盖,但第二笔订单将导致严重缺料。

设计价值

精准定位缺料节点:通过逐行观察“累计净需求”由正转负的位置,可快速识别首次缺料的订单,便于优先处理关键瓶颈

支持齐套分析:结合多子件的净需求结果,可判断某产品是否所有物料均满足投产条件

为补货建议奠基:负值即为理论最小补货量,可直接用于生成采购或生产计划

注意事项

公式中引用的“现存量”应为可用库存(已扣除预留、冻结等不可用部分),否则会导致高估供应能力

若存在安全库存要求,可扩展公式为:=[@[现存量]] - [@累计需求] - [安全库存],提升计划保守性与交付可靠性

通过“累计净需求”公式的构建,我们实现了从“毛需求”到“真实缺料”的关键跃迁。系统不再仅停留在“需要什么”,而是进一步回答“有没有、够不够、何时开始不够”。这一步骤是MRP逻辑链中的决策中枢,为后续实现自动补货、缺料报警和生产排产约束提供了坚实的数据支撑,标志着计划系统真正具备了“感知风险、驱动执行”的智能能力。

广东省
浏览 817
收藏
4
分享
4 +1
+1
全部评论