Jenn,
¿Qué deseas devolver si el valor no es numérico?
Tu primer fragmento de fórmula debería darte lo que estás buscando:
If NumericText ({table.field}) Then
ToNumber ({table.field})
Else
0
Si colocas una versión sin formato de {table.field} al lado del campo anterior, ¿cuáles son sus valores cuando se devuelve "0"?
Esto te dará una idea de qué elementos en la base de datos están causando que falle NumericText.
Tal vez intenta con IsNumeric(str) y ve si eso es diferente.
Tal vez verifica la configuración de localización de la base de datos en comparación con la configuración de CR, si los indicadores decimales son diferentes, podrías tener problemas.
También asegúrate de recortar los datos primero, los espacios en blanco al final o al principio harán que falle NumericText.
Por lo tanto, es posible que tengas que hacer algún formato en el texto antes de verificar si es numérico.
Para estar seguro, tal vez intenta
StringVar myNumericString
myNumericString := Replace({table.field}," ","");
myNumericString := Trim(myNumericString); // Above will do this but just for fun
If NumericText(myNumericString) then
ToNumber(myNumericString);
Else
0;
Con suerte eso ayuda.
Darren