Última actualización el 2 de junio de 2022 por Rakesh Gupta

Salesforce Flow es una de las herramientas más poderosas proporcionadas por Salesforce para implementar requisitos comerciales de forma declarativa . ¡ Hasta la fecha, he escrito más de 200 flujos solo para mis publicaciones de blog!

Salesforce Flow ayuda a las empresas a ahorrar tiempo y dinero al implementar soluciones rápidamente. La implementación de Salesforce Flow es sencilla: crea un flujo; lo prueba ; y luego, use el conjunto de cambios para implementarlo en producción. La mejor parte es que no tiene que escribir clases de prueba para sus flujos.

¡Pero existen pocas limitaciones de Salesforce Flow frente a Workflow! ¡Sí! ¡Has leído bien ! ¡El flujo de trabajo tiene ventaja al definir los criterios de regla!

Permítame desentrañar este misterio ofreciendo un ejemplo: como administrador del sistema, recibe un requisito para crear automáticamente un registro de Cotización cada vez que la Etapa de oportunidad es Propuesta/Cotización de precio o Negociación/Revisión .

Para lograr el requisito comercial anterior, a través de una regla de flujo de trabajo , puede hacer algo similar a lo que se muestra en la siguiente captura de pantalla:

Pero para lograr el mismo requisito a través de Record-Triggered Flow , puede hacer algo similar a lo que se muestra en la siguiente captura de pantalla:

Si creó un Flujo desencadenado por registros con Salesforce Flow antes de esa fecha, sabe cómo configuro dos valores para la lista de selección Etapa. Pero, para aquellos que son relativamente nuevos en Salesforce Flow, permítanme guiarlos a través del flujo paso a paso. La regla de flujo de trabajo le permite seleccionar varios valores para una lista de selección. Si observa la captura de pantalla de la regla de flujo de trabajo, he elegido (definido) el valor de la lista de selección en una sola línea usando comas (,).

Pero si intenta lograr lo mismo usando Record-triggered Flow , no funcionará. A diferencia de las reglas de flujo de trabajo, no se puede desarrollar un criterio de regla para seleccionar múltiples valores de listas de selección, en un solo trazo, utilizando flujo activado por registro . Para obtener una explicación detallada, consulte el siguiente artículo publicado por Salesforce : CONTIENE con varios valores separados por comas no activa un Flujo .

La solución sugerida por Salesforce (es la misma que he usado en la captura de pantalla de Process Builder) es buena para el caso de uso comercial simple. Pero, ¿qué pasa con un requisito complicado en el que debe tener en cuenta otras cosas (como Cantidad> $ 1000 y Fecha de cierre> Hoy) al definir los criterios de entrada de flujo?

¡¡Puaj!! ¡Qué pesadilla! ¡Propenso a errores y un enorme dolor de cabeza!

Ya que, en los escenarios antes mencionados, usará varias declaraciones Y/O, como hice en la captura de pantalla anterior : (1 O 2) Y 3 Y 4.

Gracias a los usuarios de gran talento del blog Automationchampion.com por sus comentarios constructivos y, especialmente, por desafiarme a encontrar una solución simplificada para el problema antes mencionado. ¡Pues reto aceptado!

En este artículo, voy a compartir mis trucos para resolver el caso de uso comercial anterior utilizando una fórmula simple. Comencemos con un caso de uso empresarial.

Edward Backhouse trabaja como administrador de sistemas en GurukulOnCloud . En GurukulOnCloud están utilizando el flujo activado por registros para agilizar los procesos de ventas. Hoy, Edward recibió un requisito para crear automáticamente un registro de cotización, tan pronto como una oportunidad cumpla con las siguientes condiciones:

  • Etapa = Propuesta/Cotización de precio o Negociación/Revisión
  • Cantidad > 1,000
  • Fecha de cierre > Hoy

Enfoque de Campeón de Automatización (I-do):

Hay algunas soluciones posibles para el escenario empresarial anterior, pero usaré el flujo activado por registro después de guardar para resolver el requisito empresarial. Dediquemos un tiempo a comprender la fórmula Case en Salesforce y cómo usarla.

Antes de discutir la solución, permítame mostrarle un diagrama de un flujo de proceso de alto nivel. Dedique unos minutos a repasar el siguiente diagrama de flujo y comprenderlo.

Comencemos a construir este proceso de automatización.

Práctica guiada (nosotros hacemos):

