做布行和钢材贸易的朋友,应该都有过这种经历:仓库里的库存明明还有几十“匹”布,客户开口就要“500米”;钢材堆场进了一车“吨”,销售时一根一根地卖,月底对账却怎么都对不上支数。说白了,就是进销存软件里的计量单位太死板,只会用一种单位记账。易特进销存的多单位功能,就是专门针对这类“一个商品、多种计量口径”的场景来设计的。
这篇文章我想把布匹、钢材这两个行业的计量门道,以及多单位功能怎么落地,一次性讲透。如果你是做面料、坯布、针织布贸易的,或者做钢材加工、型材批发、工地配送的,又或者你手里正在代理一套进销存软件、天天被客户单位换算问题追问,这篇文章可以当一份“避坑操作手册”来看。
1. 布匹、钢材行业的计量特殊性,为什么通用进销存总“卡脖子”
先摆一个结论:通用进销存软件不是不能记账,而是“一种单位走天下”的思路,在这两个行业天生跑不动。布匹和钢材,看起来八竿子打不着,但它们的计量痛点非常相似——同一个货物,在不同业务环节用不同单位,单位之间又没有稳定的固定比例,导致系统容易两本账打架。
1.1 布匹行业:一米布到底多重,谁说了都不算
布匹贸易的计量“三件套”,基本就是匹、米、公斤。一匹布的传统定义相当模糊:有的地区一匹等于40码,约36.58米;有的习惯按30米一匹算;还有按60米一匹算的。更麻烦的是,坯布从织厂出来,经过搬运、卷绕、张力变化,实际米数和理论米数往往有1%~3%的偏差。再加上每匹布的幅宽、克重不同,一米布对应多少公斤,完全没有统一答案。
这导致行业里形成了一种“分环节用单位”的习惯:采购坯布按“匹”或“码”,贸易商对客户报价按“米”,针织布加工厂结算按“公斤”,月末财务做成本又按“吨”。同一个SKU,系统里如果只挂一个主单位,再怎么录都会差一头。
我之前走访过一家广州布行,仓库主管的台账按“匹”记录,采购单按“米”开,财务结算却按“公斤”。每月月底,三个人各拿一份Excel出来核对,数字从来对不上。原因是“一匹到底多少米、多少公斤”根本不是固定值——这一匹是45米,下一匹可能只有42.5米;外购坯布供应商提供的是理论米数,进过染厂定型之后,实际成品米数还要再变一次。
这正是普通进销存软件搞不定的核心:它们默认“1箱=12瓶”这种固定换算率,布匹行业需要的却是“浮动换算率”——入库时按实际数据记录米数和公斤数,而不是套用一个标准系数硬算。
1.2 钢材行业:理论重量和过磅重量,两本账都别想丢
钢材行业的计量,是两套体系并行。一套叫“过磅”,以地磅实际称重为准;另一套叫“理计”,按国家标准型钢表算理论重量。比如螺纹钢的理论重量公式是“直径的平方×0.00617”,单位是kg/m。拿20毫米直径来算:20×20×0.00617=2.468kg/m。如果一根定尺9米,理论重量就是22.212公斤。
但钢厂生产时,螺纹钢直径是有公差的,正公差20.2毫米和负公差19.8毫米,实际单根重量差别肉眼可见。所以同一批货,“过磅吨位”和“理计吨位”可能差出2%~3%。问题在于:下游建筑工地的工长根本不管理论重量,他们按“根”领料;财务按“吨”结算;销售开单按“支”报价;仓库盘库又按“件”。一本账要同时切换四个单位,普通进销存的固定换算率在这里基本失灵。
钢材批发常见的业务流是这样:采购时,钢厂或上游贸易商的发货单按“吨”开,备注了多少支;销售时,客户跑单按“支/根”报价,出库单按“支”出,但开票结算金额要按“吨”折算;库存报表月末需要同时体现“多少吨”和“多少支”。如果系统没有双单位显示和灵活换算能力,这些操作就只能退回Excel手算,数据一层层转手,错了都不知道错在哪。
2. 多单位功能的底层逻辑:固定换算率、浮动换算率、双单位并行
聊完行业现状,再来拆解多单位功能到底怎么设计才够用。很多人以为“多单位”就是给商品多设几个单位,录单时切换一下而已。真落地过就会发现,单位切换只是表面,关键是搞清楚三种底层关系:固定关系、浮动关系、双单位显示。
2.1 先分清“单位之间的关系”到底是哪种
第一类关系,是数学上恒定的固定换算率。1吨=1000公斤,1米=0.9144码,1件=10支。这类用固定率就行,系统里维护一次,全流程都能自动折算,不会出错。
第二类关系,是业务上约定的浮动换算率。一匹布等于多少米,跟随实际到货情况浮动;一根钢材等于多少吨,跟随规格公差和过磅结果浮动。这类数据没法在商品档案里写死,必须在每一次出入库时按“主数量+辅助数量”双录,才能保证账面真实。
第三类关系,是“双单位并行”的展示需求。同一个库存,既要看吨数,又要看支数;既要看米数,又要看公斤数。这类需求需要系统支持“多单位列”报表,而不是临时切换。
易特进销存的多单位功能,在我看来就是把这三类需求分开处理:档案里定好主单位和默认辅助单位,单据上允许同时录入两个数量,报表里按需要展示多口径数据。不强制你二选一,也不要求你用一个系数套死所有业务,这个思路是对路的。
2.2 双单位录入:主数量和辅数量不能顾此失彼
实际操作中,最影响体验的细节就是单据上的双单位输入。很多进销存软件所谓“多单位”,其实是“切换版”——选单位A就只能在A下面输数量,选单位B就看不到A了。这在布匹、钢材场景里非常难受。
比如布行采购入库,供应商送货单写“布200匹,总米数8600米”,系统里应该能在一行记录里同时输入“匹=200”和“米=8600”,然后自动反算这一批的综合换算率是43米/匹。下一次来的货可能是“50匹=2050米”,换算率41米/匹,系统也不该拿上次的43去硬折。
钢材行业同理。采购过磅单上写着“螺纹钢20#,支数300支,过磅重量68.5吨”,系统中就要能输“300支=68.5吨”,同时反算单支重量约228.33公斤。销售时按“支”出库,系统自动按批次单支重量换算成吨数,这样月底账面上,吨数和支数都不会凭空冒出来。
所以,选型或者给客户做方案时,一定要问一句:这个多单位,到底是“切换单位”还是“双单位并存录入”?只有后者,才是真正能治计量难的产品。
2.3 单价与成本在多单位下怎么联动
布匹和钢材行业还有个绕不开的细节:单价要用哪个单位。布行客户报价常说“每米多少钱”,但上游采购可能是“每公斤多少钱”;钢材销售按“每支多少钱”,财务成本却要变成“每吨多少钱”。如果系统在单价联动上做得不聪明,销售录单时还得自己掏出计算器来折算,那就失去了多单位的意义。
合理的设计是:录单时,单价可以按当前录入单位来填,系统自动换算成主单位成本。比如以“公斤”为成本单位入库时,输入“28元/公斤”,系统同时记录“米”单位的参考价;出库时客户要按“米”报价,售价栏可以直接填“8.5元/米”,而利润计算时系统会把成本按同一批换算率折算到“米”上来对比。
这里还要注意一个易错点:如果按辅助单位录单价,一定要带上批次换算率,不能拿商品档案里的默认率去算。否则库存金额会跟实际采购成本脱钩。这也是为什么很多老财务宁可手动算一遍,也不太信任软件的自动折算——因为早期软件就是这么坑他们的。
3. 布匹贸易场景实操:从建档案到月末对账,一张流程图说人话
光讲原理不够,来点能直接照抄的设置方案。下面这套是我在给布行客户落地多单位功能时常用的配置,同样是“米”和“公斤”并存的典型场景,做面料、坯布贸易的都可以参考。
3.1 商品档案怎么设:以“米”为主单位,“公斤”为辅助单位
新建商品档案时,建议把“米”设为主单位,“公斤”设为固定辅助单位,“匹”设为浮动辅助单位。为什么这么做?因为“匹”在采购环节只是一个包装和批次概念,到了库存和财务环节,真正有确定性的是“米”和“公斤”。
如果商品有稳定的幅宽和克重,可以在档案里维护一个理论换算率作为默认值:1米=幅宽×克重/1000公斤。比如幅宽1.5米、克重180g/m²的布,理论值1米=0.27公斤。但这个值只是默认值,实际入库单据还是要按供应商数据调整,不能当成铁律。
品名里也建议带上规格描述,比如“涤纶平纹布 1.5m/180g”,这样在单据上看到名称,就能大概知道该用哪个理论换算率,减少选错单位的机会。
3.2 采购入库:整匹进、按米/公斤双记
布行入库时最典型的错误,是只在系统里录了“匹数”,米数和公斤数都懒得输。结果账上有203匹,实际仓库里那203匹到底多少米、多少公斤,完全是个黑盒。等到销售开单,才发现库存米数不够,但实际库里明明堆着货。
正确操作是:采购入库单上,一行商品同时录入“匹数=50”和“米数=2240”,系统自动按双单位反算。如果供应商同时给了总重量,就把“公斤数=604.8”也补上,形成一组完整的双单位记录。这样一来,后续所有销售、盘点、报表,都能同时从米数和公斤数两个口径追溯。
这里有一个实操建议:如果当天入库的布匹特别多,逐行输双单位太累,可以让仓管先按供应商送货单Excel批量导入,系统按规格自动匹配默认理论换算率,然后人工抽查几匹过磅校验。既保证效率,又不牺牲准确性。
3.3 销售出库:零剪、整匹、按公斤客户都能应对
布行的销售出库,通常有几种情况:客户要“500米”,仓库按零剪出库;客户整匹拿货,出库时按“匹”出并折算米数;还有印染厂客户直接要“300公斤”,此时就要从库存中按辅助单位“公斤”扣减。
多单位功能要支持的,就是在同一张出库单里,同时显示“本次发货多少匹、多少米、多少公斤”。尤其碰到客户指定米数、但仓库实际只能整匹出的时候,系统应该能提醒“当前库存剩余散数不足,是否从整匹中剪零”或“整匹出库会将剩余零数挂账”,避免库管凭感觉操作,月底出现负数库存又找不到原因。
销售退货也是同样的逻辑:客户退回来的是两匹半布,退货单上要能体现“2.5匹”和“实际105米”,并且按入库时的批次换算率回冲库存米数和公斤数。如果退货单只会按主单位回冲,那公斤口径很快就会失真。
3.4 库存报表:一表看双口径
月末最关心的报表,其实就是一张表:每个布种,现有多少匹、多少米、多少公斤,以及对应的库存金额。多单位报表应该可以按“主单位数量”“辅助单位数量”“加权平均换算率”三列展示。
如果软件只显示米数,老板看仓库会觉得“没多少货”;只显示公斤数,业务员又没法判断可卖米数。所以正确做法是,把双单位同时打出来,再由系统自动折算一个综合换算率,方便快速了解这一批货的“密度”。折算率异常大的,往往就是规格录错或者单据录错,这也是一个很好的数据校验抓手。
4. 钢材批发场景实操:重量和支数两手抓,库存才不糊涂
钢材行业里,我见过太多老板的“账外账”:系统里只有吨位,自己另外拿个本子记支数;或者反过来,销售只记支数,月末进货吨位跟销售支数对不上。多单位功能如果配置得当,这套外账完全可以并进系统。
4.1 商品档案理单重:先维护理论值,再允许实绩修正
钢材商品档案建议设置为:主单位“吨”,辅助单位“支/根”,默认换算率按理论单重计算。比如直径12毫米螺纹钢,理论单重=12×12×0.00617=0.888kg/m,按9米定尺算,一根=7.992公斤,就维护成“1根=0.007992吨”。
但一定要在单据层允许修正。实际采购过磅后,如果一批货300根总重2.38吨,系统里就会形成“本批单支实际重量≈7.933公斤”的回写值,后续出库调用这个批次的实际单支重量来折算,而不是继续用档案里的0.007992。这样累计出来的库存吨位,才跟过磅单对得上。
4.2 过磅采购与理计库存如何衔接
钢材采购入库有两种方式:一种是按过磅单录入,录入时填“根数”和“过磅重量”;另一种是按理计结算,录入时填“根数”和“理论重量”。多数贸易商两种结算方式都会遇到,所以系统中要区分“重量口径”。
我的建议是:库存统一按“吨”作为主计量单位,但每一行库存记录带上“重量口径”字段:过磅/理计。同一批货,要么全部按过磅入,要么全部按理计入,最怕的就是混着入。财务做成本核算时,过磅货按实际采购单价算,理计货按理计单价算,最后报表里可以把两个口径的吨位分开展示,也可以给一个总合计。
很多老会计会问,那公司赚的其实是过磅和理计之间的差额,系统怎么体现?这笔账不要指望进销存替你算死,但它可以把根数、过磅吨位、理计吨位三个数据都留下来,月末导出Excel,财务自己套公式就能算出盈亏,不需要再靠人工翻磅单了。
4.3 销售按根出库,报表按吨汇总
销售环节,最顺手的操作是“按根/支”开单。客户电话过来说要“20支20厘螺纹钢,9米定尺”,业务员在销售单上输入“数量=20支”,系统按该批次的单支重量自动折算成吨数,显示在金额列旁边。单价可以按“支”填,也可以按“吨”填,系统自动联动。
这样到月底,销售汇总表里“按支”的销售数量和“按吨”的销售额同时存在,库存表里扣减的吨数和支数也都正确。不会再出现“合同签了100吨,结果仓库清点只剩80根,折算一下根本不够”的尴尬。
4.4 盘点差异和损耗处理
钢材库存盘点,实物只能一根一根数根数,但系统账面是吨位和支数并存。合理的盘点流程是:实物盘完支数后,按批次实际单支重量折算成吨位,再跟系统吨位比对。如果差出1%~2%,通常不是数量少了,而是单支重量有公差,这时候调整批次单重即可;如果差出5%以上,就要查是不是有串规格、漏记账甚至丢货的问题。
多单位功能在这里的价值,是让盘点的“支数”和“吨数”两条线都能对账,而不是只对一条线,另一条靠猜。实际肉搏过的同行应该都懂,钢材堆场盘点最痛苦的不是数数,而是“数对了根数,重量还是对不上”。
5. 实操中的高频坑与排查方法
功能再强大,用不好也是白搭。下面这五个坑,是我在多单位功能的实际落地中见过最多的,逐个拆开讲,附解决办法。
5.1 换算率永远“差一点”:浮动换算率的正确写法
固定换算率只能用于米/码、吨/公斤这种恒等关系。一旦涉及匹/米、根/吨,就必须用浮动换算率,在每一张出入库单上单独记录双单位数量。很多实施顾问图省事,在商品档案里写死“1匹=45米”,结果某批货实际只有43米,月底库存米数虚高,业务按系统报价发现“货不够卖”,影响非常实际。
正确建议:默认换算率可以用来做开单时的预填充,但单据保存前,必须允许仓管手改实际米数。宁可多录一步,也不能让系统自动背锅。
5.2 四舍五入和精度设置:小数位不是小事
布匹的公斤数保留几位小数,钢材的单支重量保留几位小数,看似小问题,一旦单据量大了,误差会累积到足以让成本对不平。我在钢材项目里遇到过:一根22.212公斤的螺纹钢,系统只保留两位小数,1000根下来就差了12公斤。看起来占总量的0.05%,但财务月末差额就是从这个缝隙漏出来的。
多单位相关的重量、长度、数量字段,建议统一保留3~4位小数;金额字段保留2位。库存数量精度和金额精度分开设置。别嫌界面啰嗦,后期对账会省心很多。
5.3 负库存和零剪单:先定规则再开放权限
布行零剪销售很容易出现负库存:账面上还有“整匹”40米,但客户要50米,库里剪完这匹只剩-10米。如果系统禁止负库存出库,业务会被卡住;如果完全放开,又容易乱账。
我的建议是:允许“有条件的负库存”——当负库存出现在辅助单位上而主单位库存足够时(比如整匹布还没拆封,按匹数充足),系统可以放行;但当主单位本身不足时,必须强制走采购订单或销售预订流程。这个规则,最好在系统参数里按商品类目单独配,不要一刀切。
5.4 报表口径不一致:同是“库存”,米数口径别跟公斤口径打架
多单位报表的统计口径,要明确是“按主单位折算”还是“按实际辅助单位汇总”。比如库存表里“公斤合计”这一列,如果有的行按实际双单位记录汇总,有的行按档案默认换算率折算,就会导致同一商品两条线对不上。
最稳妥的办法是:当期所有出入库单据都按双单位记录,报表辅助单位列直接取“辅助单位数量之和”。如果某个老账期只有主单位数据、没有辅助单位数据,报表上就别硬折,留空反而比留错好。这一点跟财务对账的时候要提前打招呼,避免被当成系统bug。
5.5 批次与货位管理:多单位不和批次挂钩,早晚串账
布匹不同批次的实际米数差异、钢材不同批次的实际单重差异,决定了多单位功能必须和批次管理配合,才能精准核算。如果库存不按批次,只按商品汇总,那同一个品名的货,今天是43米/匹,明天是45米/匹,销售出库到底按哪个折算?随便选一个,结果都是错。
正确做法是:商品档案设置默认率,但库存明细按批次维度记录实际换算率。出库时如果指定批次,就按该批次的实际单重折算;如果不指定批次,按“先进先出”自动带出批次单重。这样无论怎么卖,月底账面上的吨数、支数、米数都有迹可循。
多单位功能这个东西,听起来只是一个“字段设置”,真正跑起来才发现,它牵一发动全身:档案怎么建、单据怎么录、报表怎么出、批次怎么跟,环环都影响最终账实相符。我给布行和钢材贸易公司做过几轮多单位落地后,最大的体会就是——软件只提供了一把好用的尺子,但每个行业到底该量哪条边、怎么读刻度,还是要懂业务的人自己把它定清楚。这篇文章里的配置思路和坑,都是从实际项目里一点一点趟出来的,你照着设置也许不能覆盖所有细节,但至少能把最常出问题的几个口子堵上。如果你也在用类似进销存解决多计量问题,先把换算率的口径和历史数据的精度对齐,再谈功能进阶,这步做扎实了,后面基本不会有大坑。