影刀RPA 采购订单自动化从申请到审批全流程作者林焱 | 分类影刀RPA新手教程 | 难度★★什么情况用企业采购流程通常很繁琐需求部门填采购申请 → 部门经理审批 → 采购部询价 → 比价 → 财务审批 → 生成采购订单 → 发送给供应商。整个流程涉及多个系统OA、ERP、邮箱一张单子流转3-5天是常态。用影刀RPA打通OA→ERP→邮件链路实现采购申请自动审批低金额、自动生成采购订单、自动发送给供应商。把3-5天缩短到几小时。怎么做第一步从OA拉取待审批采购申请影刀操作动作【打开网页】→ OA系统如飞书审批、钉钉OA审批、泛微等【点击】→ 「采购申请」模块【筛选】→ 状态“待审批”拼多多店群自动化上架方案【获取元素列表】→ 提取申请单号、申请人、部门、金额、采购明细# 影刀Python节点解析采购申请purchase_requests[{单号:PR202606001,申请人:技术部-张三,金额:3500,采购内容:服务器内存条 x4,品类:IT设备},{单号:PR202606002,申请人:行政部-李四,金额:800,采购内容:办公文具一批,品类:办公用品},{单号:PR202606003,申请人:市场部-王五,金额:15000,采购内容:展会搭建服务,品类:市场服务},]# 按金额自动分流AUTO_APPROVAL_LIMIT2000# 2000元以下自动审批auto_list[rforrinpurchase_requestsifr[金额]AUTO_APPROVAL_LIMIT]manual_list[rforrinpurchase_requestsifr[金额]AUTO_APPROVAL_LIMIT]print(f自动审批{len(auto_list)}单)print(f需人工审批{len(manual_list)}单)第二步ERP自动生成采购订单对于已审批的采购申请在ERP中生成采购订单# 影刀Python节点匹配供应商和价格defgenerate_po(pr,supplier_catalog,price_list):根据采购内容和供应商目录生成采购订单categorypr[品类]# 从供应商目录匹配matched_supplierssupplier_catalog.get(category,[])ifnotmatched_suppliers:return{error:f未找到{category}的合格供应商}# 选择价格最优的供应商best_supplierNonebest_pricefloat(inf)forsupplierinmatched_suppliers:priceprice_list.get((supplier,pr[采购内容].split(x)[0].strip()),None)ifpriceandpricebest_price:best_priceprice best_suppliersupplierifnotbest_supplier:return{error:无匹配价格}return{采购单号:pr[单号].replace(PR,PO),供应商:best_supplier,单价:best_price,总金额:best_price*int(pr[采购内容].split(x)[-1].strip()ifxinpr[采购内容]else1),}影刀操作动作ERP操作【点击】→ 「采购管理」→ 「新增采购订单」【填写】→ 供应商选择根据匹配结果【填写】→ 采购明细逐行填入物料、数量、单价【填写】→ 交货日期按供应商标准交期今天【点击】→ 「保存」→ 「提交审批」【获取文本】→ 系统生成的采购订单号第三步询价比价自动化非标准采购如果采购品类没有现成价格需要向多家供应商询价影刀操作动作【循环】→ 遍历合格供应商列表【邮件】→ 发送询价单模板物料名称、规格、数量、交货期要求【等待】→ 等待24小时或定时第二天检查【邮件】→ 检查收件箱提取供应商报价【Python节点】→ 比价选择最优# 比价逻辑quotes[{供应商:A,单价:850,交期:3天,含税:True},{供应商:B,单价:820,交期:5天,含税:True},{供应商:C,单价:880,交期:2天,含税:False},]# 根据当前需求权重决策紧急采购看交期常规采购看价格defcompare_quotes(quotes,priority价格优先):ifpriority交期优先:returnmin(quotes,keylambdax:int(x[交期].replace(天,)))else:returnmin(quotes,keylambdax:x[单价])bestcompare_quotes(quotes)print(f最优选择{best[供应商]}| 单价{best[单价]}元 | 交期{best[交期]})第四步自动发送采购订单给供应商【读取Excel】→ 获取供应商邮箱【邮件-新建】→ 收件人为供应商邮箱【邮件-填写】→ 主题采购订单 PO202606001【邮件-添加附件】→ 采购订单PDF【邮件-发送】第五步跟踪采购订单状态# 影刀Python节点订单状态闭环管理PO_STATUS_FLOW{已发送:等待供应商确认,已确认:等待发货,已发货:等待到货,已到货:等待质检,已入库:完成,}# 定时检查订单状态从ERP或供应商反馈forpoinactive_pos:days_pending(datetime.now()-po[创建时间]).daysifdays_pending3andpo[状态]已发送:print(f⚠️{po[单号]}已发送{days_pending}天供应商未确认需要跟进)# 影刀自动发送提醒邮件给供应商有什么坑TEMU店群如何管理运营坑1OA审批流与ERP不是同一套系统最常见的架构OA审批完了ERP还没有生成单据。中间需要人工搬运。RPA在这里做的就是数据搬运工。关键是要保证两边数据一致——OA的审批金额和ERP的采购订单金额必须相同否则财务对账时会出问题。坑2供应商价格可能动态变化价格表不是死的尤其是大宗商品钢材、芯片等价格波动大。如果RPA按昨天的价格自动下单今天可能就亏了。建议对价格波动大的品类RPA只做生成采购申请草稿不自动下单。坑3紧急采购的流程例外老板口头说了采购先买东西后补流程这种场景很常见。RPA处理正式流程没问题但这种例外情况无法覆盖。不要试图让RPA处理所有采购明确RPA的范围只处理标准流程。坑4审批权限矩阵复杂有些企业不同部门、不同品类、不同金额的审批权限都不一样。不要把复杂的审批规则写死在Python里用Excel配置表维护申请人部门采购品类金额区间→对应审批人。坑5供应商邮箱可能变更供应商联系人离职或换岗后邮件发到旧邮箱没人看。建议RPA发送后24小时检查是否有已读回执或回复没有的话自动查供应商主数据找备用联系人。总结采购自动化的第一步不是上RPA而是梳理采购审批规则。把所有金额XX自动审批XX品类走快速通道之类的规则明确下来RPA才能准确执行。