Pregunta

Estoy utilizando un campo de fórmula a concatonate 2 valores decimales separados por un guión. Sin embargo, quiero que el resultado para recortar todos los ceros a la derecha unneccesary y puntos decimales para ambos valores.

Por ejemplo, quiero valores 10 y 8,5 para estar "10 - 8,5". Ahora se nota. "10.00 - 8,50"

La fórmula que estoy usando es CSTR({field1}) + " - " + CSTR({field2}).

¿Fue útil?

Solución

Creo que esto es lo que está buscando:

Convertir números decimales a texto que muestra sólo los que no son cero decimales

Especialmente esta línea podría ser útil:

StringVar text     :=  Totext ( {Your.NumberField} , 6 , ""  )  ;

El primer parámetro es el decimal a convertir, el segundo parámetro es el número de cifras decimales y el tercer parámetro es el separador de miles / millones etc.

Otros consejos

CSTR({number_field}, 0, '')

El segundo marcador de posición es para los decimales.

El último marcador de posición es para el separador de miles.

i escribió una función simple para esto:

Function (stringVar param)
(
    Local stringVar oneChar := '0';
    Local numberVar strLen := Length(param);
    Local numberVar index := strLen;

    oneChar = param[strLen];

    while index > 0 and oneChar = '0' do
    (
        oneChar := param[index];
        index := index - 1;
    );

    Left(param , index + 1);
)

También puede intentar usar la función de reemplazar:

reemplazar ( "10.00", "00", "")

pero no va a funcionar si hay números distintos de cero después del punto decimal.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top