2011-02-09 73 views
0

我試圖通過Select語句來運行水晶報表,但是我在繼續進行第一個匹配而不是繼續處理每個案例後繼續退出。我怎樣才能讓它根據自己的優點來評估每個條件,而不是在找到第一場比賽後自動斷線?在Crystal Reports中選擇/案例

local numbervar varNumber := 0; 
    Select 7 
     case is <= 1: 
     varNumber := varNumber + 1 //Only gets to here 
     case is <= 2: 
     varNumber := varNumber + 1 
     case is <= 3: 
     varNumber := varNumber + 1 
     case is <= 4: 
     varNumber := varNumber + 1 
     case is <= 5: 
     varNumber := varNumber + 1 
     case is <= 6: 
     varNumber := varNumber + 1 
     case is <= 7: 
     varNumber := varNumber + 1 
    End Select 

varNumber值應該由SELECT語句的末尾爲7,因爲每個條件應已評估爲真,但是它停止擊球第一種情況後,產生varNumber爲1,通常你會有一個突破陳述,告訴它停止通過每個案例陳述,但這不會發生。

另外還有一種方法來模擬這種功能?

回答

1

如果你想這樣做,你不能使用select case來做到這一點,你將不得不構建多個If語句或可能的loop

這是什麼目的?我不確定我是否看到這個功能的重點 - 因爲它總是返回7?

+0

這是一個過於簡單的例子來突出具體問題。 'select'語句不會總是選擇7,它將是一個變量。它的目的是根據輸入變量分配值。我意識到我可以使用多個'if'語句,但是當'select'功能旨在消除對過於複雜和冗長的'if'語句的需要時,要做什麼? – Cameron 2011-02-09 22:33:06