<<Delphi 5.X ADO/MTS/COM+高级程序设计篇>> 第二章2-4事务管理BatchUpdate范例
case TComponent(Sender).Tag of
0:
begin
if(DataModule2.ADODataSet1.LockType=TMyADOLockType(ltBatchOptimistic))
then
begin
DataModule2.ADODataSet1.Filtered:=True;
DataModule2.ADODataSet1.FilterGroup:='fgNone';
end;
end;
1:
begin
if(DataModule2.ADODataSet1.LockType=ltBatchOptimistic)
then
begin
DataModule2.ADODataSet1.Filtered:=True;
DataModule2.ADODataSet1.FilterGroup:=fgPendingRends;
end;
end;
end;
编译时出错
[Error] Unit1.pas(57): Undeclared identifier: 'TMyADOLockType'
[Error] Unit1.pas(57): Undeclared identifier: 'ltBatchOptimistic'
[Error] Unit1.pas(57): Incompatible types
[Error] Unit1.pas(61): Incompatible types: 'TFilterGroup' and 'String'
[Error] Unit1.pas(66): Incompatible types
[Error] Unit1.pas(70): Undeclared identifier: 'fgPendingRends'
[Fatal Error] Project2.dpr(6): Could not compile used unit 'Unit1.pas'请各位大哥不吝赐教
case TComponent(Sender).Tag of
0:
begin
if(DataModule2.ADODataSet1.LockType=TMyADOLockType(ltBatchOptimistic))
then
begin
DataModule2.ADODataSet1.Filtered:=True;
DataModule2.ADODataSet1.FilterGroup:='fgNone';
end;
end;
1:
begin
if(DataModule2.ADODataSet1.LockType=ltBatchOptimistic)
then
begin
DataModule2.ADODataSet1.Filtered:=True;
DataModule2.ADODataSet1.FilterGroup:=fgPendingRends;
end;
end;
end;
编译时出错
[Error] Unit1.pas(57): Undeclared identifier: 'TMyADOLockType'
[Error] Unit1.pas(57): Undeclared identifier: 'ltBatchOptimistic'
[Error] Unit1.pas(57): Incompatible types
[Error] Unit1.pas(61): Incompatible types: 'TFilterGroup' and 'String'
[Error] Unit1.pas(66): Incompatible types
[Error] Unit1.pas(70): Undeclared identifier: 'fgPendingRends'
[Fatal Error] Project2.dpr(6): Could not compile used unit 'Unit1.pas'请各位大哥不吝赐教
0:
begin
if (DM1.ADODataSet1.LockType = ltBatchOptimistic) then
begin
DM1.ADODataSet1.Filtered:=true;
DM1.ADODataSet1.FilterGroup:=fgNone;
end;
end;
1:
begin
if (DM1.ADODataSet1.LockType = ltBatchOptimistic) then
begin
DM1.ADODataSet1.Filtered:=true;
DM1.ADODataSet1.FilterGroup:=fgPendingRecords;
end;
end;
end;
改為
DataModule2.ADODataSet1.FilterGroup:= fgNone;DataModule2.ADODataSet1.FilterGroup:=fgPendingRends;
檢查是否打錯了 fgPendingRends
begin
case TComponent(Sender).Tag of
0:
begin
if (dmBatchUpdate.ADODataSet1.LockType=ltBatchOptimistic) then
begin
dmBatchUpdate.ADODataSet1.Filtered:=True;
dmBatchUpdate.ADODataSet1.FilterGroup:=faNone;
end;
end;
1:
begin
if(dmBatchUPdate.ADODataSet1.LockType=ltBatchOptimistic) then
begin
dmBatchUpdate.ADODataSet1.Filtered:=True;
dmBatchUpdate.ADODataSet1.FilterGroup:=fgPendingRecords;
end;
end;
end;
end;
还是出现
[Error] Unit1.pas(52): Undeclared identifier: 'ltBatchOptimistic'
[Error] Unit1.pas(52): Incompatible types
[Error] Unit1.pas(55): Undeclared identifier: 'faNone'
[Error] Unit1.pas(60): Incompatible types
[Error] Unit1.pas(63): Undeclared identifier: 'fgPendingRecords'
[Fatal Error] BatchUpdate.dpr(6): Could not compile used unit 'Unit1.pas'
怎么回事啊!
procedure TForm1.ckfgPredicateClick(Sender: TObject);
begin
case Tcomponent(Sender).Tag of
0:
begin
if (DataModule1.Temployee.LockType=ltBatchOptimistic ) then
begin
DataModule1.Temployee.Filtered:=true;
DataModule1.Temployee.FilterGroup:=fgNone;
end;
end;
1:
begin
if (DataModule1.Temployee.LockType=ltBatchOptimistic) then
begin
DataModule1.Temployee.Filtered:=true;
DataModule1.Temployee.FilterGroup:=fgPendingRecords;
end;
end;
end;
end;