發表文章

目前顯示的是有「sandbox」標籤的文章

愚蠢的 sandbox 備份法 / [Error] Inbound Change Sets: An internal server error has occurred

圖片
案例宣教 我有一個 sandbox 準備要 refresh,但裡面還有一些東西是還沒上到 production、且必須保留下來繼續開發的。 備份的方法有很多,但我剛好就選用了最笨的一種…… 我把 A sandbox 要備份的東西打包成一個 outbound change set,然後傳到了另一個 B sandbox。 但我沒有 deploy 他,想說就讓他以一個 inbound change set的姿態靜靜地躺在 B sandbox 裡面,等哪天我需要他的時候再打開來取用就好了。 於是我就放心地 refresh 了 A sandbox。 結果好死不死,當我真的遇到需要打開這個 inbound change set 來查看的時候,發現遇到了…… An internal server error has occurred 那個靜靜躺著的 inbound change set,怎麼樣也點不開。一點就出錯。 後來又查又問了 Salesforce Support 才發現:當你的來源 sandbox 被 refresh 後,對應的 inbound change set 也會失效。 沒救了。

Messaging.sendEmail not sending emails for non-admin profile in sandbox / 測試寄信,一直寄不出去,而且還沒有 error messsage!

總在自以為很嫺熟相關設定的時候,就會不小心又踩到一個坑。 這次是Messaging.sendEmail,怎麼也 send 不出去。 ## 症狀 我寫了一個 Apex Trigger on Knowledge__kav,讓 user 在 create new knowledge 的時候,會自動觸發通知信給相關人士。 我剛在 sandbox 做好的時候,自己測起來相當很正常、都有收到信,於是就聲稱說我把這個功能完成了。 結果別人怎麼都測不出來。 後來發現,好像只有 System Administrator 才能觸發寄送 Email 的動作。 我設了 Debug Log 也沒看到任何 error。 而non-admin 與 admin 所產生的 log,幾乎可說是一模一樣。 看不出到底寄信的動作在哪裡卡住了。 ## 原因 Root Cause 在 Sandbox,如果某個 user 的 Email 是 Invalid 的,那麼這個 user 就沒辦法觸發寄信動作。 包含 Workflow, Process, Flows or Triggers,通通都無法觸發。 這是 Summer Release 19' 上路的新制。望周知。 ## 參考資料 Messaging.sendEmail not sending emails for non-admin profile in sandbox Email addresses in sandbox appended with '.invalid' after refresh Please note as of Summer Release 19', Users must have a verified email address and .invalid removed from the email address in order to send email alerts via Workflow, Process, Flows or Triggers.

Sandbox Refresh 的間隔期限,是從前一次按下去的時間起算?還是從前一次跑完的時間起算?

圖片
問 Sandbox Refresh 的間隔期限,是從前一次按下去的時間起算?還是從前一次跑完的時間起算? 例如 Developer 類型的 sandbox,一天最多只能做一次 refresh。 更精確地說,是24小時之內只能做一次。 所以如果今天早上按了 refresh,就必須等明天早上才能再按一次。 但每次從按下 refresh 到跑完 refresh 流程,都需要等一陣子。 例如我早上九點按 refresh,可能到了中午十二點才 refresh 完成。 那以這個情況來說, 我到底是隔天的九點就可以再按一次 refresh,還是隔天的中午十二點才能再按呢? 答 早上九點即可再按一次。 是以 按下去的時間起算 24小時 ( Last Refresh Request Date ) 而不是以 Completed On 的時間來起算的。

各種 Sandbox 的比較:Developer, Developer Pro, Partial Copy, Full。 以及模擬考題

圖片
比較表  考照模擬題目: Production 有些 custom object 包含了機密資訊。若需要一個沙箱可以 包含 data record 排除所有機密資訊 每週 refresh 那敢問貴 App Builder 該如何是好? 擬答: 使用 Partial Copy Sandbox 以及 Sandbox Template。