Fórum Erro Cannot perform this operation on a closed dataset #481037
02/06/2014
0
Estou fazendo uma form de cadastro de profissionais com uma tabela do firebird utilizando Client data set porem me da o seguinte 'Cannot perform this operation on a closed dataset' segue parte do código
begin
DM.SqlProfissionais.Active := True;
DM.CdsProfissionais.Active := True; // ERRO
end;
procedure TFormCadProfissionais.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
DM.SqlProfissionais.Active := False;
DM.CdsProfissionais.Active := False;
action := caFree;
end;
Silvia Pereira
Curtir tópico
+ 0Post mais votado
26/06/2014
Que bom que você encontrou o erro.
Mas só lembrando que o uso do "Select * From..." não é recomendado e nem performático.
O ideal é você listar somente os campos em que irá precisar.
Flw... ;)
Marcos Gandin
Gostei + 2
Mais Posts
02/06/2014
Jefferson Rudolf
procedure TFormCadProfissionais.FormCreate(Sender: TObject);
begin
DM.SqlProfissionais.Active := True;
DM.CdsProfissionais.CreateDataSet
end;
procedure TFormCadProfissionais.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
DM.SqlProfissionais.Active := False;
DM.CdsProfissionais.Close
action := caFree;
end;
Tenta assim, Silvia
T+
Gostei + 0
02/06/2014
Silvia Pereira
'Project ProjectPadis.exe raised exception class EDatabaseError with message 'Token unknown -
line 1, column 9 from' Process Stopped. Use Step or Run to continue'
e dando sequencia vem essa: 'Token unknown - line 1, column 9' e por ultimo essa:
Project ProjectPadis.exe raised exception class EDatabaseError with message
'CdsProfissionais: Cannot perform this operation on a closed dataset'.
Tenho mais duas tabelas de cadastro que funcionam perfeitamente não entendo o por que desse erro.
procedure TFormCadProfissionais.FormCreate(Sender: TObject);
begin
DM.SqlProfissionais.Active := True;
DM.CdsProfissionais.CreateDataSet // erro
end;
procedure TFormCadProfissionais.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
DM.SqlProfissionais.Active := False;
DM.CdsProfissionais.Close
action := caFree;
end;
Tenta assim, Silvia
T+
Gostei + 0
02/06/2014
Cauê Nishijima
procedure TFormCadProfissionais.FormCreate(Sender: TObject); begin DM.CdsProfissionais.Open; end; procedure TFormCadProfissionais.FormClose(Sender: TObject; var Action: TCloseAction); begin DM.CdsProfissionais.Close; action := caFree; end;
Gostei + 0
02/06/2014
Silvia Pereira
procedure TFormCadProfissionais.FormCreate(Sender: TObject); begin DM.CdsProfissionais.Open; end; procedure TFormCadProfissionais.FormClose(Sender: TObject; var Action: TCloseAction); begin DM.CdsProfissionais.Close; action := caFree; end;
Acabei de tentar, continua com o mesmo erro.
Gostei + 0
25/06/2014
Silvia Pereira
"
Gostei + 0
26/06/2014
Silvia Pereira
Que bom que você encontrou o erro.
Mas só lembrando que o uso do "Select * From..." não é recomendado e nem performático.
O ideal é você listar somente os campos em que irá precisar.
Flw... ;)
mas vc poderia me passar algum exemplo?
Obrigada.
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)