Ir para conteúdo
  • Cadastre-se

dev botao

Form MDI-Child access violation


Ver Solução Respondido por Ederson,
  • Este tópico foi criado há 1270 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Bom dia !

Tenho um Form MDI-Child que é utilizado para entrada de notas, ao abri-lo pela primeira vez o lançamento da nota está normal, mas se faço a exclusão dessa nota o formulário permanece visivel para incluir uma nota entrada, mas fazendo um teste para adicionar a nova entrada foi verificado que o form não está mais em memória, e ao inserir os itens na DBGrid que está nesse Form é lançado o erro de Access Vilolation, alguém já passou por algo semelhante, no botão excluir tenho o seguinte:
 

procedure TFrmCompra.SpbExcluirClick(Sender: TObject);
begin
  if (QryEntrada.IsEmpty) then
    exit;
  if pergunta('Excluir este registro?') = false then
    exit;

  QryCtaPagar.First;
  while not QryCtaPagar.eof do
    QryCtaPagar.Delete;
  QryFretePagar.First;
  while not QryFretePagar.eof do
    QryFretePagar.Delete;
  QryEntrada.Delete;
  AbrirTabelas(false);
end;
procedure TFrmCompra.AbrirTabelas(aValue: Boolean);
begin
  QryEntrada.Active := aValue;
  QryEntradaItem.Active := aValue;
  QryCtaPagar.Active := aValue;
  QryFretePagar.Active := aValue;
  QryEstoque.Active := aValue;
  QryProduto_Fornecedor.Active := aValue;
  mtVincular.Active := aValue;
end;

 

Editado por Ederson
Faltou informação
Link para o comentário
Compartilhar em outros sites

  • Moderadores

Seu trecho não ajuda muito para analisarmos o problema

anexe a unit inteira e como tu faz a chamada

olhe senão está dando um cafree no close

Consultor SAC ACBr Juliomar Marchetti
 

Projeto ACBr

skype: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br
MVP_NewLogo_100x100_Black-02.png
 

 

Link para o comentário
Compartilhar em outros sites

Fiz o teste a ainda está ocorrendo o access violation.

Eu coloquei no botão excluir um close para o "fechar" o form mesmo da tela, dessa forma "funciona" claro,  mas como está hoje ao executar a exclusão da nota, o form fica aberto na tela mas igual a NIL, e ao tentar inserir os itens na DBGrid ocorre o access violation.

Link para o comentário
Compartilhar em outros sites

  • Solution

Juliomar muito obrigado pela sua ajuda, mas acredito que achei o problema, não cheguei a comentar mas estava na unit, quando importo o XML abro outro form em tempo de execução. e nesse form o evento onClose tinha o caFree,

que estava afetando o form de compras, vou revisar o código, mas a principio retirando o cafree desse form em runtime funcionou.

 

Obrigado !

Editado por Ederson
erro palavra
  • Curtir 1
Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 1270 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.