2008-11-20 10 views
12

Esta es Crystal Reports 9 en Visual Studio 2003 por ciertoCómo utilizar si entonces si no para construir una cadena en un cristal de los informes fórmula

Simple pregunta sobre Crystal informes fórmula sintaxis: ¿Cómo construir el resultado de la fórmula usando si entonces cláusulas?

Específicamente me gustaría algo como esto:

dim val as string 
val = {table.level} 
if {table.uom_id} = 5 then 
    val = val & ' feet' 
else 
    val = val $ ' meters' 
end if 

y val debería ser el resultado de la fórmula.

¿Mientras tanto, hay algún atajo para escribir esto? Estos son horriblemente detallados, el operador ternario sería muy bienvenido.

Respuesta

17

Su ejemplo está cerca. Sólo tiene que utilizar la sintaxis Crystal, como se muestra aquí:

stringvar val := {table.level}; 

if {table.uom_id} = 5 then 
    val := val + ' feet' 
else 
    val := val + ' meters'; 

//to return a value, just plop it down at the end 
val 

Pero si quieres algo un poco más concisa, utilice esto:

if {table.uom_id} = 5 then 
    {table.level} + ' feet' 
else 
    {table.level} + ' meters'; 
+0

Gracias, estos son un total dolor –

+0

Son sí. Si Crystal le permitiera llamar a una función de otra (con parámetros), la vida sería mucho más fácil. – JosephStyons

+0

En realidad, creo que Crystal _does_ te permite llamar a una función desde una fórmula. – SarekOfVulcan

Cuestiones relacionadas