停用表單或組織的自動儲存
本主題適用於 Dynamics 365 Customer Engagement (on-premises)。 有關本主題的 Power Apps 版本,請參閱: 停用模型導向應用程式中的自訂儲存功能
自動儲存協助人員專注於其工作,而不必管理儲存表單上的資料。 大多數人會對每次更新記錄時不必明確保存資料大加讚賞,不過,某些組織可能有設計必須明確儲存的自訂。 對於這些組織,可以選擇管理如何套用自動儲存。
自動儲存的運作方式
根據預設,更新的實體和傳統實體的所有主要表單會啟用自動儲存。 在記錄建立 (最初儲存) 後,表單的任何變更將在變更後的 30 秒自動儲存。 如果表單中並未變更,當表單開啟時不會發生自動儲存。 變更後,自動儲存前 30 秒期間重新開始。 人員正在編輯的欄位不包含在自動儲存中。 當您編輯時,如果其他人更新了同一筆記錄,這些變更將會在自動儲存時擷取並顯示在表單中。
已啟用自動儲存時,儲存按鈕只針對記錄初始儲存時才會出現。 在記錄建立後,在命令列上的儲存按鈕不會顯示,但是,如果有任何未儲存的變更,您可以在右下角看到 按鈕。 如果自動儲存已停用,這個控制項也會顯示。
您可以按一下這個按鈕,儲存記錄並立即重新整理表單中的資料。 如果已啟用自動儲存,每當您離開記錄或關閉顯示記錄的另一個視窗,記錄都會被儲存。 對於未更新的實體,不需要出現在表單中的儲存後關閉按鈕。
重要
在整合介面中,如果自動儲存期間發生錯誤,則會增加頁面的自動儲存間隔。 此外,如果屬性值已變更或是已成功儲存,則間隔會重設為 30 秒。
您是否應該停用自動儲存?
如果您有在記錄儲存時執行的外掛程式、工作流程或表單指令碼,它們會在發生自動儲存時執行。 如果這些擴充功能未設計成配合自動儲存使用,這可能會造成非預期的行為。 不論您是否啟用自動儲存,都必須將外掛程式、工作流程和表單指令碼設計為尋找特定變更,不應無差別地對每個儲存事件執行。
如果您有針對實體設定的稽核,每一次儲存被視為個別的更新。 如果有人在有未儲存的變更的表單持續超過 30 秒,只有在自動儲存執行之後加入更多資料,您才會看到其他項目。 如果您有依賴稽核資料並將每次儲存視為記錄個別編輯 (“touch”) 的報表,可能會看到記錄編輯頻率的增量。 如果您使用這種方法,不論是否啟用自動儲存,都應該考慮個別使用者行為會使其成為不可靠的計量。
停用組織的自動儲存
如果您判斷自動儲存會對使用的任何擴充功能造成問題,則可以障您的組織停用此功能。 沒有為個別實體或表單停用自動儲存的設定。
移至設定>管理。
選擇系統設定。
對於對所有表單啟用自動儲存選項,選取 否。
對表單停用自動儲存
如果您要對特定實體表單停用自動儲存,您可以將程式碼新增至實體中的 OnSave
事件。
注意
表單的自動儲存功能將會停用,但是當您點擊右下角的 按鈕時,資料仍會儲存。 如果您嘗試離開或關閉已變更資料的表單,系統會提示您儲存變更,然後才能離開或關閉表單。
選擇導覽列上的 Microsoft Dynamics 365>設定。
設定隨即出現在瀏覽列上。
移至設定>自訂。
選擇自訂系統。
在元件底下,展開實體,然後找到實體表單。
展開實體節點並選擇表單。
開啟您要編輯的表單。
建立 JavaScript Web 資源並將它加入至表單:
在表單編輯器中,在表單群組中選擇表單屬性。
在事件索引標籤上,在表單程式庫中選擇新增。
在查詢記錄對話方塊中,選擇新增。
在 Web 資源表單中輸入下列資訊:
數值 名字 preventAutoSave 顯示名稱 防止自動儲存 輸入 指令碼 (JScript) 在類型欄位旁,選擇文字編輯器。
在來源欄位中,貼上下列程式碼:
function preventAutoSave(econtext) { var eventArgs = econtext.getEventArgs(); if (eventArgs.getSaveMode() == 70 || eventArgs.getSaveMode() == 2) { eventArgs.preventDefault(); } }
選擇確定,關閉文字編輯器。
選擇儲存,儲存 Web 資源,然後關閉 Web 資源視窗。
您建立的新 Web 資源在查詢記錄對話方塊中已選取。 選擇新增關閉對話方塊。
設定 OnSave 事件:
在表單屬性視窗中的事件處理常式區段,將事件設定為 OnSave。
按一下新增。
在處理常式屬性視窗中,將程式庫設定為您在上一個步驟中加入的 Web 資源。
在函數欄位中,輸入 ‘
preventAutoSave
’。 這個值區分大小寫。 不要包含引號。確定已勾選已啟用。
勾選傳送執行內容做為第一個參數。
重要
如果不這樣做,指令碼無法運作。
處理常式屬性對話方塊如下所示: 自訂首碼:「new_」可能會因為您組織之預設發行者設定的自訂首碼而改變。
按一下確定關閉處理常式屬性對話方塊。
如果有
OnSave
事件的其他事件處理常式,請使用綠色箭號將這個事件處理常式移至頂端。
按一下確定關閉表單屬性對話方塊。
按一下儲存後關閉,關閉表單。
在方案總管,按一下發行所有自訂。
將此指令碼套用至
OnSave
事件之後,當人員使用此表單編輯記錄時,未儲存的變更訊息會出現在表單的右下角,就如同自動儲存已啟用。 但是除非有人按一下 按鈕,否則此訊息不會消失。