C/S进销存软件的数据库设计(可以给500)
有简单的C/S数据库软件,主要的模块有入库界面、出库界面,库存浏览、客户资料。在入库界面中录入两块内容,一是表头,包括“入库时间”、“货号”(客户编号)、“票号”(象一般入库单右上角的8为数),二是表体,包括“商品名称”,“数量”,“单价”,“金额”,象入库单一样,一个“票号”对应一个客户最多8条明细记录,如果不够8条记录,则有几条就输入几条,超过8条就把它分到2、3...等“票号”中。出库时要输入“车号”,“出库时间”,“票号”,此处的“票号”就是入库时输入的“票号”,然后把“票号”对应的明细记录自动添加到一个DBGridEh中,最后出库。如果一个“票号”有6条明细记录,出库时只出了前4条记录,就在出库界面的DBGridEh中把后2条记录删除,如果一个“票号”的第一条记录入库时是10件毛衣,而出库时只出了6件毛衣,就在出库界面的DBGridEh中把10件毛衣的记录的数量改为6件,然后出库。最后在库存浏览界面中查询库存的商品。大概的流程就是这样,每天大概有50(笔)*8(条)=400条记录。我的设计如下:
KHB(客户表):HH(客户编号,主健)、FHR(发货人)、FHRDH(发货人电话)。
KHB_RKD(客户与入库单关系表):PH(票号)、RKSJ(入库时间)、HH(客户编号,外健)。
RKD(入库单):RKD_ID(入库单编号)、PH(票号,外健)、MC(商品名称)、SL(数量)、DJ(单价)、JE(金额)。
因为能力有限,还有好多无知的地方。
1、不知出库、库存的表该如何设计,或者还要设计哪些表及关系。
2、我用BCB6+INTERBASE7.0,把IB7.0和数据库文件装到单位的服务器上,用两台工作站往数据库里输入数据,把入库、入库查询、出库、出库查询、库存查询都写成过程放到数据库的存储过程中,在客户端调用他们,所有的BQuery、IBTable都共用一个IBDatabase和IBTransaction。这样是否可以。其中应该注意些什么?
3、在入库界面中,有DBGridEh1->DataSource1->IBTable1->IBDatabase1->数据库(服务器),把做好的软件分别拷贝到2台工作站上运行,因为IBTable1在服务器上的数据库中,两人同时共用IBTable1,在输入入库数据时,在他们各自的DBGridEh1中不就可以看对方的数据了吗?我对数据感知对象、数据源、数据集、数据库、数据环境搞的是晕头转向,哪位帮我理清楚。