如何在使用者儲存紀錄時,跳出客製化的訊息? How to pop up a customized message when user saves the record?
有的時候你會需要在使用者儲存時,跳出一些提示訊息。
通常是透過 validation 的 error message 或是 Apex Trigger 的 exception (call addError()) 來實現。
但上述兩種方法都會把使用者儲存的動作直接擋下來。
有的時候我們希望讓使用者在看到訊息的同時,仍然能夠成功地儲存 record。
目前我想到了兩種情境會遇上這個需求:
- 在使用者 update an opportunity 時,若是這個客戶是個特殊地區的客戶,需要提醒 Sales 留意我們的技術支援的允許範圍。
- 在使用者 update an opportunity 時,若是原定 auto close 的邏輯造成 triegger fail 了。則仍然讓使用者 update this record,並於畫面上跳出一個訊息顯示「已寄發通知給相關人士處理」
這個功能技術上完全可以實現,但我找不到現成簡便的實現方式。
這個 LWC 小工具完全開放原始碼,你可以自己拿回去改。如果看不懂程式碼的,也完全可以隨裝即用,非常簡單。
他的概念就是透過 Process Builder (或是 Flow) 在 record 符合條件時,就觸發 insert an event record to an event object(BTW, event object的 api name 結尾是 __e 而不是 __c)
然後再用一個 LWC 去訂閱這個 event,就可以透過簡單的 JavaScript 觸發跳出訊息框。
這邊也有圖文並茂的說明:
招數是死的,需求是活的。
不過有了這個基本範例打底,就可以變幻出千變萬幻的招數了!
留言
張貼留言