Consulte os conetores suportados para a solução Application Integration.
Invocar uma integração para um evento de captura de dados de alterações (CDC) do Salesforce
Saiba como criar uma integração de exemplo na integração de aplicações através do acionador do Salesforce. Os passos seguintes descrevem como configurar o acionador, as tarefas, os conetores e os mapeamentos de dados necessários para executar uma integração completa.
Neste início rápido, vai usar o acionador do Salesforce para invocar uma integração na Application Integration para um evento de captura de dados de alterações (CDC) do Salesforce, conforme mostrado na figura seguinte:
Um acionador do Salesforce está subscrito no canal de oportunidades do Salesforce. As alterações aos dados da oportunidade do Salesforce invocam uma integração de aplicações que extrai o estado da oportunidade do Salesforce. Se o estado for fechado, a integração extrai os detalhes da oportunidade e escreve os dados numa instância do Cloud SQL através de um conetor. Se houver uma alteração de dados, mas o estado permanecer aberto, a integração envia uma mensagem para um tópico de publicação/subscrição através de um conetor.
Os passos seguintes descrevem como configurar o acionador, as tarefas, os perfis de autenticação, os limites, as variáveis e o mapeamento de dados necessários para executar uma integração bem-sucedida.
Antes de começar
- Confirme que a sua conta de programador do Salesforce tem a funcionalidade Change Data Capture (CDC) ativada. Este tutorial pressupõe que tem uma conta de programador do Salesforce existente com a configuração de utilizador e o conjunto de autorizações necessários. Para obter informações sobre a configuração do utilizador e o conjunto de autorizações do Salesforce, consulte o artigo Configure um acionador do Salesforce.
- Atribua as seguintes funções do IAM ao agente do serviço de integração de aplicações(
service-PROJECT_NUMBER@gcp-sa-integrations.iam.gserviceaccount.com
) no seu projeto do Google Cloud.- Editor do Pub/Sub
- Administrador de conetores
- Application Integration Invoker
- Crie a tabela do Cloud SQL para armazenar os dados da CDC do Salesforce.
- Na Google Cloud consola, aceda à página Instâncias do Cloud SQL e ligue-se à sua instância do MySQL. Consulte o artigo Estabeleça ligação ao Cloud SQL para MySQL a partir do Cloud Shell.
- Crie a seguinte base de dados MySQL na sua instância do Cloud SQL:
CREATE DATABASE SALESFORCE_TRIGGER_DEMO; USE SALESFORCE_TRIGGER_DEMO; CREATE TABLE OPPORTUNITIES ( ID INT NOT NULL AUTO_INCREMENT, NAME VARCHAR(150) NOT NULL, AMOUNT DOUBLE NOT NULL, DT_CLOSE VARCHAR(150) NOT NULL, PRIMARY KEY (ID) ); COMMIT;
- Verifique se a tabela foi criada executando o seguinte comando.
SELECT * FROM OPPORTUNITIES;
- Crie uma ligação do Cloud SQL para MySQL em Conectores. Consulte o artigo Crie uma ligação do Cloud SQL para MySQL para ver informações detalhadas.
- Crie uma ligação do Cloud Pub/Sub em Conetores. Consulte o artigo Crie uma ligação do Cloud Pub/Sub para ver informações detalhadas.
Crie uma nova integração
Para criar uma nova integração, siga estes passos:
- Na Google Cloud Console, aceda à página Integração de aplicações.
- Clique em Integrações no menu de navegação do lado esquerdo para abrir a página Integrações.
- Clique em Criar integração.
- Introduza um nome e uma descrição na caixa de diálogo Criar integração. Por exemplo,
Demo-CDC-Opportunities
. - Selecione uma região para a integração.
- Clique em Criar para abrir o criador de integrações.
Adicione e configure o acionador do Salesforce
Para adicionar e configurar um acionador do Salesforce à integração, siga estes passos:
- No criador de integrações, selecione Adicionar uma tarefa/acionador > Acionadores para apresentar uma lista de acionadores disponíveis.
- Clique e coloque o elemento Acionador do Salesforce no criador de integrações.
- Clique no elemento Acionador do Salesforce na tela para abrir o painel de configuração do acionador.
- Configure os seguintes campos em Entrada do acionador:
- Tipo de evento: selecione Captura de dados de alterações (CDC) na lista pendente.
- Configuração da instância do Salesforce: clique na opção + Adicionar nova configuração da instância do Salesforce na lista pendente.
É apresentada a caixa de diálogo Adicionar configuração da instância do Salesforce.
- Nome da ligação da instância do Salesforce: introduza um nome de ligação para a instância do Salesforce. Por exemplo,
CDC-PlatformUser
. - Domínio do Salesforce: introduza o nome do seu domínio do Salesforce. Pode encontrar estas informações na página Conta do Salesforce > Ver perfil.
- Perfil de autenticação: selecione um perfil de autenticação. Se não tiver um perfil de autenticação, crie um novo. Para mais informações, consulte o artigo Crie um novo perfil de autenticação.
- Clique em Adicionar.
- Nome da ligação da instância do Salesforce: introduza um nome de ligação para a instância do Salesforce. Por exemplo,
- Configuração do canal do Salesforce: clique na opção + Adicionar nova configuração do canal do Salesforce na lista pendente.
É apresentada a caixa de diálogo Adicionar canal do Salesforce.
- Nome do objeto do Salesforce: introduza
Opportunity
. - Clique em Adicionar.
- Nome do objeto do Salesforce: introduza
- Operação: selecione Atualizar na lista pendente
As alterações às propriedades são guardadas automaticamente.
Adicione e configure tarefas
Este tutorial usa as tarefas Conetores e Mapeamento de dados. Os detalhes de configuração de cada uma destas tarefas são descritos da seguinte forma.
Configure uma tarefa de conetores com uma ligação do Cloud SQL para MySQL
Execute os seguintes passos para configurar uma tarefa de Conetores para inserir registos numa tabela do Cloud SQL existente através da ligação do Cloud SQL para MySQL:
- Selecione +Adicionar uma tarefa/acionador > Tasks no criador de integrações para apresentar a lista de tarefas disponíveis.
- Clique e coloque o elemento Conetores no criador de integrações.
- Clique no elemento de tarefa Conetores no criador para ver o painel de configuração da tarefa Conetores.
- Clique em
Insert row to Cloud SQL
.
e altere o nome de Conectores para - Clique em Configurar tarefa.
É apresentada a caixa de diálogo Configurar tarefa de conetor.
- Faça o seguinte na caixa de diálogo Configurar tarefa de conetor:
- Selecione a região de ligação.
- Depois de escolher uma região, é apresentada a coluna Ligação. Selecione a sua ligação do Cloud SQL para MySQL na lista de ligações disponíveis.
- Depois de escolher uma associação, é apresentada a coluna Tipo. Selecione Entidades e, de seguida, OPORTUNIDADES na lista de entidades disponíveis.
- Depois de escolher um tipo, é apresentada a coluna Operação. Selecione Criar.
- Clique em Concluído para concluir a configuração da associação e fechar o painel.
Configure uma tarefa do Connectors com uma ligação do Cloud Pub/Sub
Execute os passos seguintes para configurar uma tarefa Connectors para publicar uma mensagem do Pub/Sub através da ligação do Cloud Pub/Sub:
- Selecione +Adicionar uma tarefa/acionador > Tasks no criador de integrações para apresentar a lista de tarefas disponíveis.
- Clique e coloque o elemento Conetores no criador de integrações.
- Clique no elemento de tarefa Conetores no criador para ver o painel de configuração da tarefa Conetores.
- Clique em
Publish to cloud pub/sub
.
e altere o nome de Conectores para - Clique em Configurar tarefa.
É apresentada a caixa de diálogo Configurar tarefa de conetor.
- Faça o seguinte na caixa de diálogo Configurar tarefa de conetor:
- Selecione a região de ligação.
- Depois de escolher uma região, é apresentada a coluna Ligação. Selecione a sua associação do Pub/Sub na lista de associações disponíveis.
- Depois de escolher uma associação, é apresentada a coluna Tipo. Selecione Ações e, de seguida, publishMessage na lista de ações disponíveis.
- Clique em Concluído para concluir a configuração da associação e fechar o painel.
Configure a tarefa de mapeamento de dados
Faça o seguinte para configurar uma tarefa de mapeamento de dados:
- Selecione Adicionar uma tarefa/acionador > Tarefas para apresentar uma lista de tarefas disponíveis.
- Clique e coloque o elemento Mapeamento de dados no criador de integrações.
- Clique no elemento Mapeamento de dados no criador para abrir o painel de configuração da tarefa.
- Clique em Abrir editor de mapeamento de dados.
O editor de mapeamento de dados permite-lhe mapear variáveis de entrada para as variáveis de saída desejadas, através das funções de transformação disponíveis. A saída fica, então, disponível como uma variável para qualquer outra tarefa de integração ou acionador. Para mais detalhes sobre a transmissão de dados como variáveis, consulte o artigo Usar variáveis na integração de aplicações.
- Clique em + Adicionar nova variável e crie as seguintes variáveis de saída:
Nome da variável de saída Tipo de dados OpportunityIsClosed
Boolean
OpportunityId
String
PubSubMessage
String
- Crie o seguinte mapeamento entre a variável SalesforceTriggerCdcPayload e as variáveis Payload de entrada do conetor, conforme mostrado na tabela seguinte:
Entrada Resultado SalesforceTriggerCdcPayload.GET_PROPERTY("IsClosed").TO_BOOLEAN()
OpportunityIsClosed
SalesforceTriggerCdcPayload.GET_PROPERTY("Id").TO_STRING()
OpportunityId
OpportunityId.TO_DOUBLE()
connectorInputPayload.ID(Insert row to Cloud SQL)
SalesforceTriggerCdcPayload.GET_PROPERTY("Name").TO_STRING()
connectorInputPayload.NAME(Insert row to Cloud SQL)
SalesforceTriggerCdcSnapshot.GET_PROPERTY("Amount").TO_DOUBLE()
connectorInputPayload.AMOUNT(Insert row to Cloud SQL)
SalesforceTriggerCdcSnapshot.GET_PROPERTY("CloseDate").TO_STRING()
connectorInputPayload.DT_CLOSE(Insert row to Cloud SQL)
OpportunityId.CONCAT(" is still open")
PubSubMessage
PubSubMessage
connectorInputPayload.message(Publish to cloud pub/sub)
Quando o mapeamento estiver concluído, feche o painel. As alterações são guardadas automaticamente.
Adicione uma ligação de aresta
Uma aresta é uma ligação entre dois elementos numa integração, e uma condição de aresta permite-lhe especificar as condições que têm de ser cumpridas para que o controlo de uma integração seja transferido para a tarefa ligada pela aresta. Para mais informações sobre arestas e condições de arestas, consulte o artigo Arestas.
- Adicione uma ligação de aresta do elemento Acionador do Salesforce ao elemento Mapeamento de dados.
- Adicione uma ligação de aresta do elemento Mapeamento de dados ao elemento Inserir linha no conetor do Cloud SQL com a seguinte condição de aresta:
$OpportunityIsClosed$ = TRUE
- Adicione outra associação de limite do elemento Mapeamento de dados ao elemento Conetor do Cloud Pub/Sub com a seguinte condição de limite:
$OpportunityIsClosed$ = FALSE


Teste a integração
Para testar a nova integração:
- Clique em Testar na barra de ferramentas do criador de integrações e, de seguida, selecione o Acionador do Salesforce.
É apresentada a caixa de diálogo Testar integração.
- Clique em Testar integração.
Teste a tarefa do Cloud SQL iniciando sessão na instância do Salesforce e alterando o estado de uma oportunidade para "fechado".
Teste a tarefa Pub/Sub iniciando sessão na instância do Salesforce e alterando outro detalhe sobre a oportunidade, mas deixe o estado da oportunidade "aberto".
Para mais informações sobre os testes, consulte o artigo Teste e publique integrações.
Para verificar o êxito da integração:
- Aceda à página Cloud SQL. Verifique a base de dados e os registos do Cloud SQL para confirmar a inserção da nova linha.
- Aceda à página Pub/Sub. Selecione o seu tópico Pub/Sub e, de seguida, clique em Ver mensagens para confirmar a receção da mensagem enviada pela integração.
- Inspecione os registos da integração de aplicações para ver o estado de uma determinada integração. Para ver registos:
- Clique em Registos na barra de ferramentas do criador de integrações.
- Na página Registos de execução, pode ver detalhes sobre cada tentativa de executar uma integração.
Cada entrada inclui detalhes da tentativa de execução, incluindo:
- Nome da integração
- ID de execução
- Estado
- Hora de início
- Duração
- Versão da integração
- ID do acionador
- Clique na seta de expansão (>) junto à integração executada para ver uma lista expandida de tarefas e variáveis na integração, juntamente com o estado das tarefas e os payloads das variáveis.