Hay 4 pasos para resolver el requisito empresarial de Edward mediante el flujo activado por registro . Debemos:

  1. Definir propiedades de flujo para el flujo desencadenado por registro
  2. Cree una fórmula para determinar si la etapa coincide
  3. Agregue un elemento de decisión para verificar los criterios de etapa, cantidad y fecha de cierre
  4. Agregue un elemento de creación de registros para crear una cotización

Paso 1: Definir propiedades de flujo

  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 activado por registro opción, haga clic en Crear
    1. Objeto : Oportunidad
    2. Activar flujo de oportunidad cuando : se crea o actualiza un registro
    3. Establecer criterios de entrada
      1. Requisitos de condición: Ninguno
    4. Optimice el flujo para la acción y los registros relacionados
  5. Haga clic en Listo .

Paso 2: fórmula para determinar si StageName coincide

  1. En Caja de herramientas , seleccione Administrador y, a continuación, haga clic en Nuevo recurso para determinar si el registro se crea o actualiza.
  2. Ingrese la siguiente información :
    1. Tipo de recurso : Fórmula
    2. Nombre de la API : forT_StageName
    3. Tipo de datos : Texto
    4. Fórmula :
      1. CASE({!$Record.StageName} ,
        “Propuesta/Cotización de precio”, “Verdadero”,
        “Negociación/Revisión”, “Verdadero”,
        "Falso"
        )
  3. Haga clic en Listo .

Paso 3: uso del elemento de decisión para verificar los criterios de etapa, cantidad y fecha de cierre

Ahora usaremos el elemento Decisión para verificar si el nombre de la etapa, la fecha de cierre y la cantidad se describen en el requisito.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Decisión .
  2. Arrastre y suelte el elemento Decisión en el diseñador de flujo.
  3. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  4. En Detalles del resultado , ingrese la etiqueta que el nombre de la API se completará automáticamente.
  5. Requisitos de condición para ejecutar el resultado : se cumplen todas las condiciones (Y)
    1. Fila 1:
      1. Recurso: {!forT_StageName}
      2. Operador: Igual
      3. Valor: Verdadero
    2. Haga clic en Agregar condición
    3. Fila 2 :
      1. Recurso : {!$Record.Amount}
      2. Operador : mayor que
      3. Valor : 1000
    4. Haga clic en Agregar condición
    5. Fila 3 :
      1. Recurso : {!$Record.CloseDate}
      2. Operador : mayor que
      3. Valor : {!$Flow.CurrentDate}
  6. Haga clic en Listo .

Paso 4: agregue el elemento Crear registros para crear una cotización

El paso final es crear un registro de cotización. Para ello, utilizaremos el elemento Crear registros .

  1. En Flow Designer, debajo del nodo , haga clic en el icono + y seleccione el elemento Crear registros .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
  3. Ingrese la siguiente información :
    1. Cuántos registros crear : uno
    2. Cómo establecer los campos de registro : use recursos separados y valores literales
    3. Objeto : Cita
    4. Establecer valores de campo para la cotización
    5. Fila 1:
      1. Campo : Estado
      2. Valor : Borrador
    6. Haga clic en Agregar campo
    7. Fila 2:
      1. Campo : ID de oportunidad
      2. Valor : {!$Record.Id}
    8. Haga clic en Agregar campo
    9. Fila 3:
      1. Campo : Nombre
      2. Valor : {!$Registro.Nombre}
  4. Haga clic en Listo .

Al final, Edward's Flow se verá como la siguiente captura de pantalla:

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo , el nombre de la API se completará automáticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versión de API para ejecutar el flujo : 55
  5. Etiqueta de entrevista : Usar fórmula en el flujo   {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

¡Casi ahí! Una vez que todo se vea bien, haga clic en el botón Activar .

Prueba de concepto

La próxima vez, cuando el usuario cree o actualice los registros de Oportunidad, el flujo que creamos (usando el flujo desencadenado por registro) se activará y verificará los criterios. Si cumple con los criterios establecidos, el flujo activado por registro creará un registro de Cotización, como se muestra en el siguiente video:

¡Espero que pueda aprender del blog cómo seleccionar múltiples valores de listas de selección utilizando Salesforce Flow! ¡Sí adelante! ¡Muestre sus habilidades recién adquiridas a sus amigos, colegas y familiares!

Bromas aparte, dominar estas habilidades mejorará su productividad y lo impulsará a probar varias permutaciones y combinaciones para incorporar la automatización en sus procesos y procedimientos cotidianos.

Evaluación formativa:

¡Quiero saber de ti!

¿Qué es una cosa que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntase libre de compartir en los comentarios a continuación.

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://automationchampion.com/2022/06/02/ever-needed-to-select-multiple-picklist-values-in-flow/

Entradas recomendadas