2008-11-20 9 views
12

C'est Crystal Reports 9 dans Visual Studio 2003 par la façon dontComment utiliser si alors d'autre pour construire une chaîne dans un cristal rapports formule

simple question sur Crystal Reports formule la syntaxe: Comment puis-je construire le résultat de la formule à l'aide si alors les clauses?

Plus précisément, je voudrais quelque chose comme ceci:

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

et val doit être le résultat de la formule.

Tant que nous y sommes, y a-t-il des raccourcis pour les écrire? Ceux-ci sont horriblement verbeux, l'opérateur ternaire serait le bienvenu.

Répondre

17

Votre exemple est proche. Il suffit d'utiliser la syntaxe Crystal, comme indiqué ici:

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 

Mais si vous voulez quelque chose d'un peu plus concis, utilisez ceci:

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

Merci, ce sont une douleur totale –

+0

Oui, ils sont. Si Crystal vous permettait d'appeler une fonction d'une autre (w/paramètres), la vie serait tellement plus facile. – JosephStyons

+0

En fait, je pense que Crystal _does_ vous permet d'appeler une fonction à partir d'une formule. – SarekOfVulcan