Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Eduardo Morais

Erro Inaccessible Value

Recommended Posts

Pessoal, estou com um problema desde a semana passada e não consigo resolver, já procurei na net porém não obtive sucesso.

Problema:

Eu tenho uma unit com uma variável privada:

 

 

 

private 
    FLiberar: integer;

 

 

Logo abaixo eu tenho uma property com o meu metodo get e set para gravação e leitura da variável e também tenho uma procedure para a gravação desse valor:

 

 

 

public 
    property Liberar: Integer read FLiberar write SetLiberada; 
    procedure SetLiberada(const Value: Integer);

 

 

 

procedure TCD_Notas_Disciplinas_ALuno.SetLiberada(const Value: Integer); 
begin 
  FLiberar := Value; 
  btnLiberada.Enabled :=  arquivo.qy_Turma_Pauta_alunoTURPAUSTATUS.Value = 'ME'; 
  if FLiberar = 1 then 
    btnLiberada.Caption := 'Bloquear Disciplina' 
  else 
    btnLiberada.Caption := 'Liberar Disciplina'; 
end;

 

 

Dai na minha segunda Unit eu faço a chamada do metodo write para gravar um valor na minha variável privada:

 

 

procedure Tarquivo.ds_Turma_Pauta_alunoDataChange(Sender: TObject; 
  Field: TField); 
begin 
  if qy_Turma_Pauta_alunoLiberada.Value = 'S' then 
     CD_Notas_Disciplinas_ALuno.Liberar:= 1 
  else 
    CD_Notas_Disciplinas_ALuno.Liberar := 0; 
end;

 

 

Esse código funcionava normalmente, só que de alguns dias pra cá começou a dar erro, não sei porque ele começou a parar de funcionar quando chega nessa linha:

Código:

 

FLiberar := Value;

 

 

Vim debugando e percebi que essa variável está com Inaccesseble Value e me gera um erro de Access violation porque essa variável "não existe", agora não sei a causa desse erro tendo em vista que o código funcionava perfeitamente.

Agradeço a todos desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, ao meu ver, ja que seu codigo funcionava antes normalmente, deve ser algum problema que ocorreu com o seu Delphi ou seus arquivos. Esses erros malucos geralmente acontecem comigo, mas resolvo, em grande parte dos casos, reinstalando o delphi e todos os componentes de terceiros, infelismente.

 

Mas aguarde, quem sabe alguem resolve.

 

Valeu!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, ao meu ver, ja que seu codigo funcionava antes normalmente, deve ser algum problema que ocorreu com o seu Delphi ou seus arquivos. Esses erros malucos geralmente acontecem comigo, mas resolvo, em grande parte dos casos, reinstalando o delphi e todos os componentes de terceiros, infelismente.

 

Mas aguarde, quem sabe alguem resolve.

 

Valeu!

 

Anderson Nunes, obrigado pela ajuda, porém acho que não é isso que você falou porque eu tenho várias versões desse meu fonte e uma versão mais antiga funciona... não lembro de ter feito alguma alteração para "estragar" meus fontes... =/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal, eu consegui o problema é que eu criei uma procedure que chama os formulários para não ficar chamando um por um, dai eu passo como referencia o nome do formulário e abro isso me gerava o erro...

 

 

class procedure TGlobal.ChamarFormulario(
  lo_obj_formulario: TComponentClass);
var
  lo_formulario : TForm;
begin
  Application.CreateForm(lo_obj_formulario, lo_formulario);
  with lo_formulario do
    begin
      ShowModal;
      Release;
    end;
end;

agora vou arrumar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.