Enviar registros de objetos do Salesforce alterados para um banco de dados via fluxo do Salesforce usando Jitterbit Studio e API Manager
Introdução
Este padrão de design de integração configura um fluxo do Salesforce que envia uma mensagem de saída para uma API do API Manager quando um objeto é alterado (neste exemplo, o objeto Conta). Um projeto do Studio processa a mensagem de saída do Salesforce, mapeia os dados do objeto e os salva em um banco de dados.
Nota
Enviar registros de objetos do Salesforce alterados para um banco de dados via API Manager é um padrão de integração idêntico que usa uma Regra de Fluxo de Trabalho do Salesforce em vez de um Fluxo.
Para configurar este padrão, siga estas seções na ordem:
- Parte 1: No Salesforce, configure uma mensagem de saída e um fluxo para chamá-la quando um objeto for alterado e baixe o arquivo WSDL que define a mensagem.
- Parte 2: No Studio, configure uma cadeia de operações para receber a mensagem de saída do Salesforce e armazenar os valores mapeados em um banco de dados.
- Parte 3: No API Manager, configure uma API como um endpoint para o Salesforce.
- Parte 4: Volte ao Salesforce para ativar o fluxo e, em seguida, teste o padrão de design de integração concluído.
Parte 1: Fluxo do Salesforce e arquivo WSDL
- No Salesforce, selecione Configuração > Ferramentas de Plataforma > Automação de Processos > Ações de Fluxo de Trabalho > Mensagens de Saída.
-
Clique no botão Nova Mensagem de Saída (destacado na imagem abaixo).

-
Na página Nova Mensagem de Saída, clique no menu Objeto, selecione Conta e, em seguida, clique em Próximo.

-
Na página Nova Mensagem de Saída, insira valores para os seguintes campos e clique em Salvar:
- Nome: Sua escolha de nome.
- Nome Único: Este nome é gerado automaticamente com base no valor do Nome e nas regras de nomenclatura do campo.
- Descrição: (Opcional) Uma descrição para esta mensagem de saída.
- URL do Endpoint: example.com. Esta URL temporária será atualizada posteriormente.
- Usuário para Enviar Como: Insira o usuário que envia a mensagem de saída. O valor padrão é o seu nome de usuário do Salesforce.
- Componente Protegido: Não selecionado.
- Enviar ID da Sessão: Não selecionado.
- Campos da Conta para Enviar: Selecione os campos do objeto a serem enviados. Neste exemplo, apenas Nome e Telefone estão selecionados. O campo Id é selecionado automaticamente, pois é o campo chave do objeto.

-
Na página de Detalhes da Mensagem de Fluxo de Saída, clique no link Clique para WSDL na linha rotulada como Endpoint WSDL (destacado na imagem abaixo).

-
Um arquivo XML é aberto em uma nova janela do navegador. Salve o arquivo com a extensão
.wsdl. Dependendo do seu sistema operacional, pode ser necessário definir a extensão do arquivo após o download. -
Na janela do navegador do Salesforce, selecione Configuração > Ferramentas de Plataforma > Automação de Processos > Fluxos.
-
Na página Fluxos, clique no botão Novo Fluxo (destacado na imagem abaixo).

-
Na caixa de diálogo Novo Fluxo do Construtor de Fluxo, selecione a aba Principal, selecione Fluxo Acionado por Registro, e clique em Criar.

-
Na caixa de diálogo Configurar Início, insira valores para os seguintes campos e clique em Concluído:
- Selecionar Objeto: No campo Objeto, insira Conta.
- Configurar Gatilho: Para Acionar o Fluxo Quando, selecione Um Registro é Criado ou Atualizado.
- Definir Condições de Entrada: Para Requisitos de Condição, deixe o valor como Nenhum.
- Otimizar o Fluxo Para: Selecione Ações e Registros Relacionados.

-
Na página Flow Builder, passe o mouse sobre o nó entre Start e End (indicado por uma seta vermelha na imagem abaixo), e clique em
Adicionar Elemento. 
-
Na caixa de diálogo Adicionar Elemento, selecione
Ação. 
-
Na caixa de diálogo Nova Ação, selecione a categoria Mensagem de Saída.

-
Clique na barra de pesquisa Ação, e selecione sua mensagem de saída. Insira valores para os seguintes campos e clique em Concluído:
- Rótulo: Insira um rótulo para a ação.
- Nome da API: Este nome é gerado automaticamente com base no valor do Rótulo e nas regras de nomenclatura do campo.
- Descrição: (Opcional) Insira uma descrição para esta ação.

