PMC工具箱:全自动MRP毛需求多维表格小程序-2

职场计划有古哥 2024-12-07 05:41:57

全文约1400字

大家好,我是古老师。今天我将继续分享《全自动MRRP毛需求多维表格小程序》的第二章内容。在昨天的第一章中,我们已经完成了多维表格内《1. BOM(物料清单)》数据表的设计,并且确定了子件数量及属性。接下来,我们将进入到《2. MPS(主生产计划)》表与《3. MRP(物料需求计划)》需求表的设计阶段。

主计划表设计

主生产计划(MPS)是PMC生产计划的核心,它作为MRP需求计算的基础。通过MPS排程的产品结合BOM物料清单进行需求分解运算。首先,我们创建一张新的数据表,并命名为《2.MPS》。该表包含三个字段:“产品编码”(文本类型)、“数量”(数字类型)和“交期日期”(日期类型)。

在将订单信息录入到MPS表之后,为了便于后续的标准订单录入及查询操作,我们将继续设置不同的视图。点击符号“+”来创建以下几种视图:

表格视图:默认显示方式,命名为“计划视图”。此视图用于初始化数据录入,并作为数据库使用。

表单视图:命名为“计划录入”。此视图专为方便用户输入MPS相关信息而设。

查询视图:命名为“订单查询”。在此视图中配置多种查询条件选项,如按“产品编码”、“数量范围”或特定的“日期”等进行筛选,以提高信息检索效率。。

效果如下图所示:

MRP需求表设计

《1. BOM》表和《2. MPS》表设计完成后,接下来我们将进入最为复杂的《3. MRP》需求表的设计。首先,新建一张数据表,并命名为《3.MRP》。然后,在该表中创建一个高级字段,其属性为“编号”,并命名为“编号1”。完成这一设置后,紧接着向表格中插入1000行记录。请注意,这里的1000行仅作为预估的数据范围使用;根据《2. MPS》表中的订单信息量的变化,后续可以调整为更大的数据范围。

接着,继续创建两个属性为“公式”的字段,并分别命名为“编号2”和“编号3”。然后分别为这两个字段输入以下公式:

编号2:

公式:=MOD([@编号1]-1, MAX('1.BOM'![子件数])) + 1

公式解释:此公式对“编号1”减1后的结果与《1.BOM》表中的最大子件数取模(求余数),再加1。如果《1.BOM》中的最大子件数是10,则会产生一系列从1到10循环的数字。

编号3:

公式:=INT(([@编号1]-1) / MAX('1.BOM'![子件数])) + 1

公式解释:这个公式计算“编号1”减1后除以《1.BOM》中最大子件数的结果并向下取整,再加上1。这将生成一组重复的整数序列,例如当最大子件数为10时,会得到形如111111、222222这样的循环数字串。

新建一个属性为公式的字段,并命名为“产品编码”。对此字段设置以下公式:

公式:=IFERROR(INDEX('2.MPS'![产品编码],[@编号3]), "")

公式解释:此公式根据本表中的“编号3”辅助列(该列包含如111111、222222这样的循环数字串)从《2.MPS》表中提取相应行的“产品编码”。这意味着,如果“编号3”显示一系列相同的数字,则对应的产品编码会在这些行中重复出现。

接下来,以相同的方式处理《2.MPS》表中的其他字段。为此,再创建两个新的公式字段,并分别命名为“数量”和“交期”,并为它们设置以下公式:

数量:

公式:=IFERROR(INDEX('2.MPS'![数量],[@编号3]), "")

公式解释:与“产品编码”的逻辑相同,依据“编号3”辅助列从《2.MPS》表中获取相应的“数量”值。

交期:

公式:=IFERROR(TEXT(INDEX('2.MPS'![交货日期],[@编号3]),"MM/DD"),"")

公式解释:同样基于“编号3”辅助列来引用《2.MPS》表中的“交货日期”,但这里使用了TEXT函数将日期格式化为“MM/DD”的形式,并且通过IFERROR函数确保在遇到错误时返回空字符串而不是错误信息。

到此为止,《3.MRP》需求表中关于父件信息的重复部分设计已经完成。由于时间关系,子件需求部分的设计我将在明天继续分享。请大家持续关注我的更新。

0 阅读:0

职场计划有古哥

简介:感谢大家的关注