Gran idea o pregunta duradera:

Si se pregunta entonces, ¡sepa que no está solo!

A menudo recibo solicitudes de este tipo por correo electrónico, como un comentario en mi sitio web o, a través de las redes sociales.

Entonces, comencemos y abordemos el desafío creando un caso de uso comercial.

Hace unas cuantas versiones, Salesforce introdujo un nuevo componente de entrada de pantalla conocido como –Carga de archivos . La   El componente permite a los usuarios cargar archivos – ¡simple!

Por ejemplo, puede crear un flujo que le permita a su representante de ventas crear una oportunidad y luego adjuntar un archivo de evaluación previa a la venta a través del flujo. ¡Puede consultar mi artículo anteriorMejorar la productividad cargando archivos directamente desde un flujo! para obtener más información sobre cómo utilizar el componente Carga de archivos. Principalmente, colocamos el componente Carga de archivos en una pantalla separada, ya que requiere un ID de registro relacionado (el ID del registro con el que asociar los archivos. Si no se pasa ningún valor, el componente está deshabilitado). En este artículo, discutiré algunos desafíos comunes que podría enfrentar regularmente a través del siguiente caso de uso.

Objetivos:

Después de leer este blog, podrá:

  • Cree una pantalla con pocos componentes de pantalla
  • Cree una pantalla con un componente de archivo que permita a los usuarios cargar varios archivos
  • Asociar los archivos con el registro recién creado
Sergio Armendariz es desarrollador de aplicaciones en GurukulOnCloud (GoC). Recibió un requisito para crear un flujo que permita a los representantes de desarrollo comercial crear un cliente potencial y cargar la tarjeta de presentación del cliente potencial desde una sola pantalla.
Después de leer este artículo Sergio aprendió a manejar el caso de uso anterior utilizando dos pantallas. Sergio llamó a su arquitecto de soluciones, Rakesh Gupta, para buscar su consejo para resolver su caso de uso sin tener que crear una nueva pantalla.

Enfoque de campeón de automatización (I-do):

Hay algunas soluciones posibles para el escenario empresarial anterior. Sin embargo, nuestro propósito, en este blog, es aprender Flow y sus funciones avanzadas / nuevas. Por lo tanto, usaremosFlow y el componente de archivo de carga para resolver el requisito comercial anterior .

Antes de seguir profundizando, permítame mostrarle un diagrama de un flujo de proceso a un alto nivel. Dedique unos minutos a revisar el siguiente diagrama de flujo y comprenderlo.

Tal vez usted también se esté preguntando, al igual que Sergio: ¿Por qué la solución anterior parecetan compleja? Entonces, Sergio le preguntó a Rakesh: ¿no podemos usar algo como esto ?:

Desafortunadamente, la respuesta es NO . Siento decepcionarte, Sergio, lamentó Rakesh.

¿Yo también te decepcioné? Oh, lo siento de nuevo.

¿Sigues preguntándote por qué la solución de Sergio no funcionará? Bueno, déjeme cortar la persecución y explicarle por qué la solución de Sergio no funcionará.

El flujo de proceso de Sergio funciona en el siguiente orden:

  1. En el primer paso (elemento de pantalla) los usuarios ingresan todos los detalles y cargan los archivos.
  2. Una vez que los usuarios hacen clic en elbotón Siguiente , el flujo hará dos cosas:
    1. Inserte archivos en el documento de contenido. Esto se debe a que el Id. De registro (Id. De cliente potencial) aún no está disponible. Y por lo tanto, el flujo no podrá asociar los archivos con el registro de clientes potenciales.
    2. Como resultado, el flujo no podrá pasar los datos a Insertar cliente potencial (Crear componente de registro)
  3. En el siguiente paso, creará un cliente potencial.
  4. Detener

Espero que a estas alturas entienda por qué Rakesh está tomando un camino un poco más largo en su solución. Antes de continuar, comprenda la funcionalidad de unContentDocumentLink (representa un vínculo entre un documento de Salesforce CRM Content o un archivo de Salesforce y dónde se comparte)   objeto en Salesforce.

