Тип TfrADOQuery
Здравствуйте.
Подскажите, пожалуйста, запрос (TfrADOQuery) не успевает выполниться, как увеличить время CommandTimeout.
Подскажите, пожалуйста, запрос (TfrADOQuery) не успевает выполниться, как увеличить время CommandTimeout.
Комментарии
constructor TCustomADODataSet.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FCommand := TADOCommand.Create(Self);
FCommand.ComponentRef := Self;
<span style='color:red'> FCommand.CommandTimeout:=600;</span> FIndexDefs := TIndexDefs.Create(Self);
FModifiedFields := TList.Create;
FIndexFields := TList.Create;
FCursorType := ctKeyset;
FLockType := ltOptimistic;
FCursorLocation := clUseClient;
FCacheSize := 1;
CommandType := cmdText;
NestedDataSetClass := TADODataSet;
FMasterDataLink := TMasterDataLink.Create(Self);
MasterDataLink.OnMasterChange := MasterChanged;
MasterDataLink.OnMasterDisable := MasterDisabled;
EnableBCD := True;
end;
Проще способа нет?
procedure TfrADODataSet.SetPropValue(Index: String; Value: Variant);
var
d : TADOConnection;
begin
inherited SetPropValue(Index, Value);
Index := AnsiUpperCase(Index);
if Index = 'NAME' then
begin
FDataSource.Name := 'S' + FDataSet.Name;
FDBDataSet.Name := '_' + FDataSet.Name;
end
else if Index = 'ACTIVE' then
FDataSet.Active := Value
else if Index = 'DATABASE' then
begin
FDataSet.Close;
d := frFindComponent(FDataSet.Owner, Value) as TADOConnection;
FDataSet.Connection := d;
<span style='color:red'>FDataSet.CommandTimeout:=FDataSet.Connection.CommandTimeout;</span>
end
else if Index = 'FILTER' then
begin
FDataSet.Filter := Value;
FDataSet.Filtered := Trim(Value) <> '';
end
else if Index = 'ENABLEBCD' then
FDataSet.EnableBCD := Value
end;