Mantener los ceros de un número en el Visual Fox pro

¿Hay alguna manera en VFP 6.0 de mantener los ceros de un numero?
Paso a explicar:
Al poner "000", que tome "000" y no solamente "0" ó
al poner "001", que tome "001" y no solamente "1" ó
al poner "089", que tome "089" y no solamente "89"
Pero que este mantenga la condición de numérico
Espero tu respuesta
Gracias

2 respuestas

Respuesta
1
Si, hay una manera de hacerlo, nada más que para almacenarlo tendrías que hacerlo en un campo de tipo texto, ya que es el tipo de dato que devielve la función.
Utiliza la función PADL
Sintaxis:
PADL(A,B,c)
A: Valor numérico.
B: Ancho a respetar.
C: Carácter de relleno.
Ejemplo:
nNum = 12
cNumCeros = PADL(nNum,4,'0')
* --> cNumCeros = '0012'
En realidad lo que hace la función esc ompletar con un carácter el anchjo que le digas.
Respuesta
1
Te comento que manteniendo el formato numérico no es posible que te guarde los ceros.
Lo que podes hacer, es en el momento de mostrarlo, hacer que se vean los ceros, por ejemplo con la función padl
Ejecuta la siguiente linea en la ventana de comandos para ver un ejemplo
? PADL(12,5,'0')
Saludos y espero haber sido de utilidad
Esto funcionó de maravilla en un form de prueba, pero en el form donde lo tengo que utilizar hago un calculo numérico y después lo completo con ceros. Hasta ahí perfecto, salvo que en vez de mostrarme 001 me muestra 001.0
¿Cómo hago para eliminar el punto deicmal?
Gracias
Ejecuta las siguientes ordenes en la ventana de comandos para ver como funciona
lnValor=123.00
*-- MUESTRA LOS CEROS
? PADL(lnvalor,7,'0')
*-- NO LOS MUESTRA
? PADL(INT(lnvalor), 7,'0')
Saludos y espero haber sido de utilidad

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas