在进销存系统中如何确定单位的换算问题?(100分)

  • 主题发起人 主题发起人 xiaoyu_online
  • 开始时间 开始时间
X

xiaoyu_online

Unregistered / Unconfirmed
GUEST, unregistred user!
举个简单的例子:购进香烟时是成箱购买的,而出售时是以“条”,“包”为单位销售的
如何解决箱->条->包的换算呢?[?]
谁的办法最好,谁拿分!!
 
COME ON!!
 
在数据库设计时增加一个商品计量单位表,记录商品的所有可用计量单位,
以及相对于商品标准单位的转换关系,然后在商品信息表中增加商品标准计量单位字段,
计量单位表结构如下示例:
------------
商品编号
可用计量单位
------------//前两个字段作主键
转换关系
------------
以啤酒举例,在啤酒信息维护表中设定其标准计量单位为“瓶”,
然后维护相应的可用计量单位,如
可用计量单位 转换关系
箱 24
捆 12
这样,当你在销售时,可以在销售订单上填写瓶,也可以是箱或捆,
而不管输入的是什么单位,程序在做比较或者统计、查询、分析时,
都可以利用 销售数量*可用计量单位*转换关系=标准单位下的销售数量
的方法将所有的数据都转化为以标准计量单位为准的数据。
还以啤酒为例,销售订单中订购了100箱,也就相当于100*24=2400瓶。
 
你的意思是不是说,无论输入,输出是什么瓶,捆还是箱,在程序内部存储和运算是都
是以标准单位“瓶”为标准?
 
在普通的销售订单、采购订单等一般的业务单据内,存储什么样的计量单位没有太多关系,
只要在做相应的销售统计时别忘了用 销售数量*计量单位转换关系 就行了,因为单据是用来
给人看的,如果存储的都是标准单位,那么就分不清当时单据上写的是什么单位了,
所以没有必要在单据中都存储成标准单位,只要在统计分析时注意就可以了,这样还比较方便。
而在记库存帐和财务帐时,则必须存储为标准的计量单位,因为库存帐中的数据会有多个
地方用到,入库、出库、盘点等,如果它记录的不是标准单位,那么在做那些业务时就会比较麻烦,
单位转换个不停,很容易出错,数据看起来也不统一,不符合使用习惯。
 
一般单位有三级就完全可以表示了,
你给两个单位之间一个换算关系就行了。
存储时,根据输入单位自动换算就是了。
 
设置一个标准单位,其它单位在系统内都转换成该单位。
 
同意郭玉梁
找一个最小的单位
 
多人接受答案了。
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部