Nombre del campo Detalles
ContentDocumentId El ID deldocumento.
LinkedEntityId El ID del objeto vinculado. Puede incluir usuarios de Chatter, grupos, registros (cualquier objeto que admita el seguimiento de noticias en tiempo real de Chatter, incluidos los objetos personalizados) y bibliotecas de contenido de Salesforce CRM.
ShareType El permiso otorgado al usuario del archivo compartido en una biblioteca.

Comencemos a construir este proceso de automatización.

Práctica guiada (lo hacemos):

Hay 7 pasos para resolver los requisitos comerciales de Sergio utilizando Salesforce Flow . Primero una descripción general:

  1. Cree una variable para almacenarID de documentos de contenido
  2. Cree una pantalla que permita a los usuarios ingresar los detalles del cliente potencial y cargar archivos
  3. Agregar un elemento de creación de registros para insertar un cliente potencial
  4. Agregue un elemento de bucle para extraer registros de la variable de colección (ID de documento de contenido)
  5. Agregue un elemento de asignación para asignar los valores a la variable de registro Content Document Link
  6. Agregar un elemento de asignación para agregar una variable de registro de vínculo de documento de contenido a una variable de colección de registros (vínculo de documento de contenido)
  7. Agregue un elemento de creación de registros para insertar datos de la variable de colección de registros (Enlace de documento de contenido)

Paso 1: crear una variable para almacenar ID de documentos de contenido

  1. Haga clic en Configuración .
  2. En el cuadro Búsqueda rápida, escriba Flujos .
  3. Seleccione Flujos y luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   opción y haga clic en Crear .
  5. Haga clic en la pestañaAdministrador y luego haga clic en Nuevo recurso .
    1. Tipo de recurso: variable
    2. Nombre de API: VarTContentDocumentIds
    3. Tipo de datos: texto
    1. Permitir varios valores (colección): Sí
    2. Disponibilidad fuera del flujo
      1. Disponible para entrada
      2. Disponible para salida
    3. Haz clic enListo .

Paso 2: Agregar componente de pantalla

  1. Arrastre y suelte el elemento Pantalla en el diseñador de flujo.
  2. Ingrese la etiqueta ( formulario de cliente potencial ) que el nombre de la API se completará automáticamente.
  3. En el elemento Pantalla, navegue hasta la sección Entrada y haga doble clic en el campo Nombre para agregarlo al elemento Pantalla
    1. Ingrese la etiqueta ( nombre ) que el nombre de la API se completará automáticamente.
  4. En el elemento Pantalla, navegue hasta la sección Entrada y haga doble clic en el campo Texto para agregarlo al elemento Pantalla
    1. Ingrese la etiqueta ( empresa ) que el nombre de la API se completará automáticamente.
  5. En el elemento Pantalla, navegue hasta la sección Entrada y haga doble clic en el componente Carga de archivos para agregarlo al elemento Pantalla
    1. Ingrese la etiqueta ( tarjeta de visita ) que el nombre de la API se completará automáticamente.
    2. SeleccionarAsignar variables manualmente (avanzado) : Almacenar valores de salida para seleccionar variables
      1. ID de documentos de contenido: {! VarTContentDocumentIds}
  6. Haz clic en Listo .

Paso 3: Flujo de Salesforce:agregar un elemento Crear registros para crear un cliente potencial

  1. Arrastre y suelte el elemento Crear registros en el diseñador de flujo.
  2. Introduzca un nombre en el campoEtiqueta ( crear un cliente potencial ) ; el nombre de la API se completará automáticamente.
  3. Para cuántos registros crear , seleccione uno.
  4. Para Cómo configurar los campos de registro, seleccione Usar recursos separados y valores literales.
  5. Seleccione elobjeto Cliente potencial de la lista desplegable.
  6. Establecer valores de campo para el cliente potencial
    1. Fila 1:
      1. Campo: Empresa
      2. Valor: {! Company}
    2. Haga clic en Agregar fila
    3. Fila 2:
      1. Campo: Apellido
      2. Valor: {! Name.lastName}
    4. Haga clic en Agregar fila
    5. Fila 3:
      1. Campo: Nombre
      2. Valor: {! Name.firstName}
  7. Haz clic enListo .

