Fórum Problema com dbgrid em tempo de execução #423246

05/09/2012

0

Olá pessoal tudo bem?

Tenho um sistema onde existe um formconsultar com dbgrid..

ao clicar no registro selecionado no grid abre-se um novo formalterar ok

o formconsultar tem uma Dbcombobox com varios itens..

Ao consultar o 1 item ele retorna os dados..

Ao consultar outro ele retorna erro

'ClientDataSet: Cannot perform thid operation on a closed dataset'.

Segue os códigos..

procedure Tfrmconsultar.btnconsultarClick(Sender: TObject);
begin
DM.ADOQuerySql.Open;
DM.ClientDataSet.close;
DM.ADOQuerySQL.SQL.CLEAR;
DM.ADOQuerySQL.SQL.ADD('select codigo, filial, ip, nomepc, placamae, modelo, processador, placavideo, hd, placasom, memoria, placarede, sistemaop, soquete, setor from componentes_filiais where filial like :filial');
DM.ADOQuerySQL.Parameters.ParamByName('filial').Value:= combobox.text;
DM.ClientDataSet.Open;
DM.ADOQuerySql.Close;
end;

Procedure Tfrmalterar.DBEdit1Change(Sender: TObject);
begin
DM.ADOQuerySql.open;
DM.ClientDataSet.Locate('codigo', DBedit1.text, [loCaseInsensitive, loPartialKey]);
end;


Gostaria que me ajudassem neste caso.

Grato.
Mauricio Nicoli

Mauricio Nicoli

Responder

Posts

05/09/2012

Joel Rodrigues

O erro é no evento OnClick do btnconsultar ou no edit? O que está ocorrendo é que você está tentando acessar algum recurso do ClientDataSet com ele estando fechado. É preciso chamar o método Open em algum lugar.
Responder

Gostei + 0

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

Aceitar