Fórum Erro Acess Violation - Qual Procedimento Para Soluçãor #559973
06/08/2016
0
Boa tarde!!!
Estou desenvolvendo um sistema, e começou a dar erro de access violation, quando eu clico no botão Gravar!!!
Já procurei, e não achei nenhum motivo aparente de eu ter utilizado um objeto que não foi instanciado ou que já foi destruído!!!
Se alguém me ajudar !!! Grato
Código do botão gravar!!!
Para onde ele me mostra o erro!!! Fica apontando a linha de erro para aqui
Estou desenvolvendo um sistema, e começou a dar erro de access violation, quando eu clico no botão Gravar!!!
Já procurei, e não achei nenhum motivo aparente de eu ter utilizado um objeto que não foi instanciado ou que já foi destruído!!!
Se alguém me ajudar !!! Grato
Código do botão gravar!!!
procedure TFrmCondicaoPagamentoCartao.BtnGravarClick(Sender: TObject);
begin
FrmFaturarProjeto.CdsFaturarProjeto.Filter := 'SELECIONADO = ' + QuotedStr('S'); // filtra os registros selecionados
FrmFaturarProjeto.CdsFaturarProjeto.Filtered := True; // ativa o filtro
FrmFaturarProjeto.CdsFaturarProjeto.First; // posiciona o cursor no primeiro registro
while not FrmFaturarProjeto.CdsFaturarProjeto.Eof do
begin
begin
FrmFaturarProjeto.CdsFaturarProjeto.Edit;
FrmFaturarProjeto.CdsFaturarProjeto.FieldByName('SELECIONADO').AsString := 'S';
FrmFaturarProjeto.CdsFaturarProjeto.FieldByName('STATUS').AsString := 'FATURADO';
FrmFaturarProjeto.CdsFaturarProjeto.Post;
FrmFaturarProjeto.CdsFaturarProjeto.Next;
FrmFaturarProjeto.CdsFaturarProjeto.ApplyUpdates(0);
end;
end;
FrmCondicaoPagamentoCartao.Close;
FrmFaturarProjeto.Close;
CdsCondicaoPagamentoCartao.ApplyUpdates(0);
end;
Para onde ele me mostra o erro!!! Fica apontando a linha de erro para aqui
FrmCondicaoPagamentoCartao.ShowModal;
procedure TFrmCondicaoPagamento.FinalizaCartao;
begin
PostMessage(Handle, WM_CLOSE, 0, 0);
FrmCondicaoPagamentoCartao:=TFrmCondicaoPagamentoCartao.Create(application);
FrmCondicaoPagamentoCartao.EdtCodigoClienteCartao.Text:= FrmFaturarProjeto.CdsFaturarProjeto.FieldByName('CODIGOPROPRIETARIOOBRAPJA').AsString;
FrmCondicaoPagamentoCartao.EdtNomeClienteCartao.Text:= FrmFaturarProjeto.CdsFaturarProjeto.FieldByName('PROPRIETARIOPJA').AsString;
FrmCondicaoPagamentoCartao.EdtValorCondicaoCartao.Text:= FrmCondicaoPagamento.EdtCondicaoPagamentoCartao.Text;
FrmCondicaoPagamentoCartao.EdtCodigoClienteCartao.ReadOnly:=True;
FrmCondicaoPagamentoCartao.EdtNomeClienteCartao.ReadOnly:=True;
FrmCondicaoPagamentoCartao.EdtValorCondicaoCartao.ReadOnly:= True;
FrmCondicaoPagamentoCartao.EdtValorLiquidoCondicaoCartao.ReadOnly:= True;
FrmCondicaoPagamentoCartao.EdtNomeCondicaoCartao.ReadOnly:= True;
FrmCondicaoPagamentoCartao.EdtBandeiraCondicaoCartao.ReadOnly:= True;
FrmCondicaoPagamentoCartao.ShowModal;
end;Bruno Henrique
Curtir tópico
+ 0
Responder
Posts
06/08/2016
Raimundo Pereira
Depende da sua rotina o FrmCondicaoPagamentoCartao está no oncreat
Se estiver criando em run time na linha abaixo você fecha ele
FrmCondicaoPagamentoCartao.Close;
E depois, na linha onde está retornando o erro
FrmCondicaoPagamentoCartao.ShowModal;
Se você estiver criando o form em run time, deverá repetir sua rotina de criação antes de
FrmCondicaoPagamentoCartao.ShowModal;
Se estiver criando em run time na linha abaixo você fecha ele
FrmCondicaoPagamentoCartao.Close;
E depois, na linha onde está retornando o erro
FrmCondicaoPagamentoCartao.ShowModal;
Se você estiver criando o form em run time, deverá repetir sua rotina de criação antes de
FrmCondicaoPagamentoCartao.ShowModal;
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)