开发工具delphi + SQL Server
使用midas的三层结构
由于数据分开几个点保存,也就是说Depart1,Depart2,Depart3分别都用这个系统录入数据,Company是三个depart的老大,每日depart需要给company上报当日数据,company次日下发depart修改后的数据
由于depart和company,depart和depart之间都没有直接的物理线路连接,只能靠盘片交接,如何才能保持数据的一致?
即:Company= Depart1 + Depart2 + Depart3另外,如果使用数据更新的方法,如何才能只更新修改过的记录

解决方案 »

  1.   

    这样的应用多的是,b/s是有限制的,明显速度上就难以让用户接受,如果他一天要经手上完次数据更新,b/s的光是等待时间就有多少哦
      

  2.   

    clientdataset.savetofile不知有没记错名字,反正有个类似的方法,就是将从服务器下载的记录集存成xml文件用于当网络中断时,当网络正常时,可以用loadfromfile,再applyupdate。呵呵你用mo片将这个xml装进去,在总公司也做个小程序,用clientdataset将它载入,再更新即可
      

  3.   

    补充:我上面所说的xml文件可能是修改记录和原记录的集合,不包含未修改的记录。仅作提醒,具体需参考权威资料或作程序测试。SORRY
      

  4.   

    你可以用这样的方法
    下载和上传时 Data and Delta 一定包含关键在段(不会改变关键字段把)
    。。
    问题基本解决。
    祝好
      

  5.   

    物理上depart之间都是独立的,所以,不能像做分布式系统一样,因为根本没办法保持子点的数据都是相互可以交流的。
    那上传的时候用是否上传字段判断是否上传,如果总公司修改了数据,那还要设置个修改的标志位,重新导入到分公司的数据库中,实在是蛮繁的哦。
      

  6.   

    用SQLServer的分发复制功能,我现在正在做的一个软件就是这样子的,你要用它的合并复制功能,此功能我已测试过,没问题,工作很好。只是你所要求的用盘片的功能我还不知道怎么解决。