式の結果、つまり、式をレポートに配置したときに出力される値を、“式が返す値”または“戻り値”と呼びます。Crystal Reports
の式は、どれも値を返す必要があります。たとえば、次の例は、値 10 を返す簡単な Crystal 構文の式です。
10
式が返す値は、サポートされている単純な 7 つのデータ型のいずれかになります。それらは、数値、通貨、文字列、論理値、日付、時刻、および日時です。
注 Crystal Reports は、範囲変数と配列変数もサポートしますが、範囲と配列の値を式から返すことはできません。
たとえば、ある会社では、出荷の際に 1,000 ドルを超える注文には保険をかけ、それ以下の注文には保険をかけないという方法をとっているとします。
// 文字列値を返す式 If {Orders.受注額} >= 1000 Then "保険付き出荷" Else "通常集荷"
この式は、データベース フィールド{Orders.受注額}の値が 1000 以上の場合は、テキスト文字列値“保険付き出荷”を返し、そうでない場合は、テキスト文字列値“通常出荷”を返します。
Crystal 構文の式は、式の連なりで構成されます。キーワード、演算子、関数、および定数値を組み合わせ、指定した型の値を算出するものを“式”と言います。最後の式の値がこの式が返す値になり、それが出力されます。式と式はセミコロン(;)で区切る必要があります。
Crystal 構文の式が式の連なりから成り、各式の値が最終的な式の値にもなるということは、Crystal 構文を理解する上で最も重要な点です。式を基本にするこの構文を使用すると、多数の機能を持つたいへん短い式を記述できます。
Crystal 構文の式で使用されるすべての変数名、関数、およびキーワードは、大文字と小文字が区別されません。たとえば、キーワード“Then”は、“then”や“THEN”と同等なものとして入力することができます。
文字列に関しては例外です。文字列“Hello”と“hello”は同じではありません。
ここで取り上げる例のほとんどは、Xtreme サンプル データベースを参照しています。このデータベースは Java Developer Zone からダウンロードできます。Xtreme サンプル データベースは、http://www.businessobjects.com/products/dev_zone/java/default.asp からダウンロードできます。