Salesforce avançado
Esta página aborda opções avançadas, funcionalidade de mapeamento avançado e como incluir cabeçalhos em arquivos de sucesso/falha usando os assistentes do Jitterbit Connect Salesforce.
Nota
Ao abrir um projeto existente que usa uma versão anterior da API do Salesforce, você será solicitado a atualizar para a versão mais recente da API do Salesforce com suporte. (Uma atualização para uma versão superior inclui implicitamente todos os recursos e objetos de versões anteriores.)
A versão da API REST do Salesforce que está disponível depende do agente Jitterbit e da versão do Design Studio que você está usando. Consulte Pré-requisitos e versões de API suportadas para mais informações.
Opções avançadas
Opções avançadas ficam acessíveis após você criar uma operação do Salesforce. Você pode visualizar as opções disponíveis no Design Studio seguindo estas etapas:
- Crie uma consultar Salesforce, inserir, inserir, atualizar, apagar, ou processo em massa operação usando o Assistente Jitterbit Connect Salesforce apropriado.
- Conclua o assistente e aguarde até que todos os itens do projeto sejam criados. Você deve ser levado diretamente para o conector Salesforce configurado.
- No painel à esquerda, em Jitterbit Connect > Salesforce, expanda até o conector e clique duas vezes para abrir o item.
- Dentro da janela, clique em Advanced Options para expandir as configurações adicionais. As configurações são exclusivas para cada tipo de operação.
Configurações de lote
Para conectores Processo em massa selecionados (Upsert, Insert, Update, Delete e Hard Delete), as Opções avançadas > Configurações de lote permitem que você configure uma configuração que limita o número de registros retornados ou usados em um lote:
Use 0 ou deixe um campo vazio se não houver limitação em seu valor.
- Registros por arquivo: Por padrão, 10000 (10.000 ou 10K).
- Caracteres por arquivo: Por padrão, 10000000 (10.000.000 ou 10M).
O assistente de consultar do Salesforce tem um Opções avançadas > Opções de operação para definir o tamanho do lote diretamente.
Configurações de chunking
O chunking não está disponível para processo em massa do Salesforce conectores (em vez disso, consulte as Configurações de lote acima). Para Opções avançadas > Configurações de chunking de um conector configurado, você pode configurar:
- Tamanho do bloco: Por padrão, ele é definido como 200. Deve estar no intervalo de 1 a 200.
- Número de registros por arquivo: Por padrão, isso é definido como 0, o que significa todos os registros em um arquivo.
- Número máximo de threads: Por padrão, este valor é 2.
Essas configurações (e os nós de bloco de origem e destino, se aplicável) também podem ser definidas no nível da operação; se for o caso, a janela do conector configurado precisa ser fechada e reaberta para ver essas alterações nessas configurações.
O fragmentação de dados em nível de operação não está disponível para processo em massa do Salesforce operações (em vez disso, consulte as Configurações de lote acima). Para outras operações do Salesforce, essas opções de operação estão disponíveis, conforme mostrado para uma consultar do Salesforce operação:
Para Salesforce inserir, inserir, atualizar, e apagar operações, por padrão, o fragmentação de dados é habilitado com um tamanho do chunk de 200 e um número máximo de threads de 2.
Informações adicionais sobre essas configurações e fragmentação de dados em geral são abordadas em Chunking.
Opções de data
Para Opções avançadas > Opções de data de um conector configurado, você pode configurar as Configurações de conversão de data. Isso se aplica ao mapear para campos de destino do Salesforce com um date
ou date-time
tipo de dados, conforme descrito em Mapear para campos de data ou data e hora do Salesforce mais adiante nesta página.
- O arquivo de origem já usa o formato correto: Se os dados estiverem no formato esperado pelo Salesforce, você pode desabilitar essa conversão selecionando esta opção. O restante dos controles ficará desabilitado.
- Fuso horário: Se a opção acima não estiver selecionada, você pode especificar informações sobre os campos de data e hora na fonte, e os dados serão convertidos de acordo. Especifique uma dessas opções de fuso horário para o
date
edate-time
campos:- Hora do servidor local: Selecione se os campos de data e data-hora são locais para o servidor que executa o agente.
- GMT: GMT é pré-selecionado como o formato padrão.
- Selecione um fuso horário: Se selecionado, especifique um fuso horário no menu suspenso.
- O arquivo de origem usa o formato de data europeu (dd/mm/aaaa): Isso pode ser especificado além de um Fuso horário.
Opções de propriedade
Para Opções avançadas > Política de nova tentativa de um conector configurado, você pode configurar Regras de propriedade do Salesforce:
Política de repetição
Para Opções avançadas > Política de repetição de um conector configurado, você pode configurar:
- Não usar novas tentativas: Selecione para não usar novas tentativas e desabilitar o restante deste diálogo
- Número de novas tentativas: Por padrão, 3.
- Intervalo de novas tentativas (em segundos): Por padrão, 30 segundos.
Funcionalidade de mapeamento avançada
Como parte do Jitterbit Connect Salesforce Wizards, ao concluir certos mapeamentos, o Design Studio cria automaticamente scripts de mapeamento que são comuns para certos casos de uso. Eles se aplicam ao mapear para o Salesforce date
e date-time
campos em uma operação de upsert, inserção ou atualização do Salesforce ou processo em massa do mesmo tipo, bem como ao mapear uma resposta de um upsert, inserção, atualização ou exclusão do Salesforce para outro destino.
Mapear para campos de data ou data e hora do Salesforce
Essa funcionalidade se aplica ao mapear de uma fonte especificada para um campo de destino do Salesforce que tem um date
ou date-time
tipo de dados dentro de um Salesforce upsert, inserir, ou atualizar operação ou um processo em massa do Salesforce operação que é do tipo upsert, insert ou update. A fonte é especificada durante a conclusão do Jitterbit Connect Salesforce Wizard.
Como auxílio ao usuário, ao concluir um mapeamento de transformação, qualquer date
ou date-time
os campos presentes na sua fonte serão mapeados com lógica de script que converte esses campos para o formato esperado pelo Salesforce. A lógica de script específica que é adicionada depende das Configurações de Conversão de Data conforme especificado em Opções de Data avançadas descrito anteriormente nesta página.
Por exemplo, suponha que os dados de origem estejam no formato de YYYY-MM-DD HH:MM:SS
e o fuso horário de origem é GMT. Neste caso, as configurações padrão se aplicam:
Com este exemplo, quando um campo de origem (json$item.LastModifiedDate$
) é mapeado para um alvo date
ou date-time
campo (root$transaction.body$create$Account.LastModifiedDate$
), a lógica do script é adicionada automaticamente ao campo de destino. O script adicionado usa a função Jitterbit GetUTCFormattedDateTime()
e especifica seus parâmetros usando o campo de origem, fuso horário especificado ("UTC"
), e booleano para o formato de data europeu (false
).
A lógica de script específica que é inserida depende das Configurações de Conversão de Data fornecidas pelo usuário. É importante que os dados de origem estejam em um formato que possa ser convertido com a lógica inserida com base nessas configurações. Por exemplo, se você tentar mapear de um campo de origem que não contém uma data ou data-hora, ele não poderá ser convertido com essa lógica.
Erros de log retornados do Salesforce
Esta funcionalidade se aplica ao mapear a resposta do Salesforce que é retornada quando, durante a criação de um Salesforce upsert, inserir, atualizar, ou apagar operação, na etapa Agendamento e opções, a caixa de seleção Opção de resposta para "Preciso interagir com a resposta do Salesforce" está selecionada. Esta opção é selecionada por padrão.
Como auxílio ao usuário, quando essa opção é selecionada, uma segunda transformação é adicionada automaticamente à operação que gera um script mapeado para capturar quaisquer erros retornados do Salesforce e gravar esses erros no log da operação. O destino da transformação é um esquema simples em que a mensagem de erro do Salesforce é mapeada automaticamente para um campo que contém um script gerado para registrar os erros. Além disso, para operações de upsert ou update do Salesforce, o campo de chave externa também é registrado no log.
Por exemplo, se essa opção for selecionada durante a criação de uma operação upsert do Salesforce, uma operação semelhante à mostrada abaixo será criada. A operação inclui tanto a transformação de solicitação inicial para executar o upsert, quanto uma segunda transformação de resposta usada para registrar a resposta do Salesforce:
Ao abrir a transformação de resposta neste exemplo, o lado de destino mostra um esquema simples com um único campo que já está mapeado:
Ao clicar duas vezes no campo de resposta, você pode ver que a lógica de script foi adicionada usando campos da resposta do Salesforce junto com várias funções Jitterbit. A lógica determina que se a resposta de sucesso do Salesforce (root$transaction.response$body$upsertResponse$result.success$
) retorna false
, então a mensagem de erro do Salesforce (root$transaction.response$body$upsertResponse$result.errors#.message$
) será gravado no log de operação. Como esta é uma operação upsert que requer um ID externo para corresponder aos registros do upsert, o ID externo (root$transaction.request$body$upsert$Account#.Jitterbit_Account_ID__c$
) também é relatado de volta no log.
Se posteriormente você alterar qual campo será usado como ID externo, o script precisará ser atualizado com a nova referência do objeto de origem.
Observe que para operações de inserção e exclusão do Salesforce, que não usam um campo de ID externo para corresponder aos registros, a referência de ID externo é excluída do script. Para tais operações, o script mapeado contém esta lógica, abreviada para excluir o ID:
<trans>
// This mapping is part of a Salesforce wizard.
// Modifying it may cause the wizard to malfunction.
If(root$transaction.response$body$createResponse$result.success$ == false,
WriteToOperationLog(
SumString(root$transaction.response$body$createResponse$result.errors#.message$, ". ", false)
)
)
</trans>
Incluir cabeçalhos em arquivos de sucesso e falha
Você pode incluir cabeçalhos como arquivos de sucesso/falha dentro de uma operação de upsert ou atualização do Salesforce de uma fonte de banco de dados. Você deve estar usando um agente privado que seja versão 8.24 ou mais tarde para fazer isso seguindo as instruções abaixo.
Estas etapas mostram como capturar a sequência de cabeçalho de uma fonte de banco de dados e, em seguida, escrever a sequência de cabeçalho no início de um arquivo de sucesso ou falha:
- Defina a variável Jitterbit
jitterbit.sfdc.dbsource.sfheader
- Defina as opções de arquivo de sucesso e falha
- Defina as opções de operação
Defina a variável Jitterbitjitterbit.sfdc.dbsource.sfheader
Nota
Definindo a variável global jitterbit.sfdc.dbsource.sfheader
é necessário para acrescentar o texto do cabeçalho ao arquivo de registro.
-
Criar um script para definir
jitterbit.sfdc.dbsource.sfheader
paratrue
:<trans> $jitterbit.sfdc.dbsource.sfheader=true; </trans>
-
Crie o Assistente do Salesforce Upsert ou Atualizar operação.
-
Insira o script no início da operação de atualização ou upsert, conforme mostrado aqui para uma operação upsert:
Defina as opções de arquivo de sucesso e falha
- Crie um arquivo de destino local para ser usado para os registros de sucesso:
- Clique em Opções do alvo e selecione a caixa de seleção Gravar Cabeçalhos.
- Salve a configuração do alvo clicando no ícone Salvar.
- Repita essas etapas para criar um alvo de arquivo local para ser usado para os registros de falha.
Este exemplo mostra um alvo concluído destinado ao uso com registros de sucesso:
Defina as opções de operação
-
Clique com o botão direito do mouse na operação ou clique na seta suspensa para selecionar o item de menu Opções:
-
A caixa de diálogo Opções de operação permite que você especifique a escrita de registros de sucesso e falha:
- Clique no menu suspenso Gravar registros de sucesso em e selecione o destino apropriado na lista ou selecione Criar novo para criar um novo destino de tipo de arquivo.
- Clique no menu suspenso Gravar registros de falha em e selecione o destino apropriado na lista ou selecione Criar novo para criar um novo destino de tipo de arquivo.
Nota
Se você escolher Criar novo, consulte Destino do arquivo local para obter instruções sobre como criar novos arquivos.
-
Clique em OK e depois clique no ícone Salvar para salvar as alterações na operação.
Este exemplo mostra a gravação de registros de sucesso no destino criado acima e a configuração da gravação de registros de falha em um destino diferente: