Você está aqui:
Desarquivar Apex
Desarquive de modo programático os registros no aplicativo Arquivar com base em filtros específicos e recupere os resultados da pesquisa que correspondem à sua solicitação.
Desarquivar um registro também desarquiva toda sua árvore hierárquica de registros raiz e filho.
As solicitações de desarquivar por meio do Apex estão limitadas a 50 por hora por organização.
Se você exceder esse limite, receberá o código de status HTTP 429.
Pré-requisitos
Habilitar Arquivar Habilitar Desarquivar para desarquivar registros do aplicativo Arquivar ou por meio do Apex. Se você precisar apenas de uma permissão para desarquivar, habilite uma dessas permissões personalizadas e atribua-a manualmente a um conjunto de permissões ou perfil personalizado.
- Arquive Unarchive: Permissão para desarquivar registros apenas do aplicativo Arquivo.
- Arquive Unarchive SDK: Permissão para desarquivar registros apenas por meio do SDK Arquivar.
Desarquivar funções do Apex
Pesquise um objeto por solicitação de desarquivamento e aplique, no máximo, seis filtros à pesquisa.
performUnarchiveSdk(String sObjectName, List<SearchFilter> filters, DateRange dateRange)
performUnarchiveSdk(String sObjectName, List<SearchFilter> filters)Parâmetros do Apex
- sObjectName
- O objeto consultado pelo Apex. Esse parâmetro é obrigatório.
- Filtros de pesquisa
- Filtros que limitam os resultados da pesquisa com base nas condições de campo. Esse parâmetro é obrigatório.
- Nome do campo: O campo pelo qual filtrar, como
NameouCreatedDate. - Valor ou lista de valores: O valor ou os valores específicos a serem correspondidos. Se você usar uma lista de valores, as Consultas de dados do Apex as combinarão com um operador de
OR.
- Nome do campo: O campo pelo qual filtrar, como
- Filtros de data
- Para pesquisar com base em datas, use o parâmetro
DateRangee os filtros necessários. ODateRangefiltra registros por campos comoArchiveDate,CreatedDateeModifiedDate. Esse parâmetro é opcional. Recomendações de filtro de data:- Adicione o campo de data de
archive_datepara pesquisar com base na data de arquivamento. - Use o formato de data do Apex: MM/DD/AAAA.
- Adicione o campo de data de
Valores retornados
O valor retornado é ArchiverAccessorResponse.
- ID da solicitação da operação de desarquivamento realizada
- Número total de registros recuperados pela pesquisa
- Código de status, incluindo erros
ArchiverAccessorResponse.getBody(); ⇒ String
ArchiverAccessorResponse.getStatusCode(); ⇒ integer
200 - if the request was accepted
400 - if the request wasn't accepted
ArchiverAccessorResponse.getErrorMessage(); ⇒ StringDesarquivar cenários do Apex
Revise exemplos do processo de desarquivar Apex no aplicativo Arquivo.
Escenário 1: Menos de 1.000 registros correspondentes encontrados, solicitação processada – Sucesso!
Você deseja desarquivar todos os candidatos que têm uma licenciatura.
- Você executa a função Arquivar Apex Unarchive com o filtro
has BA=true. - O sistema pesquisa a lista de candidatos e encontra menos de 1.000 registros arquivados.
- Uma nova atividade do tipo Unarchive SDK é adicionada e todos os campos de unarchive são concluídos. O valor de retorno é o número de registros encontrados.
Escenário 2: Mais de 1.000 registros correspondentes encontrados, solicitação não processada – Falha
Você deseja desarquivar todos os candidatos que têm um mestrado.
- Você executa a função Arquivar Apex Unarchive com o filtro
has MA=true. - O sistema pesquisa a lista de candidatos e encontra mais de 1.000 registros arquivados.
- O processo de desarquivamento do Apex de arquivo termina sem sucesso e nenhuma atividade é criada. O valor de retorno inclui o número de registros encontrados e um erro: 400, escopo muito grande.
Escenário 3: Menos de 1.000 registros, nenhum registro correspondente encontrado, nenhuma solicitação processada – Falha
Você deseja desarquivar todos os candidatos que têm um mestrado.
- Você executa a função Arquivar Apex Unarchive com o filtro
has MA=true. - O sistema pesquisa a lista de candidatos e encontra menos de 1.000 registros, mas nenhum registro correspondente é encontrado. Nenhuma atividade é criada. O valor de retorno é o número de registros encontrados.
Escenário 4: Menos de 1.000 registros correspondentes encontrados, solicitação processada, sucesso parcial – Sucesso!
Você deseja desarquivar todos os candidatos que têm uma licenciatura.
- Você executa a função Arquivar Apex Unarchive com o filtro
has BA=true. - O sistema pesquisa a lista de candidatos, encontra menos de 1.000 registros e os desarquiva.
- Registros que correspondem ao filtro são desarquivados com sucesso. Uma nova atividade do tipo Unarchive SDK é adicionada e todos os campos de unarchive são concluídos. O valor de retorno é o número de registros encontrados.
Documentação de código
performUnarchiveSdk(String sObjectName, List<SearchFilter> filters, DateRange dateRange)
performUnarchiveSdk(String sObjectName, List<SearchFilter> filters)Valor de retorno: ArchiverAccessorResponse
ArchiverAccessorResponse.getBody(); ⇒ String
ArchiverAccessorResponse.getStatusCode(); ⇒ integer
200 - if the request was accepted
400 - if the request wasn't accepted
ArchiverAccessorResponse.getErrorMessage(); ⇒ StringExemplos de código
Exemplo 1: desarquivar contas chamadas de propriedade.
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'));Exemplo 2: Desarquive contas com um filtro, em que o nome é PersonAccount3 e o intervalo de datas são registros criados nos últimos 150 dias.
// 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'));- Desarquivar cenários do Apex
Aqui estão exemplos do processo de desarquivar Apex no aplicativo Arquivo.
Desarquivar cenários do Apex
Aqui estão exemplos do processo de desarquivar Apex no aplicativo Arquivo.
Cenário 1: menos de 1.000 registros correspondentes encontrados, solicitação processada – sucesso!
De acordo com uma nova solicitação comercial, um cliente deseja desarquivar todos os candidatos que têm uma licenciatura.
-
Use a função Arquivar Apex Unarchive com o filtro
has BA=true. - A lista de candidatos encontrada tem menos de 1.000 registros não arquivados.
-
Uma nova atividade é adicionada com uma nova função typeArchive Apex Unarchive e todos os campos unarchive preenchidos.
Valor de retorno = o número de registros encontrados.
Cenário 2: Mais de 1.000 registros correspondentes encontrados, solicitação não processada – Falha
De acordo com uma nova solicitação de negócios, o cliente deseja desarquivar todos os candidatos que têm um mestrado.
-
Use a função Arquivar Apex Unarchive com o filtro
has MA=true. - A lista de candidatos encontrada tem mais de 1.000 registros não arquivados.
-
O processo de desarquivamento do Apex de arquivo termina sem sucesso.
Nenhuma atividade é criada.Valor de retorno =# registros encontrados, erro: 400, escopo muito grande
Cenário 3: menos de 1.000 registros, nenhum registro correspondente encontrado, nenhuma solicitação processada – Falha
De acordo com uma nova solicitação de negócios, o cliente deseja desarquivar todos os candidatos que têm um mestrado.
-
Use a função Arquivar Apex Unarchive com o filtro
has MA=true. -
A lista de candidatos encontrada tem menos de 1.000 registros. Nenhum registro correspondente foi encontrado.
Nenhuma atividade é criada.Valor de retorno = No de registros encontrados
Cenário 4: Menos de 1.000 registros correspondentes encontrados, solicitação processada, sucesso parcial – sucesso!
De acordo com uma nova solicitação comercial, o cliente deseja desarquivar todos os candidatos que têm uma licenciatura.
-
Use a função Arquivar Apex Unarchive com o filtro
has BA=true. - A lista de candidatos encontrada tem menos de 1.000 registros e os registros não são arquivados.
-
Registros que correspondem ao filtro são desarquivados com sucesso.
Uma nova atividade é adicionada com um novo tipo Apex e todos os campos de unarchive são preenchidos.
Valor de retorno = No de registros encontrados

