摘要: Delphi做三层开发时,很多人都会在客户端放一个TClientDataSet,中间层远程数据模块就对应放一个TDataSetProvider,然后再连起来.其实这种方法很烦琐,而且程序痈肿不甘,不好维护.我们都知道TClientDataSet的Delta属性记录了数据的所有修改,应用它我们就可以方便的实现一个单表更新的通用方法. 首先,在中间层添加一个方法,就叫ApplyUpdates吧.方法定义如下: function ApplyUpdates(const UpdateTable:String;Delta:Variant;out err:String):Boolean;参数UpdateTa 阅读全文
posted @ 2011-04-21 10:11 fyen 阅读(3598) 评论(1) 推荐(0) 编辑
摘要: /*建立虚拟测试环境,包含:表[卷烟库存表],表[卷烟销售表]。请大家注意跟踪这两个表的数据,体会触发器到底执行了什么业务逻辑,对数据有什么影响。为了能更清晰的表述触发器的作用,表结构存在数据冗余,且不符合第三范式,这里特此说明。*/USE MasterGOIF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE XTYPE = ’U’ AND NAME = ’卷烟库存表’)DROP TABLE 卷烟库存表GOIF EXISTS (SELECT NAME FROM SYSOBJECTS WHERE XTYPE = ’U’ AND NAME = ’卷烟销售表’)D 阅读全文
posted @ 2011-04-21 10:09 fyen 阅读(4937) 评论(0) 推荐(1) 编辑
摘要: unit uAppCenter;{$WARN SYMBOL_PLATFORM OFF}interfaceusesWindows, ComObj, ComServ, ActiveX, HISAPP_TLB, Classes, SyncObjs, StdVcl,VCLCom, SysUtils, Forms, uDataType;typeTAppCenter = class(TComponent, IRDMSystem)private function LockRDM: IRDMSystem; procedure UnlockRDM(Value: IRDMSystem);protected { 实 阅读全文
posted @ 2011-04-21 09:22 fyen 阅读(1780) 评论(2) 推荐(1) 编辑