Ir para conteúdo

POWERED BY:

Arquivado

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

mvz

Erro: Tipos incompatíveis: 'CDBL'

Recommended Posts

Alguém sabe me dizer porque este código abaixo nao funciona? não consegue somar os campos, dá erro de "Tipos Incompatíveis". No banco os campos são de texto e não números, mas somentes é gravado números inteiros, mas nem sempre todos os campos estão com dados, alguns campos ficam vazios, por isso tem o if verificando "if IsNull":

 

Erro:

 

Erro de tempo de execução do Microsoft VBScript (0x800A000D)

Tipos incompatíveis: 'CDBL'

linha 167 (que é a linha onde está a soma dos campos)

 

Código:

<%
			DIM artef1, artef2, artef3, artef4, arteftotal
			artef1 = rs_primeiro.Fields.Item("xarte_f").Value
			if IsNull(rs_primeiro("xarte_f")) then
			artef1 = "0"
			end if
			artef2 = rs_segundo.Fields.Item("xarte_f").Value
			if IsNull(rs_segundo("xarte_f")) then
			artef2 = "0"
			end if
			artef3 = rs_terceiro.Fields.Item("xarte_f").Value
			if IsNull(rs_terceiro("xarte_f")) then
			artef3 = "0"
			end if
			artef4 = rs_quarto.Fields.Item("xarte_f").Value
			if IsNull(rs_quarto("xarte_f")) then
			artef4 = "0"
			end if
			arteftotal = CDBL(artef1) + CDBL(artef2) + CDBL(artef3) + CDBL(artef4)
			%>
						<% = arteftotal %>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se no campo só irá ter números inteiros, então porque o campo não é do tipo inteiro?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se no campo só irá ter números inteiros, então porque o campo não é do tipo inteiro?

 

É que tava assim o banco e tava funcionando... de repente começou com esta frescura de às vezes abrir a página com as somas todas corretas e às vezes nao abre de jeito nenhum... nao tava querendo mexer na estrutura, mas acabei modificando tudo mesmo e colocando como números... aí funcionou!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que foi questionado é porque o campo nao é numerico no db logo

 

se so tem numeros mesmo nao deveria ter dado erro

 

verifica todos os valores para ter certeza

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verifique se não haviam diferentes separadores decimais gravados no campo. Apesar da informação de serem numeros inteiros como o campo estava como string pode ter sido gravado algum.

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.