Configurar mensagens de saída com uma API do API Manager no Jitterbit Design Studio
Introdução
Este padrão de design de integração configura um Salesforce regra de workflow que envia uma mensagem de saída para um API Manager API quando um objeto muda (neste exemplo, o objeto Account). Um projeto do Design 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 alterados do Salesforce para um banco de dados via API Manager é um padrão de design de integração semelhante que usa Integration Studio.
Para configurar este padrão, siga estas seções em ordem:
- Parte 1: No Salesforce, configure uma regra de workflow para enviar uma mensagem de saída quando um objeto for alterado e baixe o arquivo WSDL que define a mensagem.
- Parte 2: No Design 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 um endpoint para o Salesforce.
- Parte 4: Retorne ao Salesforce para atualizar o URL do endpoint da mensagem de saída, ative a mensagem de saída e teste o padrão de design de integração concluído.
Parte 1: Configurar uma regra de workflow do Salesforce e baixar o arquivo WSDL
- No Salesforce, selecione Configuração > Ferramentas da plataforma > Automação de processos > Regras de Workflow.
-
Na página Regras de Workflow, clique no botão Nova regra (destacado na imagem abaixo). Se uma caixa de diálogo Experimente no Flow Builder abrir, clique em Continuar com regras de Workflow.
-
Na página Nova regra de Workflow, clique no menu Objeto, selecione Conta e clique em Avançar.
-
Na página Conta, insira valores para os seguintes itens e clique em Salvar e Avançar:
- Nome da regra: Nome de sua escolha.
- Descrição: (Opcional) Uma descrição para esta regra.
- Critérios de avaliação: Criado e sempre editado.
- Critérios da regra: Clique em Executar esta regra se e selecione A fórmula for avaliada como verdadeira.
- No campo de fórmula, digite true.
-
Na página Editar regra, clique em Adicionar ação de Workflow e selecione Nova mensagem de saída (destacada na imagem abaixo).
-
Na página Nova mensagem de saída, insira valores para os seguintes itens e clique em Salvar:
- Nome: Nome de sua escolha.
- 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. Esta URL temporária é atualizada mais tarde.
- 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 de conta para enviar: Selecione os campos de objeto para enviar. Neste exemplo, apenas Nome e Telefone são selecionados. O campo Id é selecionado automaticamente, porque é o campo-chave para o objeto.
-
Na página Editar regra, clique em Concluído.
-
Na página Regra de Workflow, na seção Ações imediatas de Workflow, clique no link de descrição da mensagem de saída (destacada na imagem abaixo).
-
Na página Detalhes da mensagem de saída do Workflow da mensagem, clique no link Clique para WSDL na linha rotulada WSDL do Endpoint (destacado na imagem abaixo).
-
Um arquivo XML abre em uma nova janela do navegador. Salve o arquivo com um
.wsdl
extensão. Dependendo do seu sistema operacional, você pode ter que definir a extensão do arquivo após o download.
Parte 2: Operações do Design Studio
Defina a operação ' Salesforce Outbound Message'
-
Crie um novo projeto Design Studio.
-
Na lista de itens do projeto à esquerda, clique com o botão direito do mouse em Operações e selecione Nova Operação.
- Na caixa de diálogo Selecionar tipo, selecione Script e clique em Continuar.
-
Na janela Operações, defina o nome da operação como Salesforce Outbound Message.
-
Clique duas vezes na atividade Script da operação e clique em Criar novo Jitterbit Script.
-
Na janela Novo Script, defina valores para o seguinte, clique em Salvar e feche a janela do script:
- Nome: Receber mensagem de saída do Salesforce
-
Edite o script para corresponder ao seguinte:
<trans> $org.api.salesforce.request=$jitterbit.api.request.body; </trans>
Isso cria uma variável global e define o valor da variável global predefinida
jitterbit.api.request.body
. -
Na janela de operação Mensagem de saída do Salesforce, clique em Salvar.
-
Na lista de itens do projeto à esquerda, clique com o botão direito do mouse em Fontes e selecione Nova Fonte.
- Na caixa de diálogo Selecionar tipo, selecione Variável global e clique em Continuar.
-
Na janela Nova fonte, defina valores para o seguinte, clique em Salvar e feche a janela de fonte:
- Nome: Solicitação de API do Salesforce
- Tipo: Variável global
- Nome da variável global: org.api.salesforce.request
Defina a operação 'Enviar resposta da API '
-
Crie uma nova operação do tipo Transformação. Defina o nome da operação como Enviar resposta da API.
-
Clique duas vezes em Transformação. Na caixa de diálogo Selecionar Transformação, clique em Criar Nova Transformação.
-
Na etapa NOME da janela Nova Transformação, insira valores para o seguinte e clique em Avançar >:
- Nome: Enviar resposta da API.
- Fonte: (Nenhuma).
- Alvo: Resposta SOAP/WSDL.
-
Na etapa TARGET, selecione Select a Local WSDL File, clique em Browse..., selecione o arquivo WSDL baixado anteriormente, clique em Next > e aguarde a validação do arquivo.
-
Na etapa TARGET, clique em Next >.
-
Na página Opções, clique em Concluir.
-
Na janela de transformação Enviar resposta da API, expanda todos os nós até o elemento
[EV?] Ack (Boolean)
estiver visível, clique duas vezes nele. -
No Construtor de Fórmulas, edite o script para corresponder ao seguinte e clique em OK para fechar o editor de script:
<trans> true </trans>
Esta é a resposta à solicitação SOAP do Salesforce.
-
Na janela de transformações Enviar resposta da API, clique em Salvar e feche a janela.
-
Na janela de operação Enviar resposta da API, clique com o botão direito do mouse no elemento Destino, selecione Usar resposta da API e clique em Salvar:
A operação Mensagem de saída do Salesforce:
-
Abra a operação Mensagem de saída do Salesforce, selecione a seta para baixo ao lado do nome da operação e selecione Em caso de sucesso > Operação > Selecionar existente....
-
Na caixa de diálogo Selecionar operação de sucesso, selecione Enviar resposta da API e clique em OK.
-
Na janela de operação Mensagem de saída do Salesforce, clique em Salvar.
Defina a operação 'Upsert Database'
-
Crie uma nova operação do tipo Transformação. Defina o nome da operação como Upsert Database.
-
Clique duas vezes na atividade Source.
-
Na caixa de diálogo Selecionar origem, selecione Solicitação de API do Salesforce e clique em OK.
-
Clique duas vezes no elemento Target.
-
Na caixa de diálogo Selecionar destino, clique em Criar novo destino.
-
Na janela Novo destino, defina valores para o seguinte, clique em Testar conexão e feche a janela Banco de dados:
- Nome: Database Endpoint.
- Tipo: Banco de dados.
- Parâmetros de conexão: Defina os parâmetros para seu banco de dados. (Uma conexão com um servidor PostgreSQL é mostrada neste exemplo.)
-
Clique duas vezes no elemento Transformação.
-
Na caixa de diálogo Selecionar Transformação, clique em Criar nova Transformação.
-
Na janela Nova Transformação, insira valores para o seguinte e clique em Avançar >:
- Nome: Upsert Database.
- Fonte: Solicitação SOAP/WSDL.
-
Na etapa SOURCE, selecione Select an Existing WSDL File, depois selecione o arquivo WSDL carregado anteriormente, clique em Next > e aguarde a validação do arquivo.
-
Quando o arquivo for validado, clique em Avançar >.
-
Na página de opções, clique em Avançar >.
-
Na etapa TARGET, clique em Download List of Tables. Selecione a tabela do banco de dados de destino, clique na seta para a direita para movê-la para a lista Selected Tables e clique em Next >.
-
Na etapa TARGET, certifique-se de que Insert/Update esteja selecionado e clique em Finish.
-
Na janela de transformação Upsert Database, expanda as árvores de origem e destino, mapeie os campos arrastando e soltando, clique em Salvar e feche a janela de transformação.
-
Na janela de operação Upsert Database, clique em Salvar e feche a janela.
- Na operação Mensagem de saída do Salesforce, clique duas vezes na atividade Receber mensagem de saída do Salesforce.
-
Na janela de script, edite o script para corresponder ao seguinte, clique em Salvar e feche a janela:
<trans> $org.api.salesforce.request=$jitterbit.api.request.body; RunOperation("<TAG>Operations/Upsert Database</TAG>") </trans>
-
Na janela de operação Mensagem de saída do Salesforce, clique em Salvar.
-
Selecione Ações > Implementar. Na caixa de diálogo Implementar, em Selecionar um tipo de implementação, selecione Tudo e clique em Implementar.
Parte 3: API do API Manager
- Em API Manager, selecione APIs e clique em Nova API.
-
Na etapa 1 da página Publicar nova API, insira valores para os seguintes itens e clique em Avançar:
- Nome da API: Insira um nome para a API.
- Ambiente: Selecione o ambiente onde o projeto do Design 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 o Tipo de serviço e clique em Adicionar serviço de API. Para o novo serviço de API, insira esses valores para os seguintes campos, clique em Salvar e, em seguida, clique em Avançar:
-
Método de solicitação: Use o menu para selecionar o método de solicitação POST para o serviço de 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 Integration Studio projeto.
-
Atribuir operação(ões):
-
Operação: Selecione a operação Mensagem de saída do Salesforce.
-
Tipo de resposta: Selecione Meta final como o tipo de resposta.
-
-
-
-
Na etapa 3, clique em Ignorar esta etapa.
-
Na etapa 4, clique em Salvar e publicar.
-
Na caixa de diálogo intitulada Tudo pronto, sua API está ativa!, clique em Copiar URL e depois em Descartar.
Parte 4: Atualizar URL do endpoint do Salesforce e ativar
- 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 URL do Endpoint (destacado na imagem abaixo) pela URL copiada no final da seção anterior e clique em Salvar.
-
Na seção Regras de Workflow usando esta mensagem de saída, clique em Ativar para a regra (destacada 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.
- Efetue login no seu banco de dados e consultar a tabela de destino.