Ayuda con decimales

Hola..
Tengo una tabla en sql server 2000 enlazada con vfp9, la cual tiene un campo llamado TOTAL declarado como decimal13(20,4). Cuando traigo ese campo a una grilla en vfp para hacer operaciones con el, me pasa lo siguiente:
En la tabla de sql aparece:
Total
300000 2000000 2503000
En fox aparece
Total
300.000 2.000,000 2.503,000
cuando lo utilizo
300 2 2.503
Y yo necesito los valores como aparecen en sql..
Me puedes explicar que es lo que pasa y como lo puedo solucionar..
GRACIAS, responder a : [email protected]
Respuesta
1
Checate la configuración regional en el panel de control...
De separador de miles tiene el punto '. ' Y de dcimales la coma','
Los cursores que creo vienen de una consulta y lo reflejo en una grilla, y es aquí en donde se muestran los números con formatos, pero no se porque, realmente no debería porque tanto las propiedades de la grilla, InputMak y Format, tengo escrito 'NADA'.
Los números se me muestran como, por ejemplo:
Lo muestra así: 2.000.000,00 y lo necesito 2000000
lo muestra así: 3.530.000,00 y lo necesito 3530000
necesito una función o código que haga esto, si me puedes ayudar, t lo agradecería mucho..
No creo que sea para tanto, checate los valores como los tienes en la tabla cursor que tienes, desde hay empiueza a checar como están los valores, y sigo insistiendo checate la configuración regional quizás tengas el país mal, o algo por el estilo.
Hola..
Mira probé mi consulta en sql server 2000 y los campos de la tabla a la que me refiero están declarados como decimal y los valores se muestran como:
300000.0000 2000000.0000
Y así es que los necesito... pero en fox se me muestran es así:
300.000,000                 2.000.000,000
 necestio una funcion o algun codigo q me quite los separadores decimales, porq realmente en mi configuracion regional tengo '.'.',' y en inputmask 'NADA'
Yo hago cursores de sql server a fox y no me pasa nada de eso.. tal cual los tengo en sql server así me los pasa a fox, digo no se porque cambiarte, otra cosa, checate la etiqueta regional de opciones de foxpro en el menu herramientas.
Hola ebel..
Ya intente con eso, y nada ... entonces, quisiera saber si habrá alguna forma de poder tomar los números ante de la coma, así:
De 300.000,00 quede en 300.000
De 2.000.000,00 quede en 2.000.000
Puedes utilizar un pequeña rutina para hacerlo
Function Rutina( nValoraconvertir )
x=str( nValoraconvertir)
cCadRet = ""
for nPos = 1 to len(x)
   if substr( x,nPos,1 ) "."
       cCadRet = cCadRet + Substr( x,nPos,1 )
  else
     exit  
  endif
next
Return cCadRet
Algo así pudiera servir, no he probado la rutina.. suerte..
Hola ebeltranoroz..
Realmente gracias por su ayuda y tiempo, pero aun no he podido solucionar mi problema, apenas lo resuelva le digo cual fue mi error..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas