Loading
設定並維護您的 Salesforce 組織
目錄
選取篩選

          沒有結果
          沒有結果
          以下是搜尋小祕訣

          檢查關鍵字的拼字。
          使用較常見的搜尋字詞。
          選取較少篩選條件以擴大您的搜尋。

          搜尋所有 Salesforce 說明
          取消封存 Apex

          取消封存 Apex

          根據特定篩選條件,以程式設計的方式在「封存」應用程式中取消封存記錄,並取回符合您要求的搜尋結果。

          取消封存記錄也會取消封存其根記錄和子記錄的整個階層樹狀結構。

          備註
          備註 如果搜尋結果包含超過 1,000 個記錄,則不會處理取消封存。
          備註
          備註

          透過 Apex 取消封存要求限制為每個組織每小時 50 個。

          如果您超過此限制,您會收到 HTTP 狀態代碼 429。

          備註
          備註 取消封存 Apex 可以同時執行最多 10 個取消封存動作。復原與 Apex Unarchive 皆視為取消封存動作。

          先決條件

          啟用「封存」 「啟用取消封存」 可從「封存」應用程式或透過 Apex 取消封存記錄。如果您只需要一個取消封存權限,請啟用其中一個自訂權限,並手動將其指派給自訂權限集或設定檔。

          • 封存取消封存:僅能從「封存」應用程式取消封存記錄的權限。
          • 封存取消封存 SDK:僅透過 Archive SDK 取消封存記錄的權限。

          取消封存 Apex 函數

          針對每個取消封存要求搜尋一個物件,並將最多六個篩選條件套用至搜尋。

          performUnarchiveSdk(String sObjectName, List<SearchFilter> filters, DateRange dateRange)
          performUnarchiveSdk(String sObjectName, List<SearchFilter> filters)

          Apex 參數

          sObjectName
          Apex 查詢的物件。此參數為必填。
          搜尋篩選
          根據欄位條件縮小搜尋結果的篩選條件。此參數為必填。
          • 欄位名稱:篩選依據的欄位,例如 NameCreatedDate
          • 值或值清單:要比對的特定值。如果您使用值清單,Apex 資料查詢會將其與 OR 運算子結合在一起。
          日期篩選
          若要根據日期搜尋,請使用 DateRange 參數和必要篩選條件。DateRange 會依如 ArchiveDateCreatedDateModifiedDate 等欄位篩選記錄。此參數為選擇性。日期篩選條件建議:
          • 根據歸檔日期新增要搜尋的 archive_date 日期欄位。
          • 使用 Apex 日期格式:MM/DD/YYYY。

          傳回的值

          傳回值為 ArchiverAccessorResponse

          • 已執行取消封存作業的要求識別碼
          • 搜尋的記錄總數
          • 狀態代碼,包括錯誤
          ArchiverAccessorResponse.getBody(); ⇒ String
          ArchiverAccessorResponse.getStatusCode(); ⇒ integer
            200 - if the request was accepted
            400 - if the request wasn't accepted
          ArchiverAccessorResponse.getErrorMessage(); ⇒ String

          取消封存 Apex 案例

          檢閱「封存」應用程式中取消封存 Apex 流程的範例。

          案例 1:找到的相符記錄少於 1,000,要求已處理—成功!

          您想要取消封存擁有學士學位的所有候選項目。

          • 您使用 filter has BA=true 執行「封存 Apex Unarchive」函數。
          • 系統會搜尋候選項目清單,並找到少於 1,000 個已歸檔記錄。
          • 隨即新增類型為 Unarchive SDK 的新活動,並完成所有未歸檔欄位。傳回值是找到的記錄數。

          案例 2:找到 1,000 筆以上的相符記錄,要求未處理—失敗

          您想要取消封存具有主要學位的所有候選項目。

          • 您使用 filter has MA=true 執行「封存 Apex Unarchive」函數。
          • 系統會搜尋候選項目清單,並尋找 1,000 筆以上的已歸檔記錄。
          • 「歸檔 Apex 未歸檔」流程會失敗結束,且不會建立任何活動。傳回值包含找到的記錄數和錯誤:400,範圍太大。

          案例 3:記錄少於 1,000 個、找不到相符記錄、未處理要求—失敗

          您想要取消封存具有主要學位的所有候選項目。

          • 您使用 filter has MA=true 執行「封存 Apex Unarchive」函數。
          • 系統會搜尋候選項目清單,並找到少於 1,000 個記錄,但找不到相符的記錄。未建立任何活動。傳回值是找到的記錄數。

          案例 4:找到 1,000 筆以下的相符記錄、已處理要求、部分成功—成功!

          您想要取消封存擁有學士學位的所有候選項目。

          • 您使用 filter has BA=true 執行「封存 Apex Unarchive」函數。
          • 系統會搜尋候選項目清單、找到少於 1,000 個記錄,並取消封存這些記錄。
          • 符合篩選條件的記錄無法成功封存。隨即新增類型為 Unarchive SDK 的新活動,並完成所有未歸檔欄位。傳回值是找到的記錄數。

          程式碼文件

          performUnarchiveSdk(String sObjectName, List<SearchFilter> filters, DateRange dateRange)
          performUnarchiveSdk(String sObjectName, List<SearchFilter> filters)

          傳回值:ArchiverAccessorResponse

          ArchiverAccessorResponse.getBody(); ⇒ String
          ArchiverAccessorResponse.getStatusCode(); ⇒ integer
            200 - if the request was accepted
            400 - if the request wasn't accepted
          ArchiverAccessorResponse.getErrorMessage(); ⇒ String

          程式碼範例

          範例 1:取消封存名為「擁有的帳戶」。

          List<SearchFilter> request = new List<SearchFilter>();
          String sObjectName = 'Account';
          SearchFilter filter1 = new SearchFilter('Name', 'Own');
          request.add(filter1);
          ArchiverAccessorResponse res = ArchiverAccessor.performUnarchiveSdk(sObjectName, request);
          Map<String, Object> jsonMap = (Map<String, Object>) JSON.deserializeUntyped(res.getBody());
          
          system.debug(jsonMap.get('request_id'));
          system.debug(jsonMap.get('total_result_count'));

          範例 2:使用篩選條件取消封存帳戶,其中名稱為 PersonAccount3,日期範圍為過去 150 天內建立的記錄。

          // Initialize a list to hold search filters for the archive operation
          List<SF_Archive.SearchFilter> request = new List<SF_Archive.SearchFilter>();
          
          // Define the Salesforce object name to perform the operation on
          String sObjectName = 'Account';
          
          // Create a search filter based on the 'Name' field with a specific value
          SF_Archive.SearchFilter filter1 = new SF_Archive.SearchFilter('Name', 'PersonAccount3');
          
          // Add the created filter to the request list
          request.add(filter1);
          
          // Create a date range filter to select records created in the last 150 days
          // It calculates the start date by subtracting 150 days from today's date
          SF_Archive.dateRange range = new SF_Archive.dateRange('CreatedDate', system.today()-150, system.today());
          
          // Perform the unarchive operation with the specified object name, filters, and date range
          // This retrieves records from the archival that match the given criteria
          SF_Archive.ArchiverAccessorResponse res = SF_Archive.ArchiverAccessor.performUnarchiveSdk(sObjectName, request, range);
          
          // Deserialize the JSON response body to a Map object to easily access the data
          Map<String, Object> jsonMap = (Map<String, Object>) JSON.deserializeUntyped(res.getBody());
          
          // Debug print the request ID and total result count from the response for logging purposes
          system.debug(jsonMap.get('request_id'));
          system.debug(jsonMap.get('total_result_count'));

          取消封存 Apex 案例

          以下是在「封存」應用程式中取消封存 Apex 流程的範例。

          情況 1:找到 1,000 筆以下的相符記錄,已處理要求—成功!

          根據新的業務要求,客戶想要取消封存擁有學士學位的所有候選項目。

          1. 將「封存 Apex 取消封存」函數搭配 filter has BA=true 使用。
          2. 找到的候選項目清單有少於 1,000 個未歸檔的記錄。
          3. 系統會新增新活動,其中包含新的 typeArchive Apex Unarchive 函數,並填寫所有未歸檔欄位。

            傳回值 = 找到的記錄數。

          情況 2:找到 1,000 筆以上的相符記錄,要求未處理—失敗

          根據新的業務要求,客戶想要取消封存所有具有主要程度的候選項目。

          1. 將「封存 Apex 取消封存」函數搭配 filter has MA=true 使用。
          2. 找到的候選項目清單有超過 1,000 個未歸檔的記錄。
          3. 封存 Apex 未封存流程失敗結束。
            未建立任何活動。
            找到的記錄傳回值 =#,錯誤:400,範圍太大

          情況 3:記錄少於 1,000 個、找不到相符記錄、未處理要求—失敗

          根據新的業務要求,客戶想要取消封存所有具有主要程度的候選項目。

          1. 將「封存 Apex 取消封存」函數搭配 filter has MA=true 使用。
          2. 找到的候選項目清單有少於 1,000 個記錄。找不到相符的記錄。
            未建立任何活動。
            傳回值 = 找到的記錄數

          情況 4:找到 1,000 筆以下的相符記錄、已處理要求、部分成功—成功!

          根據新的業務要求,客戶想要取消封存擁有學士學位的所有候選項目。

          1. 將「封存 Apex 取消封存」函數搭配 filter has BA=true 使用。
          2. 找到的候選項目清單少於 1,000 個記錄,且記錄未歸檔。
          3. 符合篩選條件的記錄無法成功封存。
            系統會以新的類型新增新的活動 Apex並填寫所有未歸檔欄位。

            傳回值 = 找到的記錄數

           
          正在載入
          Salesforce Help | Article