一文讲透如何用明道云构建物料需求计划系统

引言

物料需求计划(Material Requirement Planning,MRP),是一种工业制造企业内物资计划管理模式。 简单来说,MRP就是根据市场需求预测或顾客订单来指定生产计划,然后基于产品生成生产进度计划,再根据产品的材料与库存情况,通过自动化计算生产所需物料的需求量和需求时间,从而确定材料的加工进度以及采购日程的一套管理工具。

今天向大家介绍一个用明道云搭建的简单MRP应用。它通过已维护好的BOM与库存数据,自动生成需求清单,然后对比当前库存量,从而生成待购清单。

实现效果

1.维护基础信息
想实现MRP功能,第一步就是维护基础信息,基础信息包含并不限于以下内容:

  • 物料主数据信息
  • 物料清单(BOM)
  • 库存信息
  • 主生产计划(MPS)

在明道云内,我们可以将相关信息用工作表来维护,物料主数据信息如下图所示。

一文讲透如何用明道云构建物料需求计划系统

同理,我们用工作表来维护仓库、库存、BOM结构等。

一文讲透如何用明道云构建物料需求计划系统

2.录入生产单,自动计算原料清单与待购清单
生产员在生产单内录入需要生产的产品,点击表单上方的“确认生产”按钮,自动生效生产单,并生成生产该产品所需的原料清单。

一文讲透如何用明道云构建物料需求计划系统

对比原料清单与库存内的可用数量,进一步生成待购清单,提供给采购部门处理。

一文讲透如何用明道云构建物料需求计划系统

这看似只有两步操作的内容,真的有那么简单吗?让我们看看究竟是如何实现的。

如何在明道云实现MRP

我们已经介绍过很多次了,应用制作四部曲:

  • 确定数据对象,构建数据结构
  • 制作工作流,设置数据流程
  • 设计看板与统计
  • 配置用户角色与权限

而在MRP的实现过程中,最核心的内容就是前两点:数据对象与工作流自动化。 运用工作表来定义物料清单(BOM)以及生产计划规则等对象,再利用工作流去调用物料需求数量或是表内规则,整个流程中各对象、各流程相辅相成,最终计算得出物料需求清单。

1.确定数据对象,构建数据结构
在一个MRP系统中,数据对象并不复杂,主要以物料主数据为核心,其他对象均是它的衍生物,比如物料清单(BOM)、物料需求清单、库存信息、待购清单等。我们大致可以得到以下对象关系网:

一文讲透如何用明道云构建物料需求计划系统


我们可以简单的罗列一下需要构建的数据对象:

一文讲透如何用明道云构建物料需求计划系统(仅罗列了在此次简易MRP中必要对象)

将上述对象转化为工作表,并利用关联关系将他们建立起逻辑结构。

一文讲透如何用明道云构建物料需求计划系统

2.制作工作流,设置数据流程
这一步是最核心、最关键,也是最困难的一步。在MRP的工作流里,最重要的是根据物料清单以及主生产计划,通过工作流自动生成生产物料需求清单。这里要求无限制地将一个成品物料拆解到最底层的原料层。

业务逻辑
为了简单示例,在这里假设主生产计划仅有一道工序,并均在需求日期需要生产原料,在业务角度上,其主要流程拆解如下图所示:

一文讲透如何用明道云构建物料需求计划系统

工作流详情一:生产单至生产物料需求单

小伙伴们也许会有这个疑问:明道云中如何实现循环触发工作流? 我的方法是:通过两个不同的子流程互相触发,实现无限循环的效果。接下来一起看一下如何实现。

一文讲透如何用明道云构建物料需求计划系统

从上图可见,这里总共有四列关键流程,分别对应着明道云中的四个流程(各个节点均已说明):

  • 触发的主流程
  • 子流程1:多条生产物料分别执行物料分析
  • 子流程2:判断子物料属性,虚拟件/原料(一)
  • 子流程3:判断子物料属性,虚拟件/原料(二)

逻辑步骤如下:

  1. 从触发流程开始,进入到“子流程1”。
  2. 根据分支判断,选择是否进入到“子流程2”。
  3. “子流程2”与“子流程3”互相嵌套,来实现流程的无限循环,直到拆解物料清单到子物料属性为“原料”为止,结束后生成【生产物料需求单】。

工作流详情二:生产物料需求单至待购清单

当有了【生产物料需求单】后,我们可以设定一个定时工作流,每天定时自动匹配库存信息,生成待购清单。

主要节点如下:

  1. 定时触发:设定每天定时触发时间
  2. 从工作表获取记录:获取未处理的生产物料需求单
  3. 子流程:将获取到的物料需求单作为数据源,逐条执行

子流程内的节点配置:

  1. 从关联表字段获取:从生产物料需求单上获取物料
  2. 从工作表获取(单条):将上述物料信息作为筛选条件,获取库存信息,获得该物料的库存可用数量
  3. 分支:判断物料可用数量是否大于需求数量;若物料可用数量大于需求数量
  4. 新增节点:新增物料挑库信息,数量为需求数量
  5. 更新节点:更新库存信息,减少可用数量;若物料可用数量小于需求数量
  6. 新增节点:新增物料挑库信息,数量为可用数量
  7. 更新节点:更新库存信息,可用数量为0
  8. 计算节点:需求数量-可用数量
  9. 从工作表获取:从待购清单获取,查找该物料是否存在于待购清单,如果不存在,则新增一条数据,待购数量为0
  10. 更新节点:更新“节点9”中的待购数量为“节点8”的计算值

以上就是从生产单转变至待购清单的工作流的整个过程。

3.设计看板与统计

完成工作表与工作流之后,第三步我们需要设计统计看板。面对工作表定义的数据对象,数据明显多而杂,管理者很难依靠明细数据来了解生产过程情况。为了解决这一问题,我们可以通过自定义页面来进行数据统计,并创建一些快捷入口。以下是一些简单示例:

生产报表

一文讲透如何用明道云构建物料需求计划系统

质量管理报表

一文讲透如何用明道云构建物料需求计划系统



明道云目前提供透视表、柱状图、折线图等9种不同的统计图,用户可根据自身需要,统计并显示工作表内的数据。在MRP系统中,我们追求的是工序计划安排的准确性、物料需求实现的及时性,故我们可以把这些信息放在第一位,DIY属于自己的物料需求报表。

4.配置用户角色与权限

数据权限是企业的信息化管理必不可少的一部分,用户权限主要分:增、删、查、改四部分。 明道云通过用户和视图的结合,来呈现数据展示和权限的功能。而在MRP中,主要涉及到以下几个关键角色:

一文讲透如何用明道云构建物料需求计划系统


把可查、可编辑、可新增、可删除四个功能,分别赋能给各个不同的角色,从而达到精细化权限管理。额外说一句,明道云的权限是可以细化到每一条记录的每一个字段都是可查可编辑哦!

结语

今天给大家分享的是一种最基础、最简单的MRP场景。为了让读者更好理解工作流,作者忽略了一些非关键因素。当你学会了这种配置方式后,就可以额外叠加更多的条件,比如库存方面的最大-最小库存计划、生产过程中的外协加工等。发挥想象力,这一切均可通过明道云实现,欢迎各位明道用户们积极尝试!

上一篇:MRP参数文件定义及应用


下一篇:二、强化学习—马尔可夫决策过程、贝尔曼方程推导