1,ado
2,存储过程
3,实际表
4,先取单据编号 
个人看法

解决方案 »

  1.   

    1.采用ADO吧,让你省去不少事;
    2.如果你的数据量大的话,就用存储过程,也可用触发器,这个好象无所谓吧;
    3.一般建实际表,但有些时候也要建临时表,关于这个你可以参考李维写的书;
    4.这个没有可比性,看你的设计思路了;
      

  2.   

    我现在也在作仓库管理系统
    可以说同意上面说的
    1:用ADO
    2:存储过程  不过我有时候把存储过程的语句集成到程序中 既在ADOQuery中
    3:实际表,也可以考虑临时表(临时表用本地数据库文件入DBF等,)这样可以加快速度
    4:根据个人的设计思路了
      

  3.   

    我问大家的是“设计思路”啊!
    比如:
      我以前是这样设计的,
    1、先用一个存储过程取得一个单编号,再用这个编号建一张临时表并用这个编号在主表中插入
    一条临时记录,以便占据这个编号。
    2、细表数据直接用DBGrid->Table->##临时表保存,
    3、再用一个存储过程开始一个事务,将临时表中的数据保存到细表中,并用游标进行库存表的
    修改。完成后再将主表数据Update原来的临时记录,最后结束事务。
    4、如果是修改原来存在的一张单据,则保存起来还要复杂。
      

  4.   

    还有当为每张单据做一个DLL时,
    是否每个DLL要有一个DataModal?
      

  5.   

    如果不成功的话临时表怎么处理的? 临时表是每次清空那呢还是定期清理? 
      若失败,你的事务中rollback之后是不是回临时表找编号?
     后取编号妥当一些,可以为临时表另建一个编号,exception在存取编号时出现的可能性很小,这样不会引起大量的编号空闲的问题,不成功也不要紧,只不过用掉了别的编号而已,
    这样的情况在存在大量数据的库存处理中是不好的,   不过最好也放到你同一个事务中判断,也不在乎多它一个  马都买了,鞍还配不起?
       :) 
    因此,无论是入库还是出库,还是用存储过程吧,比触发器强   bde还是ado无所谓,数据量小时bde似乎快点,不过ado也不费事
      

  6.   

    我以前做过出入库的项目,当时的思路如下:
    1.货物在数据表中的标识使用了货物名、入库单号等实现;因此,出库的时候也使用相同的标识在库存表中寻找对应的货物并检查是否能够出库
    2.入库和出库的时候,必须要对舱位进行调整
    3.在判断能否出库的时候,一般使用事务处理,即database控件的事务处理管理不过因为时间过去太久了,好多地方还要想想才记得起来。
      

  7.   

    1、ADO
    2、存储过程
    3、实体表
    4、先取单据编号