📺进销存商品收发明细查询表设计要点

本文就数字化进销存项目中商品收发明细查询表设计思路与要点展开叙述

一个故事

看一个系统不能只看表面功能,关键还是要亲自试用。几年前我曾为公司定制过一套系统,当时有一个明细表功能,只能逐个商品查询,不支持多商品批量操作。我提出增加多商品查询功能,但开发方因涉及更复杂的设计逻辑而拒绝了这一需求。

后来我意识到,花3W打造的系统实际上只是一个半成品,无法真正提升工作效率,最终我决定叫停项目。

正因如此,我特别强调:多商品查询功能至关重要。有了它,用户在需要打印、导出数据时,才能一次性完成查询与输出。数字化的核心目的是提升效率,如果系统无法带来实质性的效率改善,那它的价值就大打折扣——甚至不如不用。

加权平均单价计算方法:

加权平均单价 = (期初结存金额 + 本期累计入库金额)÷(期初结存数量 + 本期累计入库数量)

效果展示

优化版

视频演示

实现方法

整体实现思路比较简单,难点在于多实现多商品查询功能

基本思路

  • 取期初
  • 取本期
  • 表内计算
    • 通过辅助表与Excel函数计算出需要的数据

设计方法

进销存以及其他进出相关的系统,原理是相通的,就像本模板中结存数量本质上还是期初+本期入-本期出得出的值,难点是取期初值并匹配到对应行,这里使用了IF判断,单据类别为期初余额时,那么本行数量就显示为Y13期初值,Y13值来自取值公式,筛选条件是小于查询起始日期。

上面举例是从最终需求倒推出设计方法的,如果是倒推一步无法实现,那就再倒推一步,直到能够在现有平台功能实现为止。如果一次倒推无法实现,那就需要换种思路继续倒推。然后再反过来一步步设计,例如上面的例子,按钮中公式顺序就需要先执行取期初,再执行其他操作完成需求的数据。

这里其实还有一个同样的问题,是上次结存数量,使用同样方法倒推,这步实现过程还使用了辅助表实现。过程比其期初复杂一些。

获取上一笔结存的方法

这里使用了一个辅助表的方法

辅助表用来存储与用户表完全相同的行数据,通过取值公式获取值填写到用户表辅助字段,

复制用户表到辅助表

复制用户表到辅助表

获取上一笔值

获取上一笔值

有了唯一序号值,使用经典的Excel函数INDEX+MATCH组合,就能获取到不同商品的上一笔数量、金额等数据了

设计小技巧

刚开始设计时筛选条件要从简单到复杂,写公式时忽略非必要主表字段,例如本模板中日期为主要条件,其它条件可以在数据流走通后再添加。

  • 允许用户多选的位置需要设置字符长度,

相关文章

© 版权声明
THE END
喜欢就点赞吧
点赞10 分享