工程物料管理信息化建设(十二)——关于工程物料管理系统最后的思考

news2024/11/18 2:50:38

目录

  • 1 功能回顾
    • 1.1 MTO模块
    • 1.2 请购模块
    • 1.3 采购模块
    • 1.4 催交模块
    • 1.5 现场管理模块
    • 1.6 数据分析和看板模块
    • 1.7 其它模块
  • 2 最后几个问题
    • 2.1 按管线发料和直接发料重叠
    • 2.2 YHA 材料编码的唯一性问题
    • 2.3 “合同量单-箱单-入库单” 数据映射
  • 3 关于未来的思考
    • 3.1 三个专业之间的关系
    • 3.2 数据价值
    • 3.3 系统的迭代与发展
  • 4 结束

关于材料管理软件的最后思考和总结,这篇文章迟到了两年,不知道当年哪些让人掉头发的问题小伙伴们是不是已经都解决了,又是一年毕业季,曲终人散终有时,谨以此文——
与过去挥手作别
与自己握手言和
与大家后会有期

1 功能回顾

1.1 MTO模块

实现PDMS生成MTO单线材料表,导入材料管理软件,为按管线发料提供了数据基础,历经多个项目使用和优化,提升数据导入的质量和智能化校验等功能,在MIS项目增加了MTO数据的变更功能,可以将变更导致的材料变化纳入MTO数据管理(不过好像没用起来),这个模块是实战中应用最多的模块没有之一,功能最成熟,运用效果也不错,是我们打磨时间最长的模块。

1.2 请购模块

根据采购包分组信息自动从MTO材料池中进行汇料生成请购量单,这个功能设计非常精巧。增加了材料多批汇料的计算策略,余量系数的设定,管子长度的自动圆整,超出设计量的请购数量预警等细节。

开发了询价单输入和询价信息导入功能,但大部分项目没有用到询价功能,实践中询价工作无法将量单按软件既定格式固化并批量输入。请购模块也是实战应用最多的模块之一,功能成熟,运用效果也不错。

1.3 采购模块

主要功能是做采购合同,包括合同信息和编制量单,后期取消了量单输入的繁琐操作,直接从请购单继承量单数据,并且可以做分拆。这个模块推广非常不容易,采购专业配合度决定了最终应用的效果。多个项目积累了大量有价值的数据,也有部分项目半途而废。

采购业务流程非常复杂,受干扰因素多,系统面面俱到很困难,需求的准确性也不好把握。我们在管理流程的规范性和灵活性中不断地寻找平衡。后期研究并应用了文档在线编辑、电子标签FRID等技术。从采购模块里还分拆出了供应商管理模块,后来逐渐演化为一个独立的系统并成为了公司级供应商门户网站的后端管理模块,其中的供应商评价、履约评价、产品目录等功能对于供应商管理非常有价值。这个模块只在部分项目使用的比较成功,与预想的目标还有差距。

1.4 催交模块

催交这个投入了巨大人力,需求反复,几乎重做了三遍。公司在物流环节投入的资源很有限,执行能力不足。这个模块期望实现的“合同量单-箱单-到货单”数据映射目标实现不了,导致材料的全生命周期数据无法一一对应。该问题在短期内可能无法解决,涉及到行业工作模式、供应链的行业特点、管理成本等诸多方面。

1.5 现场管理模块

现场模块应用的情况远远好于我的预期,几个大EPC项目坚持到底既在情理之中又在意料之外。情理之中是因为我一直坚信现场材料管理是现场项目管理重要的刚需,意外是因为这么复杂的场景用到最后需要太多的付出和坚持,现场的同事们竟然做到了,非常不容易,也从一个侧面证明的现场对管好材料的迫切需求,证明软件能协助管好材料,虽然做不到100%,但是至少在几个坚持到底的EPC大项目上得到了不同程度的接受,这给了我们莫大的信心。

1.6 数据分析和看板模块

在MIS项目上做了尝试,增加了很多统计图表效果,但是我觉得挖掘出的数据价值不足,缺少算法或者方法论支撑,对数据的挖掘还停留在比较肤浅的统计层面,报表很多但是有价值的分析成果不多。当然,数据样本不足也是问题之一。

1.7 其它模块

其它模块做的都是情怀。

2 最后几个问题

2.1 按管线发料和直接发料重叠

按管线发料和直接发料重叠,这个问题的原因是没有根据材料类型规划哪些按管线发料哪些按装置发料,提前做了规划的项目后期执行的非常好,(例如:高安,图克)。

系统在这个问题上也有缺陷,客观上两种发料方式大家都需要,任何一种材料在理论上都应该根据项目的实际情况允许按管线发出或者是直接发出。但是按两种计算方式核减材料数量,汇总时核减的总数没有办法对齐。