-
Na página Flow Builder, clique em Salvar.

-
Na caixa de diálogo Salvar o Fluxo, insira valores para os seguintes campos e clique em Salvar:
- Rótulo do Fluxo: Insira um rótulo para o fluxo.
- Nome da API do Fluxo: Este nome é gerado automaticamente com base no valor do Rótulo do Fluxo e nas regras de nomenclatura do campo.
- Descrição: (Opcional) Insira uma descrição para este fluxo.

Parte 2: operações do Studio
Nota
As operações neste padrão são acionadas por uma solicitação de API SOAP. Atividades em massa do Salesforce (Consulta em Massa, Atualização em Massa, Inserção em Massa, Upsert em Massa, Exclusão em Massa e Exclusão Dura em Massa) não são suportadas neste contexto. Use atividades padrão (não em massa) do Salesforce em vez disso.
Defina a operação 'Mensagem de Saída do Salesforce'
-
Crie um novo projeto no Studio.
-
Arraste uma atividade de Solicitação SOAP da paleta de componentes de design e solte-a em uma operação vazia no canvas de design.
- Defina o nome da operação como Mensagem de Saída do Salesforce.
- Clique duas vezes na instância da atividade Solicitação SOAP na operação para abrir sua tela de configuração.
- Na etapa 1, selecione Carregar Arquivo, clique em Procurar, selecione o arquivo WSDL previamente baixado e clique em Carregar.
- Clique em Porta e selecione Notificação (a única opção). Os campos restantes são preenchidos automaticamente e não precisam de mais edições.
-
Clique em Próximo.

-
Na etapa 2, clique em Concluído.

-
Adicione uma nova transformação à direita da atividade Solicitação SOAP.
- Para o esquema de destino, clique em Espelhar Esquema de Origem.
- Clique em Mapear Correspondências Exatas, ou mapeie manualmente os campos de origem para os campos de destino.
-
No esquema de destino, clique em Editar Esquema, defina o nome do esquema como Esquema de Upsert, e clique em Salvar Alterações.

-
Feche a transformação para retornar ao fluxo de trabalho.

-
Na categoria Conectores da paleta de componentes, encontre e clique no conector Variável.
- Deixe os nomes da conexão e da variável com seus padrões, e clique em Salvar Alterações.
- Arraste uma atividade de gravação de Variável da paleta de componentes e solte-a na operação Mensagem de Saída do Salesforce, à direita da transformação.
- Clique duas vezes na atividade Gravar.
-
Na etapa 1, selecione Sim, Usar Esquema Salvo, clique em Esquemas Salvos, selecione Esquema de Upsert, e clique em Próximo.

-
Na etapa 2, clique em Concluído.

A operação Mensagem de Saída do Salesforce:

Defina a operação 'Resposta do Salesforce'
- Arraste uma atividade de Resposta SOAP da paleta de componentes e solte-a em uma operação vazia na tela de design.
- Defina o nome da operação como Resposta do Salesforce.
- Clique duas vezes na atividade Resposta SOAP.
-
Na etapa 1, selecione Selecionar Existente, selecione o arquivo WSDL previamente carregado e clique em Próximo.

-
Na etapa 2, clique em Concluído.

-
Adicione uma nova transformação à esquerda da atividade Resposta SOAP na operação Resposta do Salesforce.
-
Adicione um valor personalizado ao campo Ack com o valor true, e então feche a transformação para retornar ao fluxo de trabalho.

A operação Resposta do Salesforce:

Defina a operação 'Upsert de Banco de Dados'
- Arraste uma atividade de Leitura de Variável da paleta de componentes e solte-a em uma operação vazia na tela de design.
- Defina o nome da operação como Upsert de Banco de Dados.
- Clique duas vezes na atividade Ler.
-
Na etapa 1, selecione Sim, Usar Esquema Salvo, clique em Esquemas Salvos, selecione Esquema de Upsert e clique em Próximo.

-
Na etapa 2, clique em Finalizado.

-
Configure uma conexão de banco de dados para seu banco de dados de destino e clique em Salvar Alterações. (Uma conexão com um servidor PostgreSQL é mostrada neste exemplo.)