Paso 4: Flujo de Salesforce: agregue unelemento de bucle para recuperar registros de la variable de colección

  1. Arrastre y suelte el elemento Loop en el diseñador de flujo.
  2. Ingrese un nombre en el campoEtiqueta ( Extraer registro ) ; el nombre de la API se completará automáticamente.
  3. Para la variable de colección, seleccione {! VarTContentDocumentIds} .
  4. Para especificar la dirección para iterar sobre la recopilación   seleccione la opción Primer elemento al último elemento.
  5. Haz clic enListo .

Paso 5: Flujo de Salesforce:agregar un elemento de asignación para asignar los valores a una variable de registro

  1. Cree un vínculo de documento de contenido de tipo varRContentDocumentLink de variable de registro para vincular el archivo con el registro de cliente potencial.
  2. Arrastre y suelte el elemento Asignación en el diseñador de flujo.
  3. Ingrese un nombre en el campoEtiqueta ( archivo de vínculo y registro de cliente potencial ) ; el nombre de la API se completará automáticamente.
  4. Establecer valores variables
    1. Fila 1:
      1. Campo: {! VarRContentDocumentLink.ContentDocumentId}
      2. Operador: Igual a
      3. Valor: {! Extract_Record}
    2. Agregar asignación
    3. Fila 2:
      1. Campo: {! VarRContentDocumentLink.LinkedEntityId}
      2. Operador: Igual a
      3. Valor: {! Create_a_Lead}
  5. Haz clic en Listo .

Paso 6: Flujo de Salesforce:agregar un elemento de asignación para agregar la variable de registro a la variable de colección de registros

  1. Cree una variable de colección de registros varRContentDocumentLinks tipo Enlace de documento de contenido para almacenar la variable de registro (creada en el paso 5.1) para el proceso masivo.
  2. Arrastre y suelte el elemento Asignación en el diseñador de flujo.
  3. Ingrese un nombre en el campoEtiqueta ( Agregar registros a una colección ) ; el nombre de la API se completará automáticamente.
  4. Establecer valores variables
    1. Fila 1:
      1. Campo: {! VarRContentDocumentLinks}
      2. Operador: Agregar
      3. Valor: {! VarRContentDocumentLink}
  5. Haz clic en Listo .

Paso 7:Flujo de Salesforce: agregar unelemento Crear registros paraasociar archivos y registros de clientes potenciales

  1. Arrastre y suelte el elemento Crear registros en el diseñador de flujo.
  2. Ingrese un nombre en el campoEtiqueta ( Crear registros a partir de la colección ); el nombre de la API se completará automáticamente.
  3. Para Cuántos registros crear, seleccione Múltiples.
  4. Colección de registros de mapas : {! VarRContentDocumentLinks}
  5. Haz clic en Listo .

Al final, Sergio’s Flow se verá como la siguiente captura de pantalla:

¡Uf! ¡Lo sé, el viaje fue un poco largo! Pero, no desesperes, ¡ya casi llegamos!

¡Casi llegamos! Una vez que haya terminado,guarde   el flujo.

No olvide activar el flujo haciendo clic en elbotónActivar.

Nota : – Antes de activar su proceso, querrá asegurarse de haber asignado los datos en el formato correcto. Esto se debe a que Salesforce Flow obedece las reglas de validación. Si algunos campos son requeridos por las reglas de validación, asegúrese de agregar esos campos. Por el contrario, si algunos campos son obligatorios en el diseño de la página, puede ignorarlos.

Es hora de probar esta función

La próxima vez, cuando un representante de ventas cree clientes potenciales utilizando el flujo anterior, no tendrá que moverse pantalla por pantalla. En cambio, el representante de ventas puede ingresar todos los detalles, incluidos los archivos, en una sola pantalla. qué gran manera de impulsar la productividad de los usuarios.

Si tiene algún problema para ver el video, haga clic en él y ábralo en otra pestaña.

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://automationchampion.com/2020/12/09/getting-started-with-lightning-flow-part-22-do-you-ever-wonder-is-it-possible-to-have-a-file-upload-component-and-other-details-on-a-single-screen/

Entradas recomendadas