0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ERP程序员的出路

工程师人生 来源:工程师吴畏 2019-06-05 16:31 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

工作以来一直从事.NET技术方向的开发工作,工作6年,接触到三个有影响力的产品

预约挂号系统 面对医院的挂号难,排号难,在2003年就有老板想出做这一块业务内容,于是与几家医院合作,开通热线电话,做医院的预约挂号服务。在大城市,生病了需要看医生,但不知道医院是否有医生可以看病。生活在深圳,去过北大医院的朋友可能有所体会,大清早坐车过去,整个上午,可能就能排个号,到下午才有医生给你看病,也有可能会排到第二天。大医院的医生一上来问问状态,就让你去做化验检查,1-2天后化验结果出来了,再去找医生看,又要挂号排队,整个看病过程可能不到5分钟,可是在排号排队,等待医生上所花费的时间是看病时间的几十倍。于是,门户网站跑起来,挂号业务开发起来,热线电话一开通,一部分客户服务小姐天天打电话,向潜在客户推销预约挂号服务,另一部分客户服务小姐接受热线电话,给客户找到合适的时间,合适的医院,帮忙排上号,到病人要看病的那天,直接去预约的医院找指定的医生即可看病。

车间数据追踪 ShopFloor Data Tracking 企业解决方案的一部分。 在服装行业,生产款式款号颜色,车间生产任务的追踪相对难以控制和管理。从购买布匹,裁减,然后给裁减后的布局,每一捆(bundle)打上一个RFID卡片(RFID卡相当于我们去超市购物,进去之前要把自己的随身行李物品积存到服务台,服务台小姐给你一个带橡皮筋的手扣,扣在自己手上,离开超市前,用这个手扣换取自己当时寄存在服务台的行李物品),在生产的每个工序过程中(缝袖子,缝衣领,烫) 都要求将捆绑在RFID卡上的小卡片在机器上刷一下(好比坐车时刷深圳通一样),这些放置在车间的每个工序上的机器,会实时的将生产的工序进度传回到数据库服务器上,以追踪当前的生产进度,然后配合大量的报表来满足生产管理的需求。

ERP Enterprise Resource Planning 企业资源计划 MIS类型程序的大集合,什么功能都有,生产,采购,销售,库存,应收,应付。只要是做与工厂生产管理软件相关的程序,就不可避免的要接触ERP类型的产品。如果你有机会接触排在金字塔顶端的ERP产品,SAP,Baan,Oracle,还有微软自己的ERP产品,尽管这些产品的设计思路先进,但是很少有机会直接参与它的开发或二次开发。我们中的大部分要面对的是中小企业管理软件,思路理解上要容易一些,然后要用熟悉的语言和编译工具把它实现出来。比如要做一个生产排班系统,要设计工厂日历,工序作业流程,生产的主生产计划,每天的机器产能和负荷,作出合理的排班建议。我所要表达的主要意思是,我们需要理解这个流程,同时要用熟悉的工具和语言把它实现出来,从设计数据表,到编写业务对象,再到界面设计,做出功能,这才是我们看得见,摸得着的ERP。别一种情形时,专做二次开发,以插件的形式,对现有的ERP进行定做。我的工作内容属于前者。

ERP程序员的主要工作有以下几个要点

Bug Fix 修复现有的系统问题

Enhancement 改善改进系统现有做法

Data Fix 修复因功能缺陷导致的系统数据错误

Technical Support 技术支持 协助TS(Support Team)追踪问题,解决客户遇到的问题

我学习ERP经历了以下几个阶段,供参考

第一阶段 对业务不熟悉

一开始不熟悉ERP业务流程,要重复客户的错误都不容易。ERP类型的程序所设计的界面,是具备相当的迷惑性的。界面大堆大堆的控件,数据值从这个表单带到另一个表单,对于ERP生手,很难操作。至今我接触陌生的ERP界面,都有一种恐惧症,界面隐藏了太多的业务逻辑信息。随着工作时增长,各种问题遇到过,请TS同事多演示几次,各种操作流程就会了,也就学会了如何产生数据,测试问题。

我以生产作业流程举例,ERP中可以从销售单产生工作单。企业销售产成品,成品由几个原材料,经过几道工序完成。由销售单产生工作单,也就是经过生产过程,从下工作单,仓库发料,生产完工,产成品入库。

这里面,需要掌握如何设计物料清单,组合工序和原材料,仓库如何出仓到生产车间,最后是生产完工,进仓,完成产品的生产流程。

第二阶段 对关键数据流的不熟悉

学会如何产生ERP数据之后,接着需要掌握ERP中关键的数据和关键流程。举例说明

库存的实时信息 生产发料时,提示没有库存出仓。需要查库存余额帐,增加原材料入库。

