SoloCodigo

Programación General => Visual FoxPro => Mensaje iniciado por: claudiorene en Miércoles 31 de Enero de 2007, 00:32

Título: Transformar Caracter A Numerico
Publicado por: claudiorene en Miércoles 31 de Enero de 2007, 00:32
Hola que tal amigos del foro ??

Aca estoy denuevo con dudas, esta vez el problema esta en que necesito guardar en una tabla un dato del tipo numerico (3 posiciones para la parte entera y dos para la decimal), osea numeric de 5,2 no ?

El tema es que al ingresar un datos desde el formulario en cuestion, el usuario ingresa caracteres, yo recupero ese valor por medio de

 vble = val(alltrim(thisform.objeto.value));

pero la funcion VAL me devuelve en la parte decimal siempre cero. He leido la ayuda de fox, y no encuentro alguna funcion que me devuelva el correcto valor. Por ejemplo, si ingreso 125.25 en el formulario, el valor a recuperar seria 125,25. Y en el momento de insertarlo en la tabla correspondiente, me arroja incompatibilidad en el tipo de datos.

Espero haber sido claro, porsupuesto gracias de antemano...
Título: Re: Transformar Caracter A Numerico
Publicado por: FAPC en Jueves 1 de Febrero de 2007, 16:37
Hola tienes que tener encuenta la configuracion regional, ya que si estas tratando de convertir 125.25 en numerico, y el . no es el caracter predeterminado para decimal el val lo que te hace es que te convierte en numero hasta donde reconoce numero osea 125 o en otro caso te sale error.

espero haber podido ayudarte
Título: Re: Transformar Caracter A Numerico
Publicado por: Widark en Viernes 2 de Febrero de 2007, 13:48
Que tal claudiorene!

Por que no configuras el objeto (me imagino que est un texto) para que solo obtenga número, le das click derecho al text y luego generador (builder) en la ventana que aparece le das NUMERO (NUMERIC) y le das la mascara. Aunque si lo tienes enlazado directamente a la tabla no deberias tener problemas.

Espero sea de ayuda.
Título: Re: Transformar Caracter A Numerico
Publicado por: arielb en Viernes 2 de Febrero de 2007, 14:47
Hola, en la propiedad value del text pones 0.00 y ya no necesitas hacer la conversion y te toma los datos con decimales.