重新发一下表,省着大家看的费劲!药品信息 生产厂家信息 供应商表 药品剂量 药品类型_1
-------- ----------- --------- --------- -----------
药品ID 生产厂商ID 供应商ID 剂量ID 类型1_ID
药品名称 厂商名称 供应商名称 剂量名称 类型1_名称
药品别名 (例如片, (例如中药、
药品编码 瓶,支等) 中成药、西药)
拼音码
库存表 入库明细 出库明细 药品类型_2
---------- ----------- --------- -----------
批次号 入库单号 出库单号 类型2_ID
药品ID 批次号 批次号 类型2_名称
生产厂家ID 入库数量 出库数量 (例如麻毒类、精神类、贵重药品类等)
供应商ID 入库日期 出库日期
进价 入库类型
批发价 (例如药房退药,
零售价 药品购入)
有效期
数量
规格
to kelph设计简单? 都差些什么信息?我现在想和大家讨论的主要是对库存数量的记录我知道还要有药库到药房的一些设计,这些我没有写出来除了这个,还差什么信息么?
编码不能重, 拼音码肯定能重的
2.药品出入库数量的记录问题,例如入库了青霉素药品10箱,1箱=40盒,1盒=5ml*6支
这个记录我该怎么记录到库存中?单独记录箱数、盒数或者支数好像都不太合理,
我的药品剂量表其实就有些为这个数量记录提供服务的意思,但我有些想不清楚了!
所以在库存中,只是很模糊的写了一个数量和规格字段!
--
在药典里要保存不同单位间的换率,一般有三级就行,在库存里以最小单位保存
to happyflystone是HIS部分我要问的是我设计了编码和拼音码两个字段,这两个字段是否都有必要?
to miller3000你的意思我大概了解了,感谢你的回复!
在库存记录中,前面我们都讨论到了数量和单位,但是还有一个规格好像也是必须的!如果按照你所说的,我举的那个例子:青霉素,10箱,1箱=40盒,1盒=5ml*6支 是否应该以支为基本单位记录,然后记录数量10*40*6=2400,规格就应该是支的规格了吧,为5ml/支然后我可以拼串将他们之间的换算关系和单位名称传到库里如换算关系字段存:240%6,单位串字段:箱%盒(%是区分两个单位的字符)当然也可以不拼串,另建表
我这样理解可以不?总觉得怪怪的!
to zbc1009那你最终显示在页面上的也是最小单位所代表数量么?例如青霉素如上10箱,1箱=40盒,1盒=5ml*6支现有10箱,那你显示在页面上的时候,显示的是10箱还是2400支?如果是整数我也不担心,我担心的是在出入库多次后,剩下在库存中的不一定是整数单位了!例如我出了30盒青霉素,那库存就有9箱零10盒,这在页面上我怎么显示?显示最小单位?还是9箱零10盒?
如果按后面的显示方式,那如果药房又退给库房3支,那就变成了9箱零10盒3支,换算起来够麻烦的!所以我想想就头疼,但却也不知道这样的事情是否可能发生!发生了该如何解决!
呵呵,我是不是想太多了! 总之多谢各位帮忙了!讨论继续 :)
-------- ---------------------------------------- -------------------- ---- ---- ---- ---- ---- ------ ------ ---- ---- ---- ---------- ---------- ---- ------------ ------------ ---- ------------ ------------ ---- ------------ ------------ ---- ---- -------- -------- -------- ------------ -------- ---- ---- ---------- ---- ---------- ---- ---- ----- ------------ ------------ ----- ------------ ------------ ----- ------------ ------------ ---- ---- ------- ------- ------- ---- ---------- ------------------ ----
110001 青霉素钠针 80万 0158 01 01 01 01 1 NULL NULL 0101 0101 1 1 支 .3200 .4400 支 .3200 .4400 支 .3200 .4400 NULL 01 NULL qmsnz gfgqq NULL 110001 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101010100000001 01
110003 氨苄青霉素钠针 0.5g 0309 01 01 01 01 1 NULL NULL 0101 0101 1 1 支 .4200 .5500 支 .4200 .5500 支 .4200 .5500 NULL 01 NULL abqmsnz ragfgqq NULL 110003 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101010100000003 01
110004 哌拉西林 0.5g 0158 01 01 01 01 1 NULL NULL 0101 0101 1 1 支 .6400 1.6500 支 .6400 1.6500 支 .6400 1.6500 NULL 01 NULL plxl krss NULL 110004 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101010100000006 01
110005 硫酸链霉素针 1g 0301 01 01 01 01 1 NULL NULL 0101 0101 1 1 支 .5000 1.0000 支 .5000 1.0000 支 .5000 1.0000 NULL 01 NULL lslmsz dsqfgq NULL 110005 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101040000000001 01
110006 氯霉素针 0.25g*10 0118 01 01 01 01 1 NULL NULL 0101 0101 10 1 盒 1.3500 4.0000 支 .1350 .4000 支 .1350 .4000 NULL 01 NULL lmsz rfgq NULL 110006 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 NULL 01
110007 硫酸卡那霉素针 50万*10 0301 01 01 01 01 1 NULL NULL 0101 0101 10 1 0102 1.8000 2.5000 支 .1800 .2500 支 .1800 .2500 NULL 01 NULL lsknmsz dshvfgq NULL 110007 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 NULL 01
110008 丁胺卡那针 0.2g*10 0196 01 01 01 01 1 NULL NULL 0101 0101 10 1 0102 16.0000 16.0000 0103 1.6000 1.6000 支 1.6000 1.6000 NULL 01 NULL daknz sehvq NULL 110008 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101010300000002 01
110009 庆大霉素针 8万*10 0301 01 01 01 01 1 NULL NULL 0101 0101 10 1 盒 1.2000 1.6000 支 .1200 .1600 支 .1200 .1600 NULL 01 NULL qdmsz ydfgq NULL 110009 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101010300000001 01
110010 头孢唑啉 0.5g 0161 01 01 01 01 1 NULL NULL 1 0101 1 1 支 1.8000 1.8000 支 1.8000 1.8000 支 1.8000 1.8000 NULL 01 NULL tbzl ubkk NULL 110010 1 1 NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL NULL 1 甲类药 101010200000002 01
药品id是内码是电脑用的,编码主要是满足行政管理或法规规定的,拼音码(或是助记码)是满足录入易记的,主要根据医生的习惯来定.
应该保留!2.药品出入库数量的记录问题,例如入库了青霉素药品10箱,1箱=40盒,1盒=5ml*6支
这个记录我该怎么记录到库存中?单独记录箱数、盒数或者支数好像都不太合理,
我的药品剂量表其实就有些为这个数量记录提供服务的意思,但我有些想不清楚了!
所以在库存中,只是很模糊的写了一个数量和规格字段!
可作一层级结构表,专门记录此结构.至于记录那可数,主要根据医院的习惯来定.
---------------------------------
均要保留,前面各位的回答已經解釋了。2.药品出入库数量的记录问题,例如入库了青霉素药品10箱,1箱=40盒,1盒=5ml*6支
这个记录我该怎么记录到库存中?单独记录箱数、盒数或者支数好像都不太合理,
我的药品剂量表其实就有些为这个数量记录提供服务的意思,但我有些想不清楚了!
所以在库存中,只是很模糊的写了一个数量和规格字段!
---------------------------------
這個問題是任何進銷存系統均存在的。
a. 可以設置一個單位組表.
單位組表 字段:編碼(主鍵),單位組名稱,.....
示例數據 UG01 **1類產品單位組
UG02 **2類產品單位組
b. 單位表設計如下:
單位表 字段:編碼(主鍵), 名稱, 所屬單位組編碼, 換算係數,.....
示例數據 01 盒 UG01 1
02 箱 UG01 40
03 支 UG02 1
04 盒 UG02 10
c. 產品表應設計如下:
產品表 字段:產品編碼(主鍵),拼音碼,單位組編碼,計量單位,常用單位,......
示例數據 M001 qms UG01 01 02
注:單位組表示此產品應該使用哪個單位組的單位,計量單位表示此產品的計量方式(通常是最小單位,也就是單價單位),而常用單位則是經常使用的單位.進行單位轉換時,需要從單位表中讀取換算係數進行換算. 產品的單價應以計量單位來計. d. 庫存表設計
庫存表中的單位一律以計量單位來保存,在程序中要顯示其他單位時,可以通過讀取換算係數來轉換.
大家早啊,继续此话题吧!我昨天晚上最后的发言在27、28楼,大家可以上去看一下,给些意见!
现在记录一个最基本的单位,或者说一个最小单位,然后通过换算关系来统计查询好像已经确定了,大家对这点有疑问没?
可这个换算关系的记录,我不论是定死三级(如箱->盒->支)、更多级或者动态的让用户添加这个层次换算关系对于用户来说,使用好像都不是很方便!大家给些意见!
对于用户来说,使用好像都不是很方便!
------------------------------------------
參考我在35樓的發言,通過使用單位組來解決.單位組中的單位不限數量,可以解決此問題.
使用單位組,雖然相對在設計上麻煩一點,但在架構上比較合理
35楼 感谢你的信息不过我对你的b答复有些疑问你的单位组表我看不明白,好像不是很明确不过根据你上面的思想,我现在这样设计,大家也看看是否合理!
单位表:单位ID,名称如 01 支
02 盒
03 箱
04 瓶换算表:换算ID,批次号,小单位,大单位,换算系数如 0001 20080311 01 02 6
0002 20080311 02 03 40
0003 20080311 01 03 240我在库存表记录最小单位的ID,比如01,通过批次号与系数关联起来,怎么样?
1、在商品属性表中应该至少包含这么3列:商品ID,标准单位,最小单位
2、应该有商品换算表,包含这么3列:商品ID,单位,数量(将本单位转换成最小单位的数量,包含最小单位,即有一行数量为1)
针对你的问题:
1、库存表中存入的应该是最小单位的数量。
2、所有的输入、报表输出(含当前库存报表)缺省按照标准单位进行,但可以由用户界面选择单位,这就意味着有小数,这是正常的。
3、对于你说的多种单位同时显示的情况,应该在极端报表下采用,作个函数吧,类似于人民币小写转大写。
to JiangHongTao 你所提到的标准单位我感觉很必要,这样一般情况都按标准单位来显示,就很方便了
我在上面所说的例子,如9箱零10盒这样的情况肯定是存在的不过那时候我不确定用小数来显示是否合理因为我感觉库存数量应该要准确,其最小单位的数量肯定是一定的整数,如果用小数显得不精确了!这是我的想法,但你说有小数正常,真的么?呵呵我没做过库存类的,第一次要做,大家多提供些思路 :)
商品属性表:商品ID、单位模式ID、.......
单位组:单位模式ID、单位模式名称、标准单位、最小单位。
单位换算表:单位模式ID、单位名称、数量。但我觉得计量单位作为存储数量的单位可能在极端情况下有些小麻烦。
比如:1箱=6盒=6支,如果盒作为计量单位,则存在计量单位对应的数量(库存还剩2支)为小数并且除不尽,导致在数据库中存储的是约数,这必然导致不精确。
所以还是建议用最小单位作为存储单位。
引用 41 楼 Hewitt_Han 的回复:to JiangHongTao 你所提到的标准单位我感觉很必要,这样一般情况都按标准单位来显示,就很方便了
我在上面所说的例子,如9箱零10盒这样的情况肯定是存在的 不过那时候我不确定用小数来显示是否合理 因为我感觉库存数量应该要准确,其最小单位的数量肯定是一定的整数,如果用小数显得不精确了! 这是我的想法,但你说有小数正常,真的么?呵呵 我没做过库存…
[/Quote
还是用我的例子数据,正常情况下肯定是用盒(不拆零卖)作为单位。
假设库存数量是10盒,这是仓库盘点,结果盘亏2支怎么办。
我想理解你的意思,可是理解不上去呀!
--------------------------------
單位組的意思,就是保存某一類產品(甚至衹是一個產品)的換算關係.
假設產品X是一盒5支,產品Y是一盒10支,這個關係如何保存?使用單位組則較好的解決了這個問題.
你可以定義兩個單位組A和B.
A單位組和B單位組中都有兩個單位:盒,支.
那么在單位表中,應該如下:
編碼(主鍵),名稱,所屬單位組編碼,是否默認單位,換算係數,.....
01 支 A 是 1
02 盒 A 否 5
01 支 B 是 1
02 盒 B 否 10現在將X產品的單位組設為A,也就是說X產品的單位換算是以A單位組中規定為準,且衹能使用A單位組中定義的單位.
將Y產品的單位組設為B.不知道這樣講是否夠形象.表達不容易,呵