Ir para conteúdo

POWERED BY:

Arquivado

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

Angelo Silva

Dados Decimais

Recommended Posts

Galera estou tendo problemas com dados decimais no SQl Server.Já consegui a parte do SQl Server, agora o problema só pode ser no VB.Eu tenho que adicionar em uma tabela do SQL do tipo decimal um valor decimal. Só que dá o seguinte erro:

Runtime-error '-2147217913 (80040e07)'.Error converting datatype varchar to numeric.

Eu pego esse valor de um campo texto pela propriedade Text.E eu estou convertendo o valor pra Double. Que q eu estou fazendo de errado???
Private Aliq As DoublePrivate Sub btnIncluir_Click()'On Error GoTo ErroInclusao	If txtCod.Text = "" Then			MsgBox "Você precisa preencher o campo Código.", vbInformation, "Campo Requerido"		txtCod.SetFocus			   Else   		Cod = txtCod.Text		Desc = txtDescricao.Text		Aliq = txtAliquota.Text		Fisc = txtFiscal.Text				'MsgBox "Desc: " & Desc & vbCrLf & "Cod: " & Cod & vbCrLf & "Ali: " & Aliq & vbCrLf & "Fisc: " & Fisc, vbInformation, "Dados" 'Teste dos Dados					'==> Verifica se já existe						ADO_Comando.CommandText = "SELECT * " & _										  "FROM	 ICMS " & _										  "WHERE	Des_ICMS = '" & Trim(txtDescricao.Text) & " '" & _										  "AND	  Cod_ICMS = '" & Trim(txtCod.Text) & "'"								Set ADO_Recordset = ADO_Comando.Execute									If Not ADO_Recordset.EOF = True Then												MsgBox "Essa descrição já existe pro Código " & Trim(ADO_Recordset.Fields("Cod_ICMS")) & " !"													ElseIf MsgBox("Confirma a inclusão ?", vbQuestion + vbYesNo, "Inclusão") = vbYes Then												'==> Executa o INSERT						Aliq = CDbl(Aliq)						MsgBox Aliq												ADO_Comando.CommandText = "INSERT ICMS ( " & _												  "Cod_ICMS, Des_ICMS, Aliquota_ICMS, " & _												  "Imp_Fiscal ) " & _												  "VALUES ('" & Trim(txtCod.Text) & "' , '" & Trim(txtDescricao.Text) & "' , '" & Aliq & "' , '" & Trim(txtFiscal.Text) & "' )"					 												Set ADO_Recordset = ADO_Comando.Execute											MsgBox "Inclusão efetuada com sucesso!", vbExclamation												Popula_grdIcms									''MsgBox "aqui aqui vai posicionar o gride no fulano incluído"												End If				End If	Saida:	Exit SubErroInclusao:	TrataErro Err.Number	Resume Saida:End Sub
Me dêem uma luz pelo amor de deus que eu já tentei quase de tudo!!!Muito obrigado!!!Falow

Compartilhar este post


Link para o post
Compartilhar em outros sites

tenta dar um replace na variavel Aliq trocando , por . pois com a virgula da variavel Aliq o sql pode pensar que você está querendo passar mais um parametro

 

ADO_Comando.CommandText = "INSERT ICMS ( " & _												  "Cod_ICMS, Des_ICMS, Aliquota_ICMS, " & _												  "Imp_Fiscal ) " & _												  "VALUES ('" & Trim(txtCod.Text) & "' , '" & Trim(txtDescricao.Text) & "' , '" & replace(Aliq, ",", ".") & "' , '" & Trim(txtFiscal.Text) & "' )"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bingoooo Eriva, eu já havia tentado isso mas quando o campo no banco tava bixado... depois nem me toquei...Mas o engraçado é que, eu estou mudando a virgula para ponto, só que quando eu adiciono um registro direto no SQL com ponto ele simplesmente tira o mesmo!!! Sendo assim: 3,15 fica 315... mas beleza, problema resolvido!!!Valeuzão Eriva!!!T+

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.