Ir para conteúdo

POWERED BY:

Arquivado

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

Rodrigo Ricardo

[Resolvido] Incompatible types: 'TBcd' and 'Real'

Recommended Posts

Saudações galera do iMasters,

Estou migrando um sistema desenvolvido em delphi5 com base de dados paradox para delphi7 com firebird 1.5, em um certo bloco de comandos estou encontrando um problema na declaração de algumas variáveis, vou enviar o bloco que estou com problemas, talvez alguem possa me ajudar.

 

var vtotpgto,vtotdesc,vtotjur: Real;

vposicao: integer;

begin

vtotpgto:= 0; vtotdesc:= 0; vtotjur:= 0;

vposicao:= QUpAReceber.FieldByName('ASequencia').Value;

QUpAReceber.First;

while not QUpAReceber.Eof Do

begin

if not (QUpAReceber.FieldByName('Apgto').isnull) then

begin

vtotpgto:= vtotpgto + QUpAReceber.FieldByName('Apgto').value;

vtotdesc:= vtotdesc + QUpAReceber.FieldByName('Adesconto').value;

vtotjur:= vtotjur + QUpAReceber.FieldByName('Ajuros').value;

end;

QUpAReceber.Next;

end;

QUpAReceber.locate('Asequencia',vposicao,[loCaseInsensitive]);

if not (DM_Recebimento.CdsRecebimento.State in [DSInsert,DSEdit]) then

DM_Recebimento.CdsRecebimento.Edit;

DM_Recebimento.CdsRecebimentoRVALOR.Value:= vtotpgto;

DM_Recebimento.CdsRecebimentoRDesconto.Value:= vtotdesc;

DM_Recebimento.CdsRecebimentoRJuros.Value:= vtotjur;

DM_Recebimento.CdsRecebimentoRApagar.Value := (DM_Recebimento.CdsRecebimentoRValor.Value + DM_Recebimento.CdsRecebimentoRjuros.Value) - DM_Recebimento.CdsRecebimentoRDesconto.Value;

 

o problema está com o bloco em negrito, no primeiro bloco as variáveis conseguem receber os valores tudo ok, mas no segundo bloco quando o campo do arquivo que está declarado como NUMERIC(9,2) apresenta a segunte mensagem: Incompatible types: 'TBcd' and 'Real'

 

se alguem já passou por esse problema ou sabe como resolver, poste uma resposta, grande abraço!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom Rodrigo faz um teste ai p/ gente ver substitui os .value por .AsFloat. Outra coisa verifica o tipo do campo que esta declarado na cds, pode ser esse o problema também.

Cara, valeu, o problema resolveu, grande abraço!!!!

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.