我在我的數據庫中有3列:COL1,COL2和COL3。我希望把它們放在我的報告,但動態的,如:動態列結構
IF i = 3 THEN COL3
ELSE IF i = 2 THEN COL2
ELSE IF i = 1 THEN COL1
所以結構取決於條件。所以有可能有類似以下的東西?
stringvar test:= COL;
numbervar i = 3;
{test + toText(i)}
我想捕捉異常,如果列結構在未來發生變化。
我在我的數據庫中有3列:COL1,COL2和COL3。我希望把它們放在我的報告,但動態的,如:動態列結構
IF i = 3 THEN COL3
ELSE IF i = 2 THEN COL2
ELSE IF i = 1 THEN COL1
所以結構取決於條件。所以有可能有類似以下的東西?
stringvar test:= COL;
numbervar i = 3;
{test + toText(i)}
我想捕捉異常,如果列結構在未來發生變化。
That's not exactly something Crystal Reports is well equipped for。沒有好的方法來使用字符串來確定不使用if-else結構的情況下抓取哪個字段。
但是,如果將來添加了COL4
,那麼您仍然必須進入並更改報告,以便numbervar
可以設置爲4. Crystal沒有好的方法來預測可能存在或不存在的列。因此,記住if-else語句是確定要抓取哪一列的最佳方法。雖然節省的複製粘貼一點點的時間,你可以編寫代碼的新線路的意見和激活他們在適當的時候對時間的:
IF i = 1 THEN {table.COL1}
ELSE IF i = 2 {table.COL2}
ELSE IF i = 3 {table.COL3}
\\ ELSE IF i = 4 {table.COL4}
\\ ELSE IF i = 5 {table.COL5}
\\ ...
就像這樣:
numbervar s:=0;
if {Command_1.emp_number} = 1 then
s = 3
else
s = 4;
希望它可以幫助作爲指導..
在公式中使用它.. –