iT邦幫忙

0

TIPTOP 內 CASE 用法

CASE 只可以像這樣用,還是他也可以兩個條件?

  1. 正常
    CASE A
    WHEN 'Y' 正確
    WHEN 'N' 不正確
    END CASE
  2. 雙條件
    CASE A,B
    WHEN 'Y,Y' LET 正確
    WHEN 'Y,N' LET 不正確
    WHEN 'N,Y' LET 不正確
    END CASE
CASE 沒有雙引數,他就是針對一個引數去做值的判斷
你要多條件就用 IF,如果非得用 CASE,建議改寫如下
CASE C
WHEN A=Y AND B=Y LET C=正確
ELSE LET C=不正確
END CASE

這邊有很多很熟TIPTOP 大神在過往有很多類似的問題有更多的解答
小弟在這邊班門弄斧一下
carry1246 iT邦新手 5 級 ‧ 2021-05-17 13:22:07 檢舉
如果我現在的狀況改成
我有一個訊息要跳出來
例如我是要讓正確的時候,跳出下面這串
IF NOT cl_confirm('amm-049') THEN RETURN END IF
不正確則是跳出
LET u_message="無法結案"
CALL cl_msgany(1,1,u_message)
RETURN
這樣的話呢?
但我的正確不正確在於我有其餘9個變數,只要9個變數中有一個是N,我就要讓他跳CALL cl_msgany() 其他跳 IF NOT cl_confirm('amm-049') THEN RETURN END IF
九個變數,弄成陣列,陣列輪詢,只要有N,就CALL cl_msgany()否則就 IF NOT cl_confirm('amm-049') THEN RETURN END IF ,這樣會不會比較簡單,而且發現一個N 還可以去帶 那個發生錯誤提示USER

尚未有邦友回答

立即登入回答