Adicionar mais opções às suas telas
Objetivos de aprendizagem
Após concluir esta unidade, você estará apto a:
- Dar aos usuários mais detalhes sobre as opções com uma tabela de dados.
- Colocar campos de registro diretamente em uma tela de fluxo.
- Colocar um campo de pesquisa diretamente em uma tela de fluxo.
- Criar uma tela para permitir que os usuários carreguem arquivos.
Antes de começar
Para os exercícios desta unidade, você precisa de um campo personalizado adicional. No objeto Case (Caso), crie um campo personalizado com os detalhes abaixo.
- Tipo de dados: Relacionamento de pesquisa
- Relacionado a: Usuário
- Rótulo do campo:
QA Reviewer
(Revisor de QA) - Nome do campo:
QA_Reviewer
- Mantenha os valores padrão para todas as configurações
Oferecer uma alternativa mais informada aos usuários
Flo recebeu mais feedback das equipes de suporte da Pyroclastic sobre o fluxo Create Case for Contact (Criar caso para contato). Em primeiro lugar, eles querem atualizar uma pergunta para facilitar a seleção de um registro de contato pelos agentes de suporte. Em seguida, querem adicionar perguntas que identifiquem o motivo do caso e a conta relacionada.
Ao escolher entre um grupo de registros, os usuários geralmente precisam de mais informações do que apenas o nome do registro. Os agentes de suporte precisam de mais informações sobre o contato para selecionar o melhor ponto de contato para um caso. Eles querem ver:
- Título, para confirmar que o papel é apropriado para o problema
- Email, para que os agentes de suporte possam fazer o acompanhamento
- Número de telefone, para que os agentes de suporte possam fazer o acompanhamento
Para dar aos usuários informações suficientes para escolher um registro, use um componente de tabela de dados. O formato de tabela apresenta uma lista de registros em linhas e os campos do registro em colunas.
Adicionar um componente de tabela de dados
- Abra o fluxo Create Case for Contact (Criar caso para contato).
- No elemento Create Case (Criar caso), clique em para remover a linha Contact ID (ID de contato) ← Questions Page 2 (Página de perguntas 2) > Point of Contact (Ponto de contato).
- Antes do elemento Questions (Perguntas), adicione um elemento Get Records (Obter registros) para recuperar os contatos da conta.
- Rótulo:
Get Contacts
(Obter contatos) - Objeto: Contato
- Requisitos de condição: Todas as condições são atendidas (AND)
- Campo: AccountId
- Operador: Equals (Igual a)
- Valor: inputAccountId
- Quantos registros criar: Todos os registros
- Abra o elemento Questions Page 2 (Página de perguntas 2) e clique em passe o cursor do mouse sobre o componente Point_of_Contact. Clique em para remover esse componente.
- Adicione um componente de tabela de dados para que os usuários selecionem o contato correto.
- Arraste Data Table (Tabela de dados) da barra lateral Components (Componentes) para a tela.
- Em API Name (Nome da API), insira
PointOfContact
.
- Em Label (Rótulo), insira
Point of Contact
(Ponto de contato) - Selecione Use Label as the table title (Usar rótulo como título da tabela).
- Em Source Collection (Coleta de fontes), selecione Contacts from Get_Contacts (Contatos de Get_Contacts).
- Clique em Configure Rows (Configurar linhas) para abrir a seção.
- Em Row Selection Mode (Modo de seleção de linha), selecione Single (Único).
- Selecione Require user to make a selection (Exigir que o usuário faça uma seleção).
- Clique em Configure Columns (Configurar colunas) para abrir a seção.
- Em Source Field (Campo da fonte), selecione Name (Nome) (Nome completo).
- Antes de clicar em Done (Concluído), não se esqueça de clicar em Done (Concluído) nas Column Options (Opções de Coluna), não na parte inferior da janela Edit Screen (Editar Tela).
- Clique em +Add Column (+Adicionar coluna) e repita as etapas j-k para adicionar colunas para os campos Title (Título), Email e Phone (Business Phone) (Telefone [Telefone comercial]).
- Clique em Done (Concluído) para fechar o elemento Questions Page 2 (Página de perguntas 2).
Adicionar campos existentes rapidamente com o mínimo de configuração
A maneira mais eficiente de adicionar um campo do objeto a um fluxo de tela é usando um componente Record Field (Campo de registro). (Você já deve ter ouvido falar desse recurso chamado de Dynamic Forms for Flow [Formulários dinâmicos para fluxo].) Os componentes Record Field (Campo de registro) lembram campos em um objeto do Salesforce. Para usar um componente Record Field (Campo de registro), escolha uma variável de registro para indicar o objeto e, em seguida, arraste os campos desejados para a tela. Imagine quão rápido você poderia adicionar 5, 10 ou até mais campos à tela!
Se é algo tão incrível, por que não mencionamos isso antes? Bem, há algumas limitações. Cada componente Record Field (Campo de registro) herda a maior parte da configuração do campo correspondente, incluindo o rótulo, valores da lista de opções e requisitos. Você não pode alterá-los no fluxo.
Na Pyroclastic, os campos Description (Descrição) e Subject (Assunto) do caso não são definidos como campos obrigatórios no Salesforce, mas as equipes de suporte querem exigi-los no fluxo. Como os requisitos no fluxo não correspondem aos requisitos no campo correspondente, você não pode usar componentes Record Field (Campo de registro) para eles. Em vez disso, você usou os componentes Long Text Area (Área de texto longo) e Text (Texto), que têm opções de configuração mais flexíveis.
Embora algumas propriedades de campo sejam herdadas pelo componente Record Field (Campo de registro) e não possam ser alteradas, outras, como valores padrão e filtros de tipo de registro, não são refletidas no componente Record Field (Campo de registro). Para obter mais detalhes, consulte Como adicionar campos de registro a telas de fluxo.
Adicionar um componente Picklist Record Field (Campo de registro de lista de opções) e um componente Lookup Record Field (Campo de registro de pesquisa)
Flo tem mais feedback das equipes de suporte da Pyroclastic. Agora, eles querem identificar o motivo do caso e a conta relacionada no fluxo Create Case for Contact (Criar caso para contato). Os nomes dos campos, valores da lista de opções e requisitos devem corresponder aos do objeto Case (Caso), portanto, eles são candidatos perfeitos para componentes Record Field (Campo de registro).
Os componentes Record Field (Campo de registro) são configurados de forma diferente de outros componentes de tela e elementos de fluxo. Em vez de selecionar um objeto diretamente, você usa uma variável de registro que corresponde a um objeto específico. Você pode escolher uma variável de registro existente ou criar uma nova. Para acessar os novos campos solicitados pelas equipes de suporte, crie uma variável de registro baseado no objeto Case (Caso).
- Na tela Questions Page 2 (Página de perguntas 2), clique na guia Fields (Campos) no painel esquerdo.
- Em Record Variable (Variável de registro), selecione +New Resource (+Novo recurso).
- Em API Name (Nome da API), insira
caseVar
.
- Em Object (Objeto), selecione Case (Caso).
- Clique em Done (Concluído).
O campo Record Variable (Variável de registro) contém o recurso caseVar e os campos compatíveis da variável são listados.
- Arraste Case Reason (Motivo do caso) da lista Fields (Campos) para a tela.
- Arraste QA Reviewer (Revisor de QA) da lista Fields (Campos) para a tela.
Assim, você adicionou um campo de lista de opções e um campo de pesquisa ao seu fluxo de tela, com nomes, configuração de objetos e valores da lista de opções já definidos para você. Imagine quão rápido seria se você precisasse adicionar 5, 10 ou até mais campos!
Criar um campo de pesquisa com diferentes configurações
Enquanto você estava criando esse fluxo de tela, Flo recebeu outro requisito: a pesquisa QA Reviewer (Revisor de QA) é obrigatória, não em todos os lugares, apenas neste fluxo. Porém, o campo em si não está definido como obrigatório, então não podemos usar um componente Record Field (Campo de registro). Não se preocupe. Em vez disso, você pode usar um componente de tela Lookup (Pesquisa).
Como os componentes Record Field (Campo de registro), o componente Lookup (Pesquisa) imita um campo de pesquisa existente de um objeto do Salesforce. No entanto, o componente Lookup (Pesquisa) permite mais configurações que o componente Record Field (Campo de registro), incluindo definir um valor padrão e torná-lo obrigatório. O estilo de configuração também é diferente de outros componentes, pois exige mais entradas manuais e conhecimento dos nomes das APIs do objeto e do campo. Ao adicionar um componente Lookup (Pesquisa), talvez seja preciso fazer referência ao objeto e seus campos no Gerenciador de objetos.
Substituir um componente Record Field (Campo de registro) por um componente Lookup (Pesquisa)
- No elemento Questions Page 2 (Página de perguntas 2), clique em para remover o campo de registro QA Reviewer (Revisor de QA) da tela.
- Clique na guia Components (Componentes) na barra lateral esquerda para exibir a lista de componentes de tela.
- Arraste Lookup (Pesquisa) da barra lateral Components (Componentes) para a tela.
- Em API Name (Nome da API), insira
ScreenReviewer
.
- Em Field API Name (Nome da API do campo), insira
QA_Reviewer__c
.
Essa configuração contém o nome da API do campo de pesquisa existente que está sendo replicado no fluxo.
- Em Label (Rótulo), insira
QA Reviewer
(Revisor de QA).
- Para Object API Name (Nome da API do objeto), insira
Case
(Caso).
Case (Caso) é o nome da API do objeto que contém o campo de pesquisa existente.
- Em Record ID, selecione $User> Id.
Essa configuração determina onde o fluxo armazena o valor que o usuário seleciona. O valor que você define aqui torna-se o valor padrão quando o fluxo é executado. Nesse caso, quando o fluxo é executado, o componente QA Reviewer Lookup (Pesquisa do revisor de QA) tem a ID do usuário em execução como o valor padrão.
- Em Required (Necessário), selecione $GlobalConstant.True.
- Clique em Done (Concluído).
Tudo terminado! O componente Lookup (Pesquisa) demora um pouco mais para pesquisar e configurar em comparação com um componente Record Field (Campo de registro). Ainda assim, ele dá conta do recado e oferece mais algumas opções de configuração.
Atualizar o elemento Create Records (Criar registros)
Para usar os valores coletados pelos novos componentes de tela, você precisa adicionar os valores de campo ao elemento que cria o caso. Cada componente de tela tem uma maneira específica de fazer referência às respostas de um usuário em execução. Você fez referência aos componentes Text (Texto) e Long Text Area (Área de texto longo) diretamente. Os três componentes que você adicionou nessa unidade apresentam outras três maneiras de fazer referência a valores de componentes. Vamos descompactar cada um conforme você adiciona o ponto de contato, o motivo e o revisor de QA ao elemento Create Case (Criar caso).
Obter o valor de um componente Data Table (Tabela de dados)
- Abra o elemento Create Case (Criar caso).
- Em Set Field Values (Definir valores de campo), clique em +Add Field (+Adicionar campo).
- Em Field (Campo), selecione Contact ID (ID de contato).
- Em Value (Valor), selecione Questions Page 2 (Página de perguntas 2)> Point of Contact (Ponto de contato)> First Selected Row (Primeira linha selecionada)> Contact ID (ID de contato).
O campo Contact ID (ID de contato) que você deseja foi selecionado de uma Tabela de dados na qual cada linha (registro de contato) tem várias colunas (valores de campo). O elemento Create Records (Criar registros) precisa saber qual campo usar da linha da tabela selecionada.
Quando uma Tabela de dados é configurada para permitir que os usuários selecionem vários registros, o Flow Builder usa o registro que o usuário selecionou primeiro (que não é necessariamente o primeiro registro de uma sequência).
Obter o valor de um componente Lookup (Pesquisa)
- Clique em +Add Field (+Adicionar campo).
- Em Field (Campo), selecione QA Reviewer (Revisor de QA).
- Em Value (Valor), selecione Questions Page 2 (Página de perguntas 2) > QA Reviewer (Revisor de QA)> Record ID (ID de registro).
Você definiu QA Reviewer (Revisor de QA) a partir de um componente Lookup (Pesquisa). Ao contrário de outros componentes, como Long Text Area (Área de texto longo) e Radio Buttons (Botões de opção), o componente Lookup (Pesquisa) tem vários valores potenciais para referência. Você está definindo o valor de um campo Lookup (Pesquisa) que exige uma ID de registro, portanto, selecione a ID de registro do componente.
Obter o valor de um componente Record Field (Campo de registro)
Na maioria dos componentes de tela, o valor inserido pelo usuário é armazenado no componente. Para fazer referência a esse valor em um elemento de dados, o usuário seleciona o componente ou um campo dentro desse componente. Por exemplo, o componente Point of Contact (Ponto de contato) permite que os usuários selecionem um registro para que seu valor seja armazenado no campo da ID do componente. Para fazer referência ao valor de um componente em outro elemento, basta selecionar a tela que contém o componente de tela e, em seguida, selecionar o componente.
O componente Record Field (Campo de registro) é um pouco diferente. No caso de um componente Record Field (Campo de registro), o valor não é armazenado no próprio componente, mas na variável de registro relacionada ao componente. Por exemplo, o motivo do caso selecionado é armazenado na variável de registro caseVar que o usuário escolheu quando adicionou o campo de registro Case Reason (Motivo do caso) à tela.
Quando você define valores de campo em um elemento de dados, para um componente Record Field (Campo de registro), a seleção é feita na seção Record Variables (Variáveis de registro) da lista de opções Value (Valor).
- Clique em +Add Field (+Adicionar campo).
- Em Field (Campo), selecione Case Reason (Motivo do caso).
- Em Value (Valor), selecione caseVar> Case Reason (Motivo do caso).
Os novos valores de campo do caso devem ficar assim.
Permitir que os usuários carreguem arquivos
Antes de terminarmos a unidade, há um último recurso para adicionar ao fluxo. Às vezes, os agentes de suporte falam com os clientes sobre o envio de capturas de tela ou outras imagens que ajudam a solucionar problemas dos casos. O intuito é anexar essas imagens ao caso.
O componente de tela File Upload (Carregamento de arquivos) faz exatamente o que ele indica: carrega arquivos para o Salesforce. Para associar os arquivos carregados ao caso criado, adicione o componente File Upload (Carregamento de arquivos) a um elemento Screen (Tela) que vem depois do elemento que cria o caso. Caso contrário, não há caso para o qual carregar os arquivos e o carregamento falha.
Adicionar uma tela com um botão de carregamento
- Adicione um elemento Screen (Tela) após o elemento Create Case (Criar caso).
- Em Label (Rótulo), insira
File Upload Screen
(Tela de carregamento de arquivos).
- Arraste o componente File Upload (Carregamento de arquivos) para a tela.
- No API Name (Nome da API), insira
UploadImages
.
- Em File Upload Label (Rótulo do carregamento de arquivos), insira
The case has been created.Do you have any related files to upload to it?
(O caso foi criado. Você tem arquivos relacionados para carregar para o caso?) - Em Allow Multiple Files (Permitir diversos arquivos), selecione $GlobalConstant.True.
- Em Related Record ID (ID do registro relacionado), selecione CaseId from Create_Case.
- Clique em Done (Concluído).
- Salve o fluxo.
Geralmente, depois de coletar a entrada em um elemento de tela, você precisa de um elemento de dados (como Create Records [Criar registros] ou Update Records [Atualizar Registros]) para salvar essa entrada em um registro do Salesforce. Bem, isso é uma exceção. O novo elemento de tela contém apenas o componente File Upload (Carregamento de arquivos), e ele salva os arquivos automaticamente. Então, quando os usuários executam o fluxo e carregam os arquivos, os arquivos são imediatamente anexados ao caso.
Recursos
- Ajuda do Salesforce: Componente de entrada da tela de fluxo: Tabela de dados
- Ajuda do Salesforce: Como adicionar Campos de registro às telas de fluxo
- Ajuda do Salesforce: Componente de entrada da tela de fluxo: Pesquisa
- Ajuda do Salesforce: Componente de entrada da tela de fluxo: Carregamento de arquivos