Manual do usuárioFluxos de trabalhoApresentar dados de registros relacionados

Apresentar dados de registros relacionados

Mostre dados de registros relacionados (por exemplo, informações da Empresa em Oportunidades) usando fluxos de trabalho.

Apresente dados de registros relacionados diretamente nos seus registros — por exemplo, mostre o número de funcionários de uma Empresa nas suas Oportunidades. Esta solução alternativa com fluxos de trabalho é útil até que os campos aninhados estejam disponíveis nativamente.

Casos de uso comuns

FonteDestinoCampos a copiar
EmpresaOportunidadeSetor, Tamanho da empresa, ARR
PessoaOportunidadeE-mail, Telefone, Cargo
OportunidadeEmpresaValor do último negócio, Data do último negócio ganho

Cópia básica de campo

Exemplo: copiar e-mail do contato para a oportunidade

Objetivo: ao definir um ponto de contato numa oportunidade, copiar o e-mail dessa pessoa para a oportunidade para acesso facilitado.

Pré-requisito

Crie os campos de destino em Configurações → Modelo de dados → Oportunidades antes de construir o fluxo de trabalho:

  • E-mail do contato (tipo: E-mail)
  • Telefone do contato (tipo: Telefone)

Configuração

  1. Gatilho: Registro é atualizado (Oportunidades, campo Ponto de contato).
  2. Filtro: verificar que o ponto de contato não está vazio.
  3. Pesquisar registros: encontrar a pessoa associada.
    • Objeto: Pessoas.
    • Filtro: ID igual a {{trigger.object.pointOfContact.id}}.
  4. Atualizar registro:
    • Objeto: Oportunidades.
    • Registro: {{trigger.object.id}}.
    • E-mail do contato: {{searchRecords[0].email}}.
    • Telefone do contato: {{searchRecords[0].phone}}.

Copiar vários campos

Exemplo: sincronizar informações da empresa com todas as oportunidades relacionadas

Objetivo: quando os detalhes da empresa mudarem, atualizar todas as oportunidades relacionadas.

Configuração

  1. Gatilho: Registro é atualizado (Empresas).
    • Campos: Setor, Tamanho da empresa, Receita anual.
  2. Pesquisar registros: encontrar todas as oportunidades desta empresa.
    • Objeto: Oportunidades.
    • Filtro: ID da empresa igual a {{trigger.object.id}}.
  3. Iterador: percorrer cada oportunidade.
  4. Atualizar registro (dentro do iterador):
    • Objeto: Oportunidades.
    • Registro: {{iterator.currentItem.id}}.
    • Setor da empresa: {{trigger.object.industry}}.
    • Tamanho da empresa: {{trigger.object.companySize}}.
    • ARR da empresa: {{trigger.object.annualRevenue}}.

Copiar na criação do registro

Exemplo: preencher a oportunidade com dados da empresa

Objetivo: ao criar uma oportunidade vinculada a uma empresa, copiar automaticamente as informações principais da empresa.

Pré-requisito

Crie os campos de destino em Configurações → Modelo de dados → Oportunidades:

  • Setor da empresa (tipo: Texto)
  • Tamanho da empresa (tipo: Número)

Configuração

  1. Gatilho: Registro é criado (Oportunidades).
    • Filtro: Empresa não está vazia.
  2. Pesquisar registros: obter os detalhes da empresa associada.
    • Objeto: Empresas.
    • Filtro: ID igual a {{trigger.object.company.id}}.
  3. Atualizar registro:
    • Objeto: Oportunidades.
    • Registro: {{trigger.object.id}}.
    • Setor da empresa: {{searchRecords[0].industry}}.
    • Tamanho da empresa: {{searchRecords[0].employees}}.

Limitação de Tarefas e Notas: as relações em Tarefas e Notas são pré-definidas como muitos-para-muitos e ainda não estão disponíveis em gatilhos ou ações de fluxos de trabalho. Para acessar estas relações, use a API.

Sincronização bidirecional

Exemplo: manter o contato principal sincronizado

Objetivo: quando o contato principal de uma empresa mudar, atualizar o contato. Quando uma pessoa se tornar principal, atualizar a empresa.

Fluxo de trabalho 1: Empresa → Pessoa

  1. Gatilho: Registro é atualizado (Empresas, campo Contato principal).
  2. Atualizar registro: definir “É contato principal” da pessoa como verdadeiro.
  3. Pesquisar registros: encontrar o contato principal anterior.
  4. Atualizar registro: definir “É contato principal” do contato anterior como falso.

Fluxo de trabalho 2: Pessoa → Empresa

  1. Gatilho: Registro é atualizado (Pessoas, É contato principal = verdadeiro).
  2. Atualizar registro: definir o contato principal da empresa para esta pessoa.

Tenha cuidado com sincronizações bidirecionais para evitar ciclos infinitos. Use filtros para verificar se o valor realmente mudou antes de atualizar.

Usar Código para mapeamento complexo

Exemplo: transformar dados durante a cópia

Objetivo: copiar e formatar o número de telefone da pessoa para a oportunidade.

export const main = async (params) => {
  const { phone } = params;
 
  if (!phone) return { formattedPhone: null };
 
  // Remove caracteres não numéricos
  const digits = phone.replace(/\D/g, '');
 
  // Formata como (XX) XXXXX-XXXX
  const formatted = digits.length === 11
    ? `(${digits.slice(0,2)}) ${digits.slice(2,7)}-${digits.slice(7)}`
    : phone;
 
  return { formattedPhone: formatted };
};

Melhores práticas

Evitar ciclos

  • Não crie fluxos de trabalho que disparem uns aos outros indefinidamente.
  • Use condições específicas de campo.
  • Adicione verificações para ver se o valor realmente mudou.

Tratar dados ausentes

  • Verifique sempre se o registro de origem existe antes de copiar.
  • Forneça valores padrão para campos opcionais.
  • Use filtros para ignorar quando o campo de origem estiver vazio.

Desempenho

  • Agrupe atualizações ao copiar para muitos registros.
  • Use fluxos de trabalho agendados para operações de sincronização em massa.
  • Considere usar o Iterador para atualizações de múltiplos registros.

Relacionados