一个残缺的仓库管理系统 有点问题 想解决掉入库单提交后 库存数量变成加上入库单的数量 现在的情况是 一提交入库单 库存数量就变成0 以下是这一小部分的代码//入库时先检查在库中某一位置是否存在该物品selstr:='select * from store_info where '+'pro_code='''+ComboBox2.Text+''' and place_code='''+ComboBox5.Text+'''';if store.StoreRec(selstr)=false thenbegin//如果不存在,就将本次入库物品的信息插入库存信息表中instr:='insert into store_info(pro_code,store_pro_num,unit,place_code'+')values('''+edit1.Text+''','''+SpinEdit1.Text+''','''+ComboBox3.Text+''','''+ComboBox5.Text+''')';store.StoreRecInsert(instr);endelsebegin//如果存在,就需要将原有数量与本次入库数量相加,并将库存信息表中的数量更改为相加的结果pro_num:=strtoint(pro_numed.Text)+strtoint(store.GetStoreNum(selstr));modstr:='update store_info set STORE_INFO.STORE_PRO_NUM='''+inttostr(pro_num)+''' '+' where pro_code='''+ComboBox2.Text+''' and place_code='''+ComboBox5.Text+'''';store.StoreRecUpdate(modstr);end;
如果修改以上代码不能解决问题 希望大神们能留一个小号邮箱 一个单元的代码修改 不是很麻烦的 希望能帮忙 十分感谢

解决方案 »

  1.   

    提交入库单后,再执行一下查询库存的SQL语句。
      

  2.   

    看看有没有写trigger
      

  3.   

    你这个问题的意思是,入库单提交后就是过账后 仓库的库存数量本来应该增加单 现在没有增加吗? 这应该你的写判断存在不存在有关系 注意 字符的 空格 null值等 。
      

  4.   

    入库时先检查在库中某一位置是否存在该物品selNum:=GetQuantity('select 数量 from store_info where '+'pro_code='''+ComboBox2.Text+''' and place_code='''+ComboBox5.Text+'''')判断selNum是否为0如果不存在,就将本次入库物品的信息插入库存信息表中instr:='insert into store_info(pro_code,store_pro_num,unit,place_code'+')values('''+edit1.Text+''','''+SpinEdit1.Text+''','''+ComboBox3.Text+''','''+ComboBox5.Text+''')';store.StoreRecInsert(instr);endelsebegin//
    如果存在,就需要将原有数量与本次入库数量相加,并将库存信息表中的数量更改为相加的结果pro_num:=strtoint(pro_numed.Text)+selNumupdate store_info set STORE_INFO.STORE_PRO_NUM='''+inttostr(pro_num)+''' '+' where pro_code='''+ComboBox2.Text+''' and place_code='''+ComboBox5.Text+'''';store.StoreRecUpdate(modstr);end;
      

  5.   

      楼主,应该刚做仓库管理系统。
      从编程来看,就是无库存记录时,就新增一个库存记录;
                      有库存记录时,就修改追加库存余额数。
      中间可能遇到了null等问题,造成数据错误。  楼主这样的写法,是最简单库存写法,适合单机版应用。
      根据出入库单据直接修改库存余额表,
      好处,算法确实好简单。
      缺点,如果多人操作,一人录入入库单、另一人录入出库单,
            那么两人同时操作,后人覆盖前人的数据,就有可能了。
            所以,直接更改数据比较危险!处理不好的话不可逆!  可能有仓库表、商品表、出入库单、库存表(store_info),
      其他表(如库存明细表、结账表)都省略了。
      
      

  6.   

    同意7楼的说法,先检查一下物品存不存在,存在的话,再检查一下你的pro_num变量,我看你的update语句,直接就等于pro_num了,不知道你的pro_num是不是在update前是什么值,有可能这个pro_num本来就是0