物料需求计划 企业实际生产过程中,会做季度计划,在季度初期制订生产大纲(主生产计划),根据现有的库存量,做出物料需求的预测,产生计划订单。一手抓需求,一手抓供应。生产产品的原材料确少,没有库存,需要产生计划采购单以保证产生继续进行。客户对产品有需求,要在客户需求日期前(Due Date) 生产出销售订单中的产品数量,销售给客户。

生产的任何流程都与经济活动有关,与钱有关,产生货币进出记录。ERP财务模块记录企业每笔业务产生的经济活动,用于管理分析。

这些流程操作相对要复杂一点。产生的数据关联因条件的不同,会有些差异。比如销售送货后,要给供应商开具发票,产生应收帐,要考虑汇率差异,货币可能不是本位币,客户有预先支付定金,客户多付款或少付款,客户多次付款的情况。

客户的多付款,在冲销掉订单金额后,可用于下一次客户订单的支付。下订单时的兑换率和客户付款时的兑换率可能不一样,因而客户实际付款和客户应该付款的金额也有差异。用美元下订单,但是用欧圆付款,要能准确计算汇率差异,对于有进位误差的,要拨入进位误差。

进位误差举例, 假设本位币是USD

客户订单,HKD,兑换率=6.4

物料编号 单价 数量 金额

RM01 1.223 10 12.23

RM02 1.4567 5 7.2835

客户应付款(本位币)=12.23+7.2835=19.5135 USD

客户应付款(外币)=12.23+7.2835=19.5135 * 6.4= 124.8864 HKD

在客户付款日期时,假设为2015-5-13日,兑换率=6.2,付款货币HKD,则客户需要付款金额

客户应付款=12.23+7.2835=19.5135 * 6.2 =120.9837 HKD

产生汇率差异=120.9837 - 124.8864 = -3.9027

这一阶段会遇到相当多的困惑,坚持不泄的努力调试,努力找到问题,做一名合格的ERP工程师

第三阶段 系统问题阶段

客户的数据经常会出现不可追踪的错误。最近的一次印象深刻的是.NET的partial commit。 .NET的事务,依照这个模式,是可以在遇到异常时产生回滚

try {

// logic here , throw exception if error occurs

}

catch ()

{ throw }

但是在客户服务器上,会产生有些业务逻辑在遇到异常时没有回滚,产生一些错误数据。比如总帐与明细帐对不 上,物料余额帐与物料每日进出对不上,数据有差异。

另一种经常遇到的情况是,客户应收帐和供应商应付帐有数据不同。这种情况发生于手工在SQL Server中执行 SQL语句,比如在SQL Server执行脚本删除已经过帐的应收发票,SQL只是简单的执行删除逻辑,没有执行业务 逻辑流程,扣除应收帐数量,产生总帐与明细帐不符合。

这个阶段遇到的问题不多,但是个个都相当麻烦,只有对系统开发与设计的每个角落的细节都非常熟悉,才对这个 错误产生的原因,如何修复有把握能力。因为基于这个理解,所以我觉得,工作几年后,从.NET转到Java,或是 JAVA转.NET开发,都是不明智的选择。每个平台上都有大量的细节内容,需要在日常工作中接触,熟悉和理解。 Web Services跨平台,但是没有.NET Remoting用的机会多,Xml跨平台,但是常常还是用一种API来实现对它 读写。大部分的情况下,我们都是在一个平台下,和许多技术细节在搏斗,在较量。

第四个阶段 做有意义的事情

当熟悉公司的日常工作后,上班下班,朝九晚五的生活,日子一下子就过去了。常常思考,在深圳这样的大城市, 对于绝大部分人而言,不可能会待的很长久。不断攀升的房价和物价,生活成本上升,很多人都在思考出路,思考 自己的人生该如何走。能爬到金字塔的顶端是少数社会精英,但是我们只是个普通和程序员,科班出身,甚至有的 都不是科班出身,也走进了这一行,做一分工作,拿一分薪水,养活一个家庭。***技术作家候捷曾说,他最佩服 的是那些能突破自身局限的人,突破自己环境的限制,做一些有意义事情。

有时候公司2个多月都没有发现问题,于是安排我们把系统现有的文档整理一下,用最新的版本,更新下界面截 图;有时,我们都是在查找SQL语句为什么会产生这样的数据,而不是我们预想的数据,根本没有机会敲代码,写 C#;有时公司接了个外包项目,要修改ASP.NET的html代码,大部分时间又在改网页布局,把控件放到表格中, 和Html共舞,与JavaScript搏斗,.NET代码反而不重要,简单的INSERT和UPDATE就可以处理绝大部分情况。

