在crystal reports中支援兩種語法,crystal和basic,本文只介紹crystal語法。
crystal
語法是不區分大小寫的。
1)資料型別
在crystal reports中,支援七種簡單資料型別
數字:1,-100
貨幣:$100.1,-$12或ccur(100.1),ccur(-12)
字串:「123」,「字串」
布林值:true,false
日期:cdate(「2/2/2009」)
範圍資料型別
從2到5(包括2和5)
2 to 5
從2到5(不包括2包括5)
2 _to 5
小於或等於5
upto 5
小於5的所有數字
upto_ 5
日期範圍
#jan 5,2009# to #dec 12,2009#
陣列型別
[1,2,3] [
」a」,」b」,」c」]
2)變數作用域
區域性變數:
區域性變數只限於單個公式以及該公式的單個求值。也就是說,無法從其他公式訪問某個公式中的區域性變數值。
區域性變數聲命格式:
local +
型別名稱(帶有字尾 var)+ 該變數名宣告的
例子:local strin**ar x := "hello";
全域性變數:
全域性變數使用相同的記憶體塊在整個主報表中儲存乙個值。除子報表中的公式外,該值隨後可用於所有宣告此變數的公式。
全域性變數聲命格式:
global+
型別名稱(帶有字尾 var)+ 該變數名宣告的
例子:global strin**ar y;
預設情況下,也可以省略建立全域性變數的 global 關鍵字。
共享變數:
共享變數使用相同的記憶體塊,在整個主報表及其所有子報表中儲存變數值。因而,共享變數甚至比全域性變數更普遍。若要使用共享變數,請在主報表內的公式中宣告它
共享變數聲命格式:
shared+
型別名稱(帶有字尾 var)+ 該變數名宣告的
例子:shared strin**ar y;
3)運算子
算術運算子用於組合數字、數值變數、數值字段和數值函式以得到另乙個數字。
算術運算子是加 (+)、減 (-)、乘 (*)、除 (/)、整除 (")、百分比 (%)、求餘 (mod)、求反 (-) 和求冪 (^)。
下面是優先順序從高到低排列的算術運算子:
求冪 (^)
求反 (-)
乘、除和百分比 (*, /, %)
整除 (")
求餘 (mod)
加和減 (+, -)
比較運算子通常用於比較控制結構中的條件(如 if 表示式)的運算元。
比較運算子有等於 (=)、不等於 (<>)、小於 (<)、小於或等於 (<=)、大於 (>) 和大於或等於 (>=)。
布林運算子通常與比較運算子一起使用,生成控制結構的條件。
按照從優先順序最高到最低的順序,布林運算子有:not、and、or、xor、eqv 和 imp。
一般情況下,crystal reports 在公式中遇到空值欄位時,會立即停止公式求值而不產生任何值。若要處理公式中的空字段值,則必須使用專門用於處理空字段值的特殊函式進行顯式處理。這些函式包括:isnull、previousisnull 或 nextisnull。
4)控制結構
if 表示式是最有用的控制結構之一。它使您得以在條件為 true 時對一系列表示式求值,而在條件不為 true 時對其他一系列表示式求值。
例子:if = "sales" then
* 0.06
else
* 0.04
select
表示式與 if 表示式相似。然而,有時可以使用 select 表示式編寫更清楚且重複少的公式。下例對 字段求值,以確定區號是北京區號 (010) 還是其他地方:
例子:select [1 to 3]
case "010" : "
北京"
default : "
其他";
for
迴圈使您能夠對一系列表示式多次求值。這不同於 if 和 select 表示式,在 if 和 select 語句中,程式在對公式求值時幾乎同時傳遞每個語句。
如果事先知道需要對語句求值的次數,最好使用 for 迴圈。
使用 for 迴圈
local numbervar strlen :=0;
local numbervar i;
local numbervar sum;
for i := 1 to 100 do (
sum := sum +1i
);
while ... do
迴圈對條件求值,如果條件為 true,則對 do 後面的表示式求值。
完成對表示式的求值後,再次對該條件求值,如果條件為 true,則再次對 do 後面的表示式求值。
它不斷重複該過程,直到條件為 false 時為止。
do ... while
迴圈對任何表示式求值一次。
然後對條件求值,如果條件為 true,則再次對表示式求值。該過程持續進行,直到條件為 false 時為止。
5)函式
在crystal reports中,系統提供了很多函式,有數學、彙總、財務、字串、日期/時間、日期範圍、陣列、型別轉換、程式設計快捷方式、求值時間、列印狀態、文件屬性和附加函式。還有一些函式是條件格式設定公式專用函式。
Crystal Reports基本語法
在crystal reports中支援兩種語法,crystal和basic,本文只介紹crystal語法。crystal 語法是不區分大小寫的。1 資料型別 在crystal reports中,支援七種簡單資料型別 數字 1,100 貨幣 100.1,12或ccur 100.1 ccur 12 字串...
Crystal Reports中的字段
字段,是crystal reports呈現資料的基本單元,也是報表的資料中心。在crystal reports中,欄位的型別有資料庫字段,公式字段,引數字段,組名字段,執行總計字段,特殊字段,未繫結字段。資料庫字段 查詢資料集中欄位的一種方式,資料庫字段一般來說描述資料的方式比較固定,資料集中是什麼...
Crystal Reports公式語法介紹
crystal reports 公式的語法比較簡單,但支援的操作符和函式非常多。在公式中可以使用變數 常量。也可以引用資料庫字段,其格式為 以下主要介紹一下字段 操作符 函式。一 字段 建立報表時使用的許多欄位也可以在公式中引用。例如,資料庫 引數 執行總計 sql表示式 摘要 組名等字段均可用於公...