

图4.1 入库单界面
说明:一件商品入库,先在入库表中登记,在查询库存表中是否有此商品,并且是否退货入库,不是则警戒量和库存量都增加,是的话只有库存量增加。界面如图4.1
4.2.2商品销售模块
当有商品被选中时,需要登记销售单,首先把ADOQuery3的语句清空,在ADOQuery3中加入SQL语句,在销售表中填写有关的记录,当销售表中填写的记录与库存表中的记录都符合时,即当在库存表中找到有关记录,ADOQuery3进入编辑状态,并将库存中的商品记录的数量相应减少,柜台量相应减少,同时将商品价格算出来告诉购买者需要支付多少钱,其中商品价格等于商品单价乘以商品数量;当输入的商品错误时提示“柜台上无此商品,请重新输入”,并将清空销售临时表,具体代码如下:
ADOQuery1.Fields[5].Value:=FloatTOStr(ADOQuery1.FieldByName('单价').AsFloat*ADOQuery1.FieldByName('数量').AsFloat);
//商品价格等于单价乘以数量
ADOQuery2.Fields[5].Value:=FloatTOStr(ADOQuery2.FieldByName('单价').AsFloat*ADOQuery2.FieldByName('数量').AsFloat);
//商品价格等于单价乘以数量
Edit8.Text:=floattostr(strtofloat(Edit8.Text)+ADOQuery2.Fields[5].Value); //统计本次销售价格
else application.MessageBox('柜台上无此商品,请重新输入','提醒',MB_OK+MB_Iconquestion); //当输入的商品错误时提示
showMessage('谢谢您光临本超市,您的本次消费金额为: '+Edit8.Text+' 元,找回: '+floattostr(Strtofloat(Edit9.Text)-Strtofloat(Edit8.Text))+' 元,欢迎下次再来!');
图4.2 销售单界面
4.2.3商品库存模块
一件商品不论是入库还是出库,都会在入库表或出库表中登记,在商品库存统计表中将显示当前所有的库存情况包括商品名称、入库日期、当前剩余量、操作人等。当查询的类别不是“全部”时,把ADOQuery1的语句清空,在ADOQuery1中加入SQL语句,查询记录按警戒量升序排列;当查询的类别是“全部”时,将全部显示所有类别的商品。具体代码如下:
if ComboBox1.text<>'全部' then //当查询的类别不是“全部”时
ADOQuery1.SQL.Clear; //把ADOQuery1的语句清空
ADOQuery1.sql.Add('select * from Storeb'); //在ADOQuery1中加入SQL语句
ADOQuery1.SQL.Add ('where '+Q_chr);
ADOQuery1.SQL.Add('order by 警戒量 ASC'); //查询记录按警戒量升序排列
图4.3 销售管理界面
说明:一件商品不论是入库还是出库,都会在入库表或出库表中登记,在商品库存统计表中将显示当前所有的库存情况包括商品名称、入库日期、当前剩余量、操作人等。除此以外,当库存量小于40时,将该货物以红色字体显示以告示管理人员库存量不够,要及时进货,由此解决了资源供需关系的平衡。界面如图4.3。
图4.4 用户管理界面
说明:用户管理将对当前用户的密码和用户状态进行修改,每个人只能更改自己的密码,没有权利去更改他人的密码。界面如图4.4。转贴于 酷文网-论文下载中心 http://www.coolwen.net