这些日常的工作,看是是技术活,但又没有什么难度的活,把我们对技术的追求,一点点的磨平。做这些事的时 候,很难有时间可以看看代码,看看技术文章。似乎从事IT技术开发,看不到什么出路。

以我的理解和思考,下面三个例子,可以用这种方式来完成:

1 公司安排我们整理系统现有的文档 这是个绝佳的机会,好好练习一下文档处理能力。记得做完大学毕业论文, 连自己都被自己感动,能排出这么漂亮格式的文档,一丝不苟,有模有样。灵活的应用样式,各章分节分页,前后 交叉引用,以表格数据辅助说明,做出质量高的文档。我举例说明,我看到很大一部分产品PDF文档,没有书签, 感觉上不太专业。

举例说明,我以.NET中的并行为例

Parallel.For(1, 100, (count) =》 { Operation(); }); void Operation() { Thread.SpinWait(int.MaxValue); }

虽然我知道Word格式可以很方便的生成PDF,但是能把生成的PDF加个书签,会让你的文档看起来更优秀。

2 查找SQL 这是个查找系统问题的好时机 SQL语句用的是否洽当,可以在这个看到很多细节。比如该SELECT 一个字段的地方,可不能用SELECT * 来代替;能写一句完成的查询,不应该用二句或是多句来完成,减少往返 服务器的次数,提高性能;代码中如果非要用SQL语句,可以考虑把SQL语句提取到指定的地方,所有的SQL语句 都来自于这里,以增加可维护性;业务逻辑只考虑用C#代码完成,而不用存储过程,增加可维护性,便于跟踪, 千万不能出现,一部分逻辑在SQL存储过程里面,一部分逻辑在C#代码里面,还有一部分逻辑在游标里面,这样 跟踪问题相当麻烦。

3 页面Html排版 这是个锻炼接私活能力的舞台。网页布局排的漂亮,价格合理,很容易接到网站建设方面的私 活。

与此情况,最好也研究一下Photoshop,做一些漂亮的图片,以后可以独立承担网页开发,网站建设,这样不用 每次为找美工伤神。从Logo设计,到网页布局,再到程序开发调试成功,我已经独立完成过多个小网站的建设, 赚一点私活钱,在炎热的夏天,喝点冰冻啤酒,那真是舒服惬意。

我选择的路是做MIS框架,灵感来源于博客园里面的很多专家。他们大部分都有自己的产品,把技术的用途发挥的 很好。技术天生是拿来用的,除了为公司所用,还可以拿来做自己感兴趣的事情。每次看到有专家发表技术文章, 然后再看到有专家把这个技术运用到自己的产品中,写出一点心得分享,我更佩服后者。把每一项技术都努力思考 它的价值所在,运用到自己的产品研究中,学有所用,终有所成就。

确实,就这简单的一句Parallel.For可以让程序的性得得到改善,为此我专门抽一个下午的时间,把可以看到的能 改善的地方,都换成了这种模式来操作,比如删除系统运行后的临时文件。

另一个例子的地方是SqlBulkCopy,批量的插入数据到SQL中,而不是一笔笔记录的插入数据。

第五阶段 做感兴趣的事情

对文档,对页面设计,对产品功能感兴趣,任何一个方面的深入研究,都可以获取一技专长。

随着时间的积累,对产品的改善越来越多,信心越强,学有所用,是我从事ERP开发以来,找到的一条程序员的出路,著文章分享,共勉励。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • ERP
    ERP
    +关注

    关注

    0

    文章

    624

    浏览量

    36012
  • 程序员
    +关注

    关注

    4

    文章

    956

    浏览量

    31007
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    芯盾时代SDP助力企业应对核心机密泄露危机

    无论你是程序员、文案、财务,无论你想撸代码、出海报、做报表,各式各样的AI总能满足你的需求,让你的工作更加轻松。
    的头像 发表于 12-26 11:49 849次阅读

    大理的AI野心藏不住了——风花雪月中千名程序员探讨人工智能

    2025 年12月4日至6日第二届CCF程序员大会暨大理人工智能与应用国际开发者大会在大理圆满落幕。
    的头像 发表于 12-24 17:45 892次阅读
    大理的AI野心藏不住了——风花雪月中千名<b class='flag-5'>程序员</b>探讨人工智能

    程序员最常见谎言

    了。 28我已经测试过了,这个功能没问题,可以上线了。 29别担心,这个问题很快就能解决。 30代码快写完了,已经完成 90% 了 。 希望大家对程序员多一些容忍以及谅解! 各位程序员你们都被我说中了哪些?说说你们的观点
    发表于 12-10 08:24

    工厂有了ERP,为什么还要上MES系统?

    上MES不是为了替代ERP,而是为了与ERP形成“计划 - 执行 - 反馈 - 优化”的闭环,打造一个透明、高效、可追溯的数字化车间,从而将ERP系统的价值真正在车间现场落地。 对于追求精益生产、智能制造的企业来说,两者缺一不可
    的头像 发表于 12-05 16:31 738次阅读
    工厂有了<b class='flag-5'>ERP</b>,为什么还要上MES系统?

    堆和栈的区别

    程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。
    的头像 发表于 11-27 18:13 1231次阅读

    国内电商 ERP 系统优选:2025 年权威测评 + 技术实力深度解析

    引言:电商 ERP 成企业增长核心引擎,选型关键看这 3 点 在数字化浪潮下,电商企业的全渠道运营、库存管控、业财协同等需求日益复杂,ERP 系统已从 “可选工具” 升级为 “核心基建”。优质的电商
    的头像 发表于 11-17 12:23 587次阅读

    软通国际亮相2025沙中开源与AI科技峰会

    2025年11月11日,由沙特程序员协会(parmg)主办的"2025沙中开源与AI科技峰会"在利雅得盛大启幕。
    的头像 发表于 11-14 17:45 1604次阅读

    金蝶入选2025年Gartner云ERP产品中心型企业魔力象限

    近日,Gartner发布《云ERP产品中心型企业魔力象限》(Magic Quadrant for Cloud ERP for Product-Centric Enterprises),金蝶凭借金蝶云·星瀚获报告荣誉提及(Honorable Mentions),成为唯一进入
    的头像 发表于 10-30 16:22 956次阅读

    奔赴热AI,码力全开!Talkweb House@1024程序员日系列活动圆满收官

    1024程序员日”系列活动至此划上了一个圆满句号。本届1024程序员节以“AI构建世界,智能引领未来”为主题,广邀技术大咖、产业领袖、企业代表与全球开发者齐聚星城
    的头像 发表于 10-27 18:59 962次阅读
    奔赴热AI,码力全开!Talkweb House@1024<b class='flag-5'>程序员</b>日系列活动圆满收官

    开鸿智谷“以赛促学、以赛选才”|1024程序员节暨开源鸿蒙构建大会圆满落幕!

    10月24日,由开鸿智谷联合主办的长沙1024程序员节暨开源鸿蒙构建大会在长沙圆满落幕。本次活动以“湘聚长沙,共赴热AI”为主题,通过技术分享与实战竞赛相结合的方式,着力培养“开源鸿蒙+AI”领域
    的头像 发表于 10-27 17:58 860次阅读
    开鸿智谷“以赛促学、以赛选才”|1024<b class='flag-5'>程序员</b>节暨开源鸿蒙构建大会圆满落幕!

    机械制造专属ERP:降本增效与数字转型的关键

    转型升级压力下,ERP系统是机械企业破局的得力助手。本文深入解析ERP的核心功能、选型要点与实施价值,助您精准选型,赋能智能制造,全面提升竞争力。 在数字化浪潮席卷之下,机械制造企业正面临提质、增效
    的头像 发表于 10-10 15:05 577次阅读
    机械制造专属<b class='flag-5'>ERP</b>:降本增效与数字转型的关键

    一文读懂电子制造ERP的特点

    一、电子制造ERP的核心定义与行业适配性电子制造行业存在元器件品类繁杂(如电阻、芯片、传感器等)、生产流程精密(SMT贴片、老化测试等多环节)、合规要求严格(如RoHS环保认证、产品追溯)等特点
    的头像 发表于 09-16 09:46 862次阅读
    一文读懂电子制造<b class='flag-5'>ERP</b>的特点

    MES系统与ERP系统有什么联系

    MES系统(制造执行系统)和ERP系统(企业资源计划)是制造业中两类核心的信息化管理工具,二者既有明确分工又紧密关联,共同构成企业数字化管理的闭环。它们的联系主要体现在以下几个方面: 1.功能互补
    的头像 发表于 06-23 10:04 1490次阅读

    程序设计与数据结构

    的地址)出发,采用推导的方式,深入浅出的分析了广大C程序员学习和开发中遇到的难点。 2. 从方法论的高度对C语言在数据结构和算法方面的应用进行了深入讲解和阐述。 3. 讲解了绝大多数C程序员开发
    发表于 05-13 16:45

    电子工厂ERP好不好用

    在电子制造业竞争日益激烈的当下,企业都在寻找提升效率、降低成本的解决方案,而ERP系统成为了众多企业的选择。那么,电子工厂ERP系统到底好不好用呢?本文将从多个实际应用场景出发,为你揭开答案。一
    的头像 发表于 05-12 09:58 758次阅读
    电子工厂<b class='flag-5'>ERP</b>好不好用