Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/09/2009, 13:22
benfrid
 
Fecha de Ingreso: septiembre-2009
Mensajes: 1
Antigüedad: 14 años, 7 meses
Puntos: 0
De acuerdo Respuesta: Re: Error al convertir el tipo de datos varchar a numeric

Cita:
Iniciado por erick_arcini Ver Mensaje
Haber si estas soluciones pueden ser:

1: en tu select, si es decimal, tienes que quitarle las apostrofes que tu le colocas:

Código:
"Select Codigo, Establecimientos.Nombre, Fecha, Persona, Concepto, 
Importe, Comentario from Prestamos,Establecimientos where 
Codigo_Estable=Establecimiento and Importe='" & Convert.ToDecimal(Importe.Text) & "' order by Establecimientos.Nombre"
lo que esta en rojo no va.

2: Si estas enviando, por ejemplo texto.txt = "1,23" la coma te va a mandar un error cuando conviertas de string a decimal, realiza esto

Código:
Convert.ToDecimal(Importe.Text.Replace(',','.'))
3: El lugar de pasar tu texto directamente a la consulta, envialo como un parametro, si tu campo es decimal entonces tendrias que hacer algo asi:

Código:
Dim TUconsulta as string = "Select Codigo, Establecimientos.Nombre, Fecha, Persona, Concepto, 
Importe, Comentario from Prestamos,Establecimientos where 
Codigo_Estable=Establecimiento and Importe=@parametro order by Establecimientos.Nombre"

comando.Parameters.Add("@parametro", SqlDbType.Decimal).Value = Convert.ToDecimal(TextBox1.Text.Replace(',', '.'))
 'comando es un SQLCOMMAND
espero que sea alguna de estas soluciones, sino, pues echale ganas
Muchas gracias, jojo. Al menos a mí sí me sirvió, aunque si llamo a la función Convert.toDecimal me devuelve el número con coma y no punto decimal, la solucion es dejarlo como string Variablenumerica.toString.Replace(",",".")

Como dice otro amigo por aquí, el problema es el formato regional.
Habría que tener presente este dato para poder implementar Servicios más homogéneos.