Jenn,
O que deseja devolver se o valor não for numérico?
Seu primeiro fragmento de fórmula deve fornecer o que você está procurando:
If NumericText ({table.field}) Then
ToNumber ({table.field})
Else
0
Se você colocar uma versão sem formatação de {table.field} ao lado do campo anterior, quais são seus valores quando retorna "0"?
Isso lhe dará uma ideia de quais elementos no banco de dados estão causando a falha do NumericText.
Talvez tente com IsNumeric(str) e veja se isso é diferente.
Verifique também a configuração de localização do banco de dados em comparação com a configuração de CR, se os separadores decimais forem diferentes, você pode ter problemas.
Certifique-se também de cortar os dados primeiro, espaços em branco no final ou no início farão com que o NumericText falhe.
Portanto, talvez seja necessário fazer algum formato no texto antes de verificar se é numérico.
Para ter certeza, talvez tente
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;
Com sorte isso ajuda.
Darren