-
Arraste uma atividade Atualização do Banco de Dados da paleta de componentes e solte-a na operação Atualização do Banco de Dados, à direita da atividade Ler.
- Clique duas vezes na atividade Atualização.
-
Na etapa 1, clique em Atualizar, selecione a tabela do banco de dados de destino e clique em Próximo.

-
Na etapa 2, selecione as colunas a serem atualizadas e clique em Próximo.

-
Na etapa 3, clique em Finalizado.

-
Na operação Atualização do Banco de Dados, adicione uma nova transformação entre as atividades Ler e Atualização.
-
Mapeie manualmente os campos de objeto de origem do Salesforce para as colunas do banco de dados de destino e, em seguida, feche a transformação para retornar ao fluxo de trabalho.

A operação Atualização do Banco de Dados:

Ações da operação e implantação
- Abra a tela de configurações para a operação Mensagem de Saída do Salesforce.
- Selecione a aba Ações e defina os seguintes valores de campo:
- Condição: Em Caso de Sucesso.
- Ação: Executar Operação.
- Operação: Resposta do Salesforce.
-
Clique em + Adicionar Ação e, em seguida, feche a tela de configurações da operação.

-
Abra a tela de configurações da operação Salesforce Response.
- Selecione a aba Actions, e então defina os seguintes valores de campo:
- Condition: On Success.
- Action: Run Operation.
- Operation: Database Upsert.
-
Clique em + Add Action, e então feche a tela de configurações da operação.

O projeto concluído, antes da implantação:

-
Implante o projeto.
Parte 3: API Manager API
-
No API Manager, selecione APIs, e então clique em New API.
-
Na etapa 1 da página Publish New API, insira valores para os seguintes campos e clique em Next:
-
API Name: Insira um nome para a API.
-
Environment: Selecione o ambiente onde o projeto do Studio foi implantado.
-
Service Root: Deixe o valor inicial derivado do nome da API.
-
Version Number: (Opcional) Insira um número de versão da API.
-
Description: (Opcional) Insira uma descrição para esta API.

-
-
Na etapa 2, selecione Custom API como o Service Type e então clique em Add API Service. Para o novo serviço de API, insira estes valores para os seguintes campos, clique em Save, e então clique em Next:
-
Request Method: Use o menu para selecionar o método de requisição POST para o serviço de API. Por padrão, o método de requisição é definido como GET.
-
Service Name: Insira um nome para o serviço.
-
Na aba Operation, selecione estes valores:
-
Assign Project: No menu, selecione seu projeto do Studio.
-
Assign Operation(s):
-
Operation: Selecione a operação Salesforce Outbound Message.
-
Tipo de Resposta: Selecione Destino Final como o tipo de resposta.
-
-

-
-
Na etapa 3, clique em Pular Esta Etapa.
-
Na etapa 4, clique em Salvar & Publicar.

-
Na caixa de diálogo intitulada Tudo Pronto, Sua API está Ao Vivo!, clique em Copiar URL, depois clique em Dispensar.
Parte 4: Atualizar URL do endpoint do Salesforce e ativar o fluxo
- No Salesforce, selecione Configuração > Ferramentas de Plataforma > Automação de Processos > Ações de Fluxo de Trabalho > Mensagens de Saída.
- Na página Mensagens de Saída, clique em Editar para sua mensagem de saída.
-
Substitua o conteúdo do campo URL do Endpoint (destacado na imagem abaixo) pela URL copiada no final da seção anterior, depois clique em Salvar.

-
Selecione Configuração > Ferramentas de Plataforma > Automação de Processos > Fluxos.
-
Clique no rótulo do fluxo para a entrada Fluxo Jitterbit (destacado na imagem abaixo).

-
Na página Construtor de Fluxo, clique no botão Ativar (destacado na imagem abaixo).

Testar a integração
Para testar este padrão de design de integração, siga estas etapas:
- No Salesforce, abra o aplicativo Serviço, depois selecione a aba Contas.
- Edite um contato de conta e, em seguida, salve-o.
- Faça login no seu banco de dados e consulte a tabela de destino.
Para um guia detalhado sobre a etapa de upsert do banco de dados usada na Parte 2, veja Executar um upsert em massa para um banco de dados. Para orientações sobre como configurar as ações de operação On Success e On Failure, veja Configurar tratamento de erros em operações. Para uma alternativa baseada em polling que não requer fluxos do Salesforce, veja Consultar registros do Salesforce usando SOQL.