昨天把三家供应商的报价单整理成一张表后,我顺手又看了一眼 ERPNext 的采购流程。之前我是新建供应商,再直接开 Purchase Order,收货和入库这条线能跑通,但总感觉少了前面一段:这张采购单为什么要买、问过谁、为什么选这家,在系统里都没有留下痕迹。今天干脆把 Material Request、Request for Quotation 和 Supplier Quotation 补起来试了一遍。
从“缺东西”开始,而不是从采购单开始
我造了一个很普通的场景:维修工说常用的一种配件只剩两盒,按现在的用量下周可能不够。以前我会直接在微信上问一句,然后自己开采购单。这次我让测试账号先建 Material Request,采购用途选 Purchase,填 Item、数量、需要的日期和目标仓库。
这里有个小区别让我印象很深。Material Request 记录的是使用方的需求,不一定是最终采购数量。仓库如果发现还有一批在路上,可以退回让申请人改;采购员询价后发现起订量更高,也能在后面的 Supplier Quotation 或 Purchase Order 里体现。需求、询价和最终承诺各有一张单,查起来比一张采购单里塞满备注清楚。
我一开始以为点了 Submit 就等于审批通过。其实不是。它只是把申请提交进流程,是否真正批准仍然要靠角色权限,复杂一点还要配 Workflow。如果没有审批规则,有权限的人一样可以直接往下转采购。所以我给自己留了一个原则:系统里的“提交”不等于现实里的“同意”,审批责任要在角色和流程里明确。
询价不是群发消息
接下来我做了 Request for Quotation,把同一批配件放进一张询价单,选了三个供应商。ERPNext 可以直接生成邮件,也能导出后自己发给对方。我第一次为了省事,只在邮件里写型号和数量,结果一家报含税价,一家报未税价,一家按箱报价,表面上数字差不多,实际完全不能直接比。
后来重新做时,我把基本单位、预计交货日期、报价有效期和税的口径都写清楚。供应商报价回来后,用 Supplier Quotation 从对应询价单生成,价格、数量、交期和供应商信息会带过来,统一单位后差异就清楚多了。这个步骤麻烦,但它留下的不只是三家价格,还包括每家的条件,后面出现争议时不用再翻聊天记录。
三种采购,真没必要都走四张单
全部跑完以后,我反而没有打算把所有采购都设成固定长流程。现在更想按不确定性来分:
- 已经签过年度价格、只是按计划补货的耗材,Material Request 确认后直接转 Purchase Order,减少无用填写。
- 新供应商、规格不标准或者金额较大的采购,走 Material Request、RFQ、Supplier Quotation,比价清楚后再转 Purchase Order。
- 临时抢修用的东西,仍然允许直接开 Purchase Order,但必须补一张 Material Request 关联需求,至少知道当时为什么这么急。
这样做是因为系统流程不是越长越专业。每多一步,都要有人负责维护。如果采购员每天只是给固定供应商补货,硬加一轮询价只会逼大家绕开系统;反过来,新物料如果一路直接开单,等对账时才发现单位或税率不一致,已经很难追。
今天的小结
Material Request 管的是“为什么要买”,RFQ 管的是“问过哪些供应商”,Supplier Quotation 管的是“对方报了什么条件”,Purchase Order 才是“我们最终承诺买什么”。把它们分开之后,采购不再是一条只看得见结果的单据链,而是能看到判断过程。
下一步我想把这套流程和昨天整理出来的供应商报价表接起来:先在 ERPNext 里统一供应商、物料和单位,再把报价录进 Supplier Quotation,看看能不能少做一次人工对照。到时候重点不是自动化录入,而是把容易抄错的型号、税率和交期先固定下来。