Erro convertendo (null) para tipo (string): ao fechar query
Quando dou o comando Query2.Close, aparece o seguinte erro:
Como posso fazer para identificar qual campo esta gerando esse erro, é possivel solucioná-lo?
Como posso fazer para identificar qual campo esta gerando esse erro, é possivel solucioná-lo?
Sparch
Curtidas 0
Respostas
Hleorabelo
28/11/2003
Esse erro geralmente ocorre qdo vc estah tentando jogar o valor de um campo do banco de dados em uma variável do tipo String e esse valor eh nulo. Então a solução eh: onde for fazer essa atribuição de variável colocar um cast do tipo varToStr.
Vou dar um exemplo:
var
nome: String;
.
.
.
nome:= varToStr(DM.tblCliente.fieldValues[´NOME´]);
Faça isso, ao invés de somente
nome:= DM.tblCliente.fieldValues[´NOME´];
Espero ter ajudado, abraços
Hugo Leonardo :D
Vou dar um exemplo:
var
nome: String;
.
.
.
nome:= varToStr(DM.tblCliente.fieldValues[´NOME´]);
Faça isso, ao invés de somente
nome:= DM.tblCliente.fieldValues[´NOME´];
Espero ter ajudado, abraços
Hugo Leonardo :D
GOSTEI 0
Sparch
28/11/2003
Hugo, obrigado pela atenção...
Eu coloquei VarToStr() em todas as minhas chamadas que faziam referencia do tipo Query2.FieldValues[´temp´], mas ainda continuo recebendo erro..
Query2 esta com RequestLive setado para False, pois essa query não é para inserir nem para atualizar dados, somente para vizualizar o resultado de um SELECT, e quando fecho a query, esse erro ocorre
Eu coloquei VarToStr() em todas as minhas chamadas que faziam referencia do tipo Query2.FieldValues[´temp´], mas ainda continuo recebendo erro..
Query2 esta com RequestLive setado para False, pois essa query não é para inserir nem para atualizar dados, somente para vizualizar o resultado de um SELECT, e quando fecho a query, esse erro ocorre
GOSTEI 0
Rafael Heise
28/11/2003
Verifique se você não tem código no AfterClose... ou no BeforeClose...
talvez tenha alguma coisa e você não viu...
talvez tenha alguma coisa e você não viu...
GOSTEI 0
Sparch
28/11/2003
:lol:
Descobri como contornar o erro...
No evendo OnEnter do Edit2 que eh o responsavel por fechar a tabela eu fiz a seguinte condicao para prosseguir:
Muito obrigado pelas dicas piazada!! :wink:
Descobri como contornar o erro...
No evendo OnEnter do Edit2 que eh o responsavel por fechar a tabela eu fiz a seguinte condicao para prosseguir:
if (Query2.FieldValues[´temp´] <> NULL) then begin ... end;
Muito obrigado pelas dicas piazada!! :wink:
GOSTEI 0