izquierda - Formatear un campo usando ToText en un campo de fórmula de Crystal Reports
totext crystal reports (2)
Estoy intentando crear un campo de fórmula de Crystal Reports (para calcular el cambio porcentual en un precio) que devolverá "N / A" si un campo de informe en particular es nulo, pero devuelve un número a dos decimales usando el formato de contabilidad (negativo números rodeados por paréntesis) si no es así.
Lo más cerca que he podido manejar es esto:
If IsNull({ValuationReport.YestPrice}) Then
''N/A''
Else
ToText({@Price}/{ValuationReport.YestPrice}*100-100, ''###.00'', 2)
Sin embargo, esto representa números negativos usando un signo negativo, no paréntesis.
Probé cadenas de formato como ''###. 00; (#### 00)'' y ''(###. 00)'', pero se rechazaron como no válidas. ¿Cómo puedo lograr mi objetivo?
Creo que está buscando ToText(CCur(@Price}/{ValuationReport.YestPrice}*100-100))
Puede usar CCur
para convertir números o cadenas a formatos de Curency. CCur(number)
o CCur(string)
Creo que esto es lo que estás buscando,
Replace (ToText(CCur({field})),"$" , "")
que dará los paréntesis para los números negativos
Es un poco raro, pero no estoy seguro de que CR sea muy amable en la forma de formatear
if(isnull({uspRptMonthlyGasRevenueByGas;1.YearTotal})) = true then
"nd"
else
totext({uspRptMonthlyGasRevenueByGas;1.YearTotal},''###.00'')
La lógica anterior debe ser lo que estás buscando.