OM 模組底下有一個功能 : Processing Constraints (路徑 : Setup > Rules > Security > Processing Constraints), 此功能是用來定義, 在 OM 模組所屬的畫面, 什麼時候要做什麼, 什麼時候不能做什麼
畫面很簡單, 最上面的部份就是選擇 Application 與 畫面 (Entity)
中間的部分就是設定 Constraints 的地方 :
- Operation : 就是指定動作 (LOV 會因為 Entity 的不同而不同)
- Attribute : 讓你選擇特定欄位 (LOV 會因為 Entity 的不同而不同)
- User Action : 當條件成立時, 你所要執行的動作
最下面就是設定 Conditions :
- Group# : 條件可以設定群組, 群組編號相同就表示為 AND, 不同則為 OR
- Scope : Any / All
- Validation Entity : 選擇條件所在 Entity
- Record Set : Form 的 Data Block
- Validation Template : 驗證範本 (另一個彈性功能)
- User Message : 顯示給使用者看的訊息 (不見得會顯示, 要看你所設定的 User Action, 但是因為是必填, 所以一定要打)
附上目前有使用的功能 :
1. 修改 Ordered Quantity 時, 記錄 History
** Constraints **
- Operation : Update
- Attribute : Ordered Quantity
- User Action : Required History
** Conditions **
- Group# : 1
- Scope : Any
- Validation Entity : Order Header
- Record Set : Order
- Validation Template : Booked
- User Message : Ordered Quantity haved been updated!!
2. 當 Delivery 確認 (Firm) 後, 不允許修改 Order Line 的任一欄位
** Constraints **
- Operation : Update
- Attribute :
- User Action : Not Allowed
** Conditions **
- Group# : 1
- Scope : Any
- Validation Entity : Order Line
- Record Set : Line
- Validation Template : Delivery Firm (自行客製)
- User Message : No Allowed Update!! This line which delivery is firmed. (因為此設定會讓使用者無法操作, 所以設定的 Message 會跳出來給使用者看)

你好,冒昧問個無相關的問題,如果我有一個block讓user輸入完資料,commit後隨即清空block恢復new-block-instance時的畫面,有沒有一個比較"公認"的寫法?目前我是以default where不等式+excute query在做,但狀態列的訊息總會讓某些user有疑慮~
你好, 目前沒有這樣的需求過, 也還蠻好奇為什麼會有這樣的需求, 不過, 我認為只要能做到, 應該沒有什麼大問題, 問題應該是在它會出現怎樣的訊息讓User有疑慮, 如果把它排除掉, User就應該沒什麼問題了才是
我笨了,當初有點想太多,在commit後clear_block即可。有時候寫到精神渙散,還是要休息個一兩天再回頭看比較好= =
呵, 我也有相同的體會, 回頭看自己寫的東西都會覺得, "幹嘛這樣寫" "那樣寫就好了阿" XD