Enviar Registros de Objetos do Salesforce Alterados para um Banco de Dados por Meio do Salesforce Flow e do API Manager¶
Introdução¶
Este padrão de design de integração configura um Salesforce fluxo que envia uma mensagem de saída para um API Manager API quando um objeto é alterado (neste exemplo, o objeto Account). Um projeto do Cloud 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 por meio do API Manager é um padrão de integração idêntico que usa uma regra de Workflow do Salesforce em vez de um fluxo.
Para configurar esse padrão, siga estas seções em 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 Cloud Studio, configure uma cadeia de operação para receber a mensagem de saída do Salesforce e armazene os valores mapeados em um banco de dados.
- Parte 3: No API Manager, configure uma API como endpoint para Salesforce.
- Parte 4: retorne ao Salesforce para ativar o fluxo e 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 da plataforma > Automação de processos > Ações de Workflow > 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 clique em Avançar.
-
Na página Nova mensagem de saída, insira os valores a seguir e clique em Salvar:
- Nome: Sua escolha de nome.
- Nome exclusivo: Este nome é gerado automaticamente com base no valor de 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. Este URL temporário será atualizado posteriormente.
- Usuário para enviar como: Insira o usuário que envia a mensagem de saída. O valor padrã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 enviar. Neste exemplo, apenas Nome e Telefone estão selecionados. O campo Id é selecionado automaticamente porque é o campo-chave do objeto.
-
Na página Detalhes da mensagem de saída do Workflow da mensagem, clique no link Clique para WSDL na linha denominada Endpoint WSDL (destacado na imagem abaixo).
-
Um arquivo XML é aberto em uma nova janela do navegador. Salve o arquivo com um
.wsdl
extensão. 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 da plataforma > Automação de processos > Fluxos.
-
Na página Flows, clique no botão New Flow (destacado na imagem abaixo).
-
Na caixa de diálogo Novo fluxo do Flow Builder, selecione a aba Core, selecione Fluxo Acionado por registro e clique em Criar.
-
Na caixa de diálogo Configurar início, insira os valores a seguir e clique em Concluído:
- Selecionar objeto: No campo Objeto, insira Conta.
- Configurar o acionador: 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 Início e Fim (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 enviada. Insira os valores a seguir 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 de Label 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 os valores a seguir e clique em Salvar:
- Rótulo do fluxo: Insira um rótulo para o fluxo.
- Nome da API de fluxo: Este nome é gerado automaticamente com base no valor de Rótulo de fluxo e nas regras de nomenclatura do campo.
- Descrição: (Opcional) Insira uma descrição para este fluxo.
Parte 2: Operações do Cloud Studio¶
Definir a Operação 'Mensagem de Saída do Salesforce'¶
-
Crie um novo projeto Cloud Studio.
-
Arraste uma atividade de solicitação SOAP da paleta de componentes de design e solte-o em uma operação vazia na quadro de design.
- Defina o nome da operação como Salesforce Outbound Message.
- Clique duas vezes na instância da atividade SOAP Request na operação para abrir sua tela de configuração.
- Na etapa 1, selecione Carregar arquivo, clique em Procurar, selecione o arquivo WSDL baixado anteriormente 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 alterações.
-
Clique em Avançar.
-
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 automaticamente correspondências exatas ou mapear manualmente campos de origem para destino.
-
No esquema de destino, clique em Editar esquema, defina o nome do esquema como Upsert Schema e clique em Salvar alterações.
-
Feche a transformação para retornar ao workflow.
-
Na categoria Conectores da paleta de componentes, localize e clique no conector Variável.
- Deixe os nomes de conexão e variáveis 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-o na operação Salesforce Outbound Message, à direita da transformação.
- Clique duas vezes na atividade Write.
-
Na etapa 1, selecione Sim, usar esquema salvo, clique em Esquemas salvos, selecione Upsert Schema e clique em Avançar.
-
Na etapa 2, clique em Concluído.
A operação Mensagem de saída do Salesforce:
Definir a Operação 'Resposta do Salesforce'¶
- Arraste uma atividade de resposta SOAP da paleta de componentes e solte-o em uma operação vazia na quadro de design.
- Defina o nome da operação como Salesforce Response.
- Clique duas vezes na atividade Resposta SOAP.
-
Na etapa 1, selecione Selecionar existente, selecione o arquivo WSDL carregado anteriormente e clique em Avançar.
-
Na etapa 2, clique em Concluído.
-
Adicione uma nova transformação à esquerda da atividade SOAP Response na operação Salesforce Response.
-
Adicione um valor personalizado para o campo Ack com o valor true e feche a transformação para retornar ao workflow.
A operação Resposta do Salesforce:
Defina a Operação 'Database Upsert'¶
- Arraste uma atividade de leitura variável da paleta de componentes e solte-o em uma operação vazia na quadro de design.
- Defina o nome da operação como Database Upsert.
- Clique duas vezes na atividade Ler.
-
Na etapa 1, selecione Sim, usar esquema salvo, clique em Esquemas salvos, selecione Upsert Schema e clique em Avançar.
-
Na etapa 2, clique em Concluído.
-
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 Database Upsert da paleta de componentes e solte-a na operação Database Upsert, à direita da atividade Read.
- Clique duas vezes na atividade Upsert.
-
Na etapa 1, clique em Atualizar, selecione a tabela do banco de dados de destino e clique em Avançar.
-
Na etapa 2, selecione as colunas a serem atualizadas e clique em Avançar.
-
Na etapa 3, clique em Concluído.
-
Na operação Database Upsert, adicione uma nova transformação entre as atividades Read e Upsert.
-
Mapear manualmente origine campos de objeto do Salesforce para colunas de banco de dados de destino e feche a transformação para retornar ao workflow.
A operação Upsert do banco de dados:
Ações de 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 feche a tela de configurações de operação.
-
Abra a tela de configurações da operação Salesforce Response.
- 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: Upsert do banco de dados.
-
Clique em + Adicionar ação e feche a tela de configurações de operação.
O projeto concluído, antes da implantação:
-
Implantar o projeto.
Parte 3: API Manager de API¶
-
Em API Manager, selecione Minhas APIs e clique em Nova API.
-
Na etapa 1 da página Publicar nova API, insira os valores a seguir e clique em Avançar:
-
Nome da API: Insira um nome para a API.
-
Ambiente: Selecione o ambiente em que o projeto do Cloud Studio foi implantado.
-
Raiz do Serviço: Deixe o valor inicial derivado do nome da API.
-
Número da versão: (Opcional) Insira um número de versão da API.
-
Descrição: (Opcional) Insira uma descrição para esta API.
-
-
Na etapa 2, selecione API Customizada como Tipo de serviço e clique em Adicionar serviço de API. Para o novo serviço de API, insira esses valores nos campos a seguir, clique em Salvar e em Avançar:
-
Método de solicitação: Use o menu para selecionar o método de solicitação POST para o serviço API. Por padrão, o método de solicitação é definido como GET.
-
Nome do serviço: Insira um nome de serviço.
-
Na aba Operação, selecione estes valores:
-
Atribuir projeto: No menu, selecione seu projeto do Cloud Studio.
-
Atribuir operação(ões):
-
Operação: Selecione a operação Mensagem de saída do Salesforce.
-
Tipo de resposta: Selecione Alvo final como o tipo de resposta.
-
-
-
-
Na etapa 3, clique em Pular esta etapa.
-
Na etapa 4, clique em Salvar e publicar.
-
Na caixa de diálogo intitulada Tudo definido, sua API está ativa!, clique em Copiar URL e, em seguida, clique em Dispensar.
Parte 4: Atualizar o URL do Salesforce Endpoint e Ativar o Fluxo¶
- No Salesforce, selecione Configuração > Ferramentas da plataforma > Automação de processos > Ações de Workflow > 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 Endpoint URL (destacado na imagem abaixo) pela URL copiada no final da seção anterior e clique em Salvar.
-
Selecione Configuração > Ferramentas da plataforma > Automação de processos > Fluxos.
-
Clique no rótulo do fluxo da entrada Jitterbit Flow (destacado na imagem abaixo).
-
Na página Flow Builder, clique no botão Ativar (destacado na imagem abaixo).
Teste a Integração¶
Para testar esse padrão de design de integração, siga estas etapas:
- No Salesforce, abra o aplicativo Serviço e selecione a aba Contas.
- Edite um contato da conta e salve-o.
- Faça login em seu banco de dados e consultar a tabela de destino.