我觉得最终的答案在VPRM中,VPRM里并没有真正意义上的按管线发料,他的思路叫按计划发料,这个计划里包括勾选管线组成发料的范围,所以我们的出库发料不应该使用两种计算口径,应该保留直接发料这一个口径,在直接发料的过程中,可以关联施工领料计划,在领料计划里勾选管线,并根据管线自动汇料,形成领料清单,再通过直接发料的方式,核减材料数量,核减的时候只记录材料编码和发料数量。这样材料核减的计算方法只有一种口径,就不会因为两种计算口径不同导致总数计错误。通过领料单编号,建立与领料计划的映射关系,依然可以对材料进行追溯。

我们总想搞清楚这些材料原本该谁用,实际该谁用,谁又借去用,这种思路从一开始就是错的。其实不存在原本该谁用,应该所有人都按计划,计划谁先用谁就先用。更不应该有借用,你都允许借用那为什么一开始还规定该谁用呢,最后还不是谁急用谁先借(用),纯属自己挖坑自己跳。

两种计算方式的区别
在这里插入图片描述

2.2 YHA 材料编码的唯一性问题

问题描述:
同一个材料编码,只要外径、壁厚、材质等信息一致,编码就唯一,没有区分材料等级。如果区分材料等级,那么材料编码数量会出现大幅增加,而且本来可以互用的材料不能互用,增加了管理成本。由于壁厚加厚是合同签订后,厂家反馈才确定的,这时候项目图纸都已经入库了,修改设计数据源头已经不可能,这是症结所在,所以项目想通过在已有材料编码上增加A/B/C后缀以示壁厚区别。

我觉得答案还是在VPRM里,代材,这个我们一直嫌弃不好用的功能。这个功能的设计理念完美(从理论上)解决这个问题,为什么说理论上,因为实际也很难落实,改图纸和合同清单都是不可行的,代材不是修改既有数据,而是追加信息。这个逻辑是对的,已经定板的东西是不能改的,牵一发动全身,要付出巨大的成本,中国为啥可以瞎改因为人力成本低,图纸也好合同清单也好改一百次不加钱,未来这些都会纠正的,宇宙的尽头终将是正义。

我们可以在代材管理流程上做一些优化改进,如果是高代低,直接在高材料上标低材料的编码,现场直接拿着用不出事,低代高理论上不允许;如果想精细化管理,就给厂家发去代材的材料编码A用于标识在拟发货的代材上,在系统里用代材功能输入代材编码A,替换原来的编码B,后续电子台账都按A计,实际操作需要花费不少人力成本。

相同编码不同等级的材料在不同阶段不同视角是应该分项还是合并同类项,管理的原则要定下来,而且要全部项目统一标准。编码的变更有一些是来自于非设计端的随意变更,这个变更在项目管理角度来看又有合理的成分,材料的全生命周期是一个系统性工程,有时候我们要跳出技术层,从其他的一些角度辩证地看待这些问题。

2.3 “合同量单-箱单-入库单” 数据映射

这个问题不展开了,这个数据映射问题在可预见的时间内都无法解决的,涉及到物流管理、仓储管理、包装、运输、供应链管理方方面面的细节,所有的环节都要标准化规范化材料信息,颗粒度完全一致。大宗消费品比较容易做到。工业品受种种原因的影响难以做到。

3 关于未来的思考

3.1 三个专业之间的关系

一个新专业的诞生和发展的过程非常艰难,特别是自下而上生长,没有制度加持,没有板凳可坐,没有流程赋权。不知道经过了两年这些问题有没有改观,我记得好几个项目执行阶段,材料控制和采购两个专业相爱相杀,从最开始的格格不入,到最后磨合的渐入佳境,又时而反复,每一个人都付出了巨大的努力,像唐吉坷德一样勇往直前。

材料管理抓手有三:费用、进度、数量。我觉得在宇宙的尽头,材料控制会回归到项目控制成为其一部分,将材料费用和进度管理纳入项目控制管理,材料的数量管理交给设计专业,材料控制在我们搞不清楚材料应该如何管的时候站出来勇敢地担负起摸着石头过河的任务,最终以为公司建立好材料控制管理体系的方式完成历史使命。
在这里插入图片描述

3.2 数据价值

材料控制和采购在很多控制指标上可以交互,我在图里画了一些,还有很多方面,没有一一列出。其中很多数据是非常有价值的,例如:价格库、履约评价、费用和进度的阀值,对阈值、变更等控制指标的检测预警、物流和仓储数据的挖掘,从数据收集和分析来感知用户(供应商、化建施工单位等)行为,反推管理的合理性和有效性,为决策提供数据支持,为项目提供历史经验,对未来进行预估评判。

