现有一项目,在做新单据的时候存在以下问题:单据信息分为两张表来存即主从表。新增保存单据的思路:
1、新增单据时取出主表里的最大的单据号码加1,生成新单据的号码2、保存时再取出主表中的最大的单据号加1,看是不是相符,相符直接保存,不相符提示用户单据并发,给出刚取出的值现在使用过程中,发现,号码会重!

解决方案 »

  1.   

    我个人觉得在添加的时候可以不显示单据号码。在保存时用事务应该可以解决这样的问题吧。
    我原来用过一个笨方法。就是在表中有一个标示字段。记录一下状态。不过这个方法不好。如果客户
    出现死机就无法再把标示更改回来。所以不好。
      

  2.   

    我就是使用事务来处理的!
    但还是会出现记录重复!另外一个很重要的原因:客户的网络有问题,存在有时连得上有时连不上的问题!这个问题,我觉得是因为网络延时造成的!但怎么来捕获这个错误呢?
      

  3.   

    可以用事件每隔几秒钟查询一次最新的单据号码,最好在保存的时候再确定最终的单据号码,我就是这样解决的,不知道是不是好办法。请指教。
      

  4.   

    设置唯一字段,保存时检查是否唯一编码,是保存,不是提示... ...
      

  5.   

    保存时才生产编号就不会有这个问题了
      

  6.   

    在保存时才生产编号就不会有这个问题了
    同意这个
      

  7.   

    在保存时才生产编号就不会有这个问题了
      支持
      

  8.   

    主只有这样了
    保存时才生产编号
    这样可能用数据库的事务来保证!