Fórum Erro: Cannot perform this operation on a closed dataset #423299
06/09/2012
0
Para efetuar o delete de um registro eu utilizava o seguinte:
FRM_DM.IB_SAIDA_FUNC.Delete; FRM_DM.IBTransaction1.CommitRetaining;
Agora eu implementei uma [b]query[/b].Para deletar faço o seguinte:
FRM_DM.query1.Close;
FRM_DM.query1.Sql.Clear;
FRM_DM.query1.Sql.Add('Delete from MATERIAIS_SAIDA');
FRM_DM.query1.Sql.Add('where DESCRIO =:descricao');
FRM_DM.query1.ParamByName('descricao').AsString := FRM_DM.IB_ESTOQUEDESCRIO.Text;
FRM_DM.query1.execsql;Normal né! Só que quando executo ele exclui o registro, no entanto apresenta o erro:
[b]Cannot perform this operation on a closed dataset[/b]
Será que alguém poderia me ajudar?
Fernando Souza
Curtir tópico
+ 0Post mais votado
19/09/2012
Pedimos que avise para que o tópico possa ser encerrado.
Joel Rodrigues
Gostei + 1
Mais Posts
06/09/2012
Joel Rodrigues
Boa sorte.
Gostei + 0
04/12/2014
Cid Maia
Boa sorte.
Estou com esse mesmo problema a dias e nao consigo resolver...vc pode me ajudar
Gostei + 0
05/12/2014
Ricardo
Se logo após o ExecSQL for feito um open na query e o erro parar e justamente porque algo está tentando acessar a query depois da operação para deletar.
Gostei + 0
02/10/2019
Guilherme
procedure Tf_cidades.FormCreate(Sender: TObject);
begin
inherited;
f_cidades.tabela:= 'cidades';
f_cidades.campo_chave:= 'codcidade';
f_cidades.campo_pesquisa:= 'nome';
f_cidades.carregar_dados('');
end;
outro form
procedure Tf_cadpadrao.carregar_dados(p: string);
begin
qdados.SQL.Clear;
qdados.SQL.Add('select * from ' +tabela+ ' where ' +campo_chave+ ' like ' +quotedstr('%'+p+'%')+ ' order by ' +campo_pesquisa);
qdados.Open;
end;
alguém dá uma luz aqui tipo uma tempestade solar pelo menos. Porque eu tenho que usar classes no meu trabalho da faculdade. Tá. Daí eu fiz a classe padrão e tô herdando todo formulário dela. Basicamente a classe padrão é inserir, alterar, excluir e fechar AH e gravar ou cancelar. Deu pra ter uma ideia?
daí eu executo o delphi, ele entra, eu executo a compilação, abre o aplicativo, eu clico pra abrir o formulário CIDADES e dá um erro. Até aí tudo bem porque acho que é do COMODO FIREWALL. Preciso dele senão o delphi não funciona. enfim
depois eu vou dar um insert pra habilitar o gravar e ele fica dizendo que não é possível em um closed dataset
eu não faço nem ideia de como depurar isso porque não ensinaram na faculdade nada de depuração.
Era só os códigos prontos e faça um formulário parecido. Daí agora tô no estágio da faculdade apanhando muito e literalmente patinando no mesmo lugar. O chefe no estágio só usa clipper e um dbf. Ele tem um esquema de compilar para x64 por meio de uma aplicação lá e daí até roda no windows 10.
O que eu faço? Tenho um mês pra terminar o aplicativo, fazer testes, validar tudo, e criar a documentação, manual do sistema e do usuário. É impossível. Só se eu já dominasse delphi, mas nãooooo. Ah meu, tô chorando aqui de desespero.
Gostei + 0
14/10/2020
Vicente Santos
Gostei + 0
15/10/2020
Emerson Nascimento
Vicente, pode passar o trecho de código onde ocorre a mensagem ?
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)