Query: Cannot modify a read-only dataset
04/03/2004
0
Só que ao tentar Editar o DBGrid recebo está mensagem:
Project Financial.exe raised exception class EDatabaseError with message ´Query: Cannot modify a read-only dataset´. Process stopped. Use step or run to continue
Porque não consigo Editá-lo ???
procedure TFrmBaixaDoc.EdtPesquisa2Exit(Sender: TObject);
begin
If (EdtPesquisa.Text <> ´´) AND (EdtPesquisa2.Text <> ´´) AND (MaskEdit1.Text <> ´´) Then
Begin
DMFactoring.Query.Close;
DMFactoring.Query.SQL.Clear;
DMFactoring.Query.SQL.Add(´SELECT * FROM Sacado_cedente ´);
DMFactoring.Query.SQL.Add(´WHERE CGC_CPF = ´´+edtPesquisa.Text+´´ ´);
DMFactoring.Query.SQL.Add(´AND BAIXADO = ´´+EdtPesquisa2.Text+´´ ´);
DMFactoring.Query.SQL.Add(´AND QDO_BAIXAR = :MasKEdit1.Text ´);
DMFactoring.Query.parambyname(´MasKEdit1.Text´).asDateTime := date;
DMFactoring.Query.SQL.Add(´ORDER BY CGC_CPF ´);
DMFactoring.Query.Open;
If DMFactoring.Query.IsEmpty Then
ShowMessage(´Nada foi Encontrado de Acordo com a sua Pesquisa´);
If not DMFactoring.Query.IsEmpty Then
DMFactoring.Query.Edit;
End
Else
ShowMessage(´Estão faltando parâmetros para a Pesquisa´);
end;
Alexandretavares
Post mais votado
23/09/2005
se o componente em questão for um TQuery da guia BDE, basta alterar a propriedade RequestLive para True.
Emerson Nascimento
Mais Posts
23/09/2005
Peununes
Alguém pode explciar melhor?
23/09/2005
Steve_narancic
23/09/2005
Tnaires
Qual conjunto de componentes vc tá usando? BDE, ADO...
Em ambos vc pode sim usar Query para editar registros. No BDE, ajuste a propriedade RequestLive para true. No ADO, não é necessário fazer nada.
Abraços
23/09/2005
Djorius
Posso estar enganado porque não uso DBX.
23/09/2005
Steve_narancic
Exatamente o que eu queria dizer só que não tinha palavras para tal
23/09/2005
Peununes
No meu caso, estou fazendo uma consulta via TQuery no momento em que o form é criado.
Quando a consulta retorna true, eu jogo o resultado da query criada dinamicamente para um objeto TQuery.
Exe.: QueryRecebe.SQL := QueryDinamico.SQL;
Mostro o resultado num grid e consigo editar as informações por ai tranquilamente. Tem um jeito de fazer isso, mas fica para depois.
O Problema todo é quando a Query dinâmica retorna false. Por ´default´ todo dataset é read-only e, como ele está vazio, ele permanece read-only.
A grosso modo é mais ou menos isso.
Clique aqui para fazer login e interagir na Comunidade :)