3.3 系统的迭代与发展

寻找提升价值的点,我之前有想过大概三个方面,每一个点都足够做很久:
在数智化建设方向,与设计平台数据集成,向上游延伸;
在项目管理方向,逐渐融入或者集成项目管理平台(融入会让系统失去独立性,无法在成为独立软件,软件的迭代会收到很多限制),为整个项目信息化管理生产材料管理过程数据,把数据分析挖掘交给大数据平台;
移动端、自动化数据采集、智能化决策辅助施工、接入智慧仓库、智慧建管运维。

4 结束

材料软件走到今天只能说完成了从0到1,应该还有一个孵化的过程,在智能化、物联网等技术的融合缺乏接入点,需要更多的资源,路阻且长,但是这是凤凰涅槃的必由之路;

我觉得做材料管理软件最大的收获就是体会到了什么叫十年磨一剑。从最开始购买商业软件,到自己完全理解吃透,再到根据公司实际流程重新设计,完全依靠自主力量开发,十几年时间迭代了三个大版本。有幸跟随公司发展的脚步,走遍天南海北,去了很多项目现场做技术支持,从大山深处到戈壁滩,从仓库货架到塔架顶端,在内蒙的沙尘暴里伸手不见五指,在仓库里和化建工人一起搬阀门。系统从最早的ASP.NET到后来的MVC/前后端分离+专业UI再到移动手持PDA,我也跟随着这个系统一起成长。

做软件从来就不是一蹴而就的事情,开发一个软件大概需要一年,吃透一个软件可能需要十年,打磨它可能需要一辈子。只要我们专注做这件事,日积月累一定会有所收获,即使遭遇挫折,也请做我们该做的事情,并接受他的事与愿违。

因为一些原因我提前结束了材料管理软件的研发工作,开始了新的征程,希望同学们继续加油,愿我们在胜利的彼岸再次相遇。

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

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

相关文章

单点接地、多点接地、混合接地

有三种基本的信号接地方式:浮地、单点接地、多点接地。 浮地:目的是使电路或设备与公共地线可能引起环流的公共导线隔离起来,浮地还使不同电位的电路之间配合变得容易。缺点:容易出现静电积累引起强烈的静电放电。折中方案:接入泄…

基于小波变换的分形信号r指数求解算法matlab仿真

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 2.算法运行软件版本 matlab2022a 3.部分核心程序 ................................................................... %通过功率谱密度曲线…

Java数据结构第十九章、手撕图+最小生成树

一、图的基本概念 图是由顶点集合及顶点间的关系组成的一种数据结构:G = (V, E),其中:顶点集合V = {x|x属于某个数据对象集}是有穷非空集合;E = {(x,y)|x,y属于V}或者E = {<x, y>|x,y属于V && Path(x, y)}是顶点间关系的有穷集合,也叫做边的集合。(x, y)表…

c#设计模式-行为型模式 之 迭代器模式

&#x1f680;简介 提供一个对象来顺序访问聚合对象中的一系列数据&#xff0c;而不暴露聚合对象的内部表示。 迭代器模式主要包含以下角色&#xff1a; 抽象聚合&#xff08;Aggregate&#xff09;角色&#xff1a;定义存储、添加、删除聚合元素以及创建迭代器对象的接口…

flask vue跨域问题

问题&#xff1a; 调试时候跨域访问报&#xff1a; Request header field authorization is not allowed by Access-Control-Allow-Headers in preflight response. 解决办法&#xff1a; 安装flask_cros from flask_cors import CORS CORS(app) app.after_request def a…

linux用户管理,用户权限命令详解

一.用户管理 Linux 同时可以支持多个用户&#xff0c;每个用户对自己的文件设备有特殊的权利&#xff0c;能够保证用户之间互不干扰,就像手机开了助手一样&#xff0c;同时登陆多个 qq 账号&#xff0c;当硬件配置非常高时&#xff0c;每个用户还可以同时执行多个任务&#xf…

Langchain 代理 (Agents) ,赋能超级 LLMs

原文&#xff1a;Langchain 代理 (Agents) &#xff0c;赋能超级 LLMs - 知乎 大型语言模型&#xff08;LLMs&#xff09; 非常强大&#xff0c;但它们缺乏“最笨”的计算机程序可以轻松处理的特定能力。逻辑、计算和搜索是计算机通常擅长的领域&#xff0c;但 LLMs 却遇到了困…

上个月Balada Injector攻击中有超过17,000个WordPress网站被黑

导语 最近&#xff0c;一场名为Balada Injector的攻击活动引起了广泛关注。这次攻击以WordPress网站为目标&#xff0c;据统计&#xff0c;有超过17,000个网站受到了感染。在本文中&#xff0c;我们将详细介绍这次攻击的概述、攻击手段以及如何保护自己的网站。 攻击概述 Balad…

HTTP/2 中的漏洞

另一个热门漏洞是 CVE-2023-44487。 该漏洞与 HTTP/2 协议实施中的一个缺陷有关&#xff0c;可用于实施 DDoS 攻击。使用该漏洞的攻击被命名为 HTTP/2 快速重置。 为什么它很危险 要利用该漏洞&#xff0c;攻击者需要在 HTTP/2 会话中打开大量请求&#xff0c;然后在不等待服…

什么是Python虚拟环境?

视频教程地址&#xff1a;https://www.bilibili.com/video/BV1Zy4y1F7hC/ 大家好&#xff0c;这一集我们来介绍一下什么是Python虚假环境。虚拟环境是python基础知识中非常重要的一个知识点。 相信python新手都会遇到过这样的问题&#xff0c;在命令行中下载了某个三方库在py…

graphviz 绘制红黑树

代码 digraph RedBlackTree {node [fontname"Arial", shapecircle, stylefilled, color"#ffffff", fillcolor"#ff0000", fontsize12, width0.5, height0.5];edge [fontname"Arial", fontsize10, color"#333333", arrowsize…

竞赛抢答器4路抢答器verilog,仿真视频、代码、AX301开发板

名称&#xff1a;数字式竞赛抢答器设计4路抢答器verilog 软件&#xff1a;Quartus 语言&#xff1a;Verilog 代码功能&#xff1a; 数字式竞赛抢答器设计 设计一个可容纳四组参赛者同时抢答的数字抢答器。 要求&#xff1a; &#xff08;1&#xff09;能判断第一抢答者并…

【C++初阶(一)】学习前言 命名空间与IO流

本专栏内容为&#xff1a;C学习专栏&#xff0c;分为初阶和进阶两部分。 通过本专栏的深入学习&#xff0c;你可以了解并掌握C。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;C &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库&…

【python】time

文章目录 【calendar】是否闰年星期英文缩写今天星期几打印日历 【datetime】今天星期几 【time】当前时间 【pandas】当前时间文件修改的时间 【日历】 【calendar】 是否闰年 import calendar print(calendar.isleap(2000))out True星期英文缩写 print(calendar.weekhead…

Zookeeper经典应用场景实战

1. Zookeeper Java客户端实战 ZooKeeper应用的开发主要通过Java客户端API去连接和操作ZooKeeper集群。可供选择的Java客户端API有&#xff1a; ZooKeeper官方的Java客户端API。第三方的Java客户端API&#xff0c;比如Curator。 ZooKeeper官方的客户端API提供了基本的操作。例…

Gin框架中的Cookie怎么搞(会话控制)

参考地址 设置和获取 Cookie | Gin Web Framework (gin-gonic.com)https://gin-gonic.com/zh-cn/docs/examples/cookie/ 什么是cookie cookie在互联网上随处可见,具体体现如下: 保持登录状态 保存浏览器的历史记录 大数据随心配,按喜好推送讯息 购物网站加入购物车 都会…

内存概念,进程运行的基本原理(指令,逻辑地址与物理地址的转换,程序运行的过程)

1.内存 内存可存放数据。 程序执行前需要先放到内存中才能被CPU处理&#xff1a;缓和cPU与硬盘之间的速度矛盾。 1.内存地址 内存地址从0开始&#xff0c;每个地址对应个存储单元。 2.存储单元 内存中也有一个一个的“小房间”&#xff0c;每个小房间就是一个“存储单元”…

RS485通讯方式-详解

RS485是美国电子工业协会&#xff08;EIA&#xff09;在1983年批准的一个新的平衡传输标准&#xff0c;也称作差分。 RS485总线通常采用两线间的电压差为2V到6V表示逻辑1&#xff0c;以两线间的电压差为-2V到-6V表示逻辑0。 这种总线以其差分传输方式而闻名&#xff0c;发送端在…

C语言常见题目 过关斩将(2)基础好❓你可知道有关 “素数“ 的三连问❓

我的个人主页&#xff1a;☆光之梦☆的博客_CSDN博客-C语言基础语法&#xff08;超详细&#xff09;领域博主 欢迎各位 &#x1f44d;点赞 ⭐收藏 &#x1f4dd;评论 特别标注&#xff1a;本博主将会长期更新c语言的语法知识&#xff0c;初学c语言的朋友们&#xff0c;可以收藏…

从0开始学go第七天

gin获取表单from中的数据 模拟简单登录页面&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><title>login</title> </head><body><form action"/login" method&q…