Fórum Fechar ClientDatasets #364258

24/09/2008

0

Como faço para fechar varios clientdataset dentro de um datamodule, tipo fazer um laço e sair fechando todos que estiverem dentro do datamodule ?

Abs


Felipeiw

Felipeiw

Responder

Posts

24/09/2008

Luciano.lirio

felipeiw,

tenta usar o código abaixo.

unit Unit2;

interface

uses
  SysUtils, Classes, DB, DBClient;

type
  TModuloDados = class(TDataModule)
    ClientDataSet1: TClientDataSet;
    ClientDataSet2: TClientDataSet;
  private

  public
    procedure FecharClientDataSets;
  end;

var
  ModuloDados: TModuloDados;

implementation

{$R *.dfm}

procedure TModuloDados.FecharClientDataSets;
var
  Cds: TClientDataSet;
  I: Integer;
begin
  for I := 0 to ComponentCount-1 do
    if Components[I] is TClientDataSet then
    begin
      Cds := TClientDataSet(Components[I]);
      if Cds.Active then
        Cds.Active := False;
    end;
end;

end.



Responder

Gostei + 0

24/09/2008

Paullsoftware

simplificando o código...

 for I := 0 to ComponentCount - 1 do
  if (Components[i] is TClientDataSet) then
    TClientDataSet(Components[i]).Close;
espero ter ajudado! :wink:


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar