2008-11-20 16 views
12

Si tratta di Crystal Reports 9 in Visual Studio 2003 per la viaCome utilizzare se poi il resto per costruire una stringa in un report Crystal formula

domanda semplice su cristallo sintassi rapporti formula: Come faccio a costruire il risultato della formula utilizzando se poi clausole?

In particolare vorrei qualcosa di simile:

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

e val dovrebbe essere il risultato della formula.

Finché ci siamo, ci sono scorciatoie per scrivere queste? Questi sono orribilmente prolissi, l'operatore ternario sarebbe molto gradito.

risposta

17

Il tuo esempio è vicino. Basta usare la sintassi di cristallo, come illustrato di seguito:

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 

Ma se volete qualcosa di un po 'più concisa, utilizzare questo:

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

Grazie, questi sono un dolore totale –

+0

sì sono. Se Crystal ti permettesse di chiamare una funzione da un'altra (w/parametri), la vita sarebbe molto più semplice. – JosephStyons

+0

In realtà, penso che _does_ Crystal ti permetta di chiamare una funzione da una formula. – SarekOfVulcan

Problemi correlati