Última actualización el 25 de mayo de 2021 por Rakesh Gupta

Gran idea o pregunta duradera:

¿Qué sucede si su caso de uso requiere que utilice eloperador NO CONTIENE en Flow? Con un suspiro, es posible que desee recordarme que, en Salesforce Flow, ¡no se puede usar el operador NO CONTIENE para filtrar los registros! ¿Mi respuesta? – ¡Y qué! Somos usuarios experimentados de Salesforce, ¿no es así? Si es así, ¿por qué no improvisar? Seamos creativos y pensemos de manera innovadora; después de todo, ¡somos Salesforce Ninja por nada! De hecho, Salesforce Flow es una de las herramientas más poderosas proporcionadas por Salesforce para implementar los requisitos comerciales de forma declarativa. Si es así, aprovechemos eso reutilizando de manera creativa elementos dentro de Salesforce para hacer cosas que, a primera vista, ¡pueden parecer imposibles de realizar! En este artículo, voy a compartir mis trucos contigo para mostrarte cómo puedes usar el operador DOESN’T CONTAINS en Flow. Comencemos con un caso de uso empresarial. La función CONTAINS compara 2 cadenas de texto y se usa ampliamente en Flow, Validation Rule, Process Builder y Workflow Rules para buscar un carácter o cadena en un campo de texto. Por ejemplo, CONTIENE (NextStep, «Factura») Devuelve VERDADERO si la palabra «Factura» se encuentra en cualquier lugar de NextStep.

Objetivos:

Esta publicación de blog nos ayudará a comprender lo siguiente
  • ¿Cuándo debe utilizar el flujo activado por registro antes de guardar o después de guardar?
  • Utilice un elemento Decisión para filtrar el resultado mediante el operador NO CONTIENE.
  • Utilice el flujo activado por registro después de guardar para crear un registro.
Brenda David trabaja como administradora de sistemas en Universal Containers (UC). Ha recibido un requisito de la administración para crear automáticamente una tarea cuando el campo ‘Siguiente paso’, en el objeto Oportunidad, se actualiza y no contiene palabras como Cerrado o Perdido.
  • Fecha de vencimiento de la tarea = Fecha de cierre de la oportunidad

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

Hay varias formas de resolver los requisitos comerciales anteriores. Puede utilizar el disparador de Apex , Salesforce Flow, Process Builder y más. Para resolver este requisito, utilizaremos el flujo activado por registro después de guardar . Consulte este artículo para comprender por qué estamos usando el flujo activado por registro posterior al guardado para este escenario. Antes de discutir la solución, 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 entiéndalo. Comencemos a construir este proceso de automatización.

Práctica guiada (lo hacemos):

Hay 3 pasos para resolver los requisitos comerciales de Brenda mediante el flujo activado por registro después de guardar . Debemos:
  1. Defina las propiedades de flujo para el flujo activado por registro.
  2. Agregue un elemento de decisión para marcar el campo NextStep.
  3. Agregue un elemento de creación de registros para crear una tarea en la oportunidad.

Paso 1: Flujo de Salesforce – Definir propiedades de flujo

Para reiterar, nuestro requisito es crear un registro en el objeto (Tarea ) cuando se actualiza el campo NextStep en el objeto Oportunidad. En este caso, tenemos que usar el flujo posterior al guardado en FeedItem porque estamos creando un registro en el objeto relacionado (tarea) después de que se cambia el objeto de oportunidad.
  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   y haga clic en Siguiente y configure el flujo de la siguiente manera:
    1. ¿Cómo quieres empezar a construir ? Freeform
    2. Activar el flujo cuando : se crea o actualiza un registro
    3. Ejecutar flujo : después de que se guarde el registro
    4. Objeto : Oportunidad
    5. Requisitos de condición: Ninguno
  5. Haz clic enListo .

Paso 2: Flujo de Salesforce: uso del elemento de decisión: verifique el campo NextStep

Ahora agregue el elemento Decisión para verificar si el campo NextStep contiene palabras como ‘Cerrado’ o ‘Perdido’. Usaremos lógica personalizada para marcar ‘NO CONTIENE’. Utilice la siguiente captura de pantalla como guía para recorrer el proceso:
  1. En Caja de herramientas , seleccione Elemento .
  2. Arrastre y suelte el elemento Decisión en el diseñador de flujo.
  3. Ingrese 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 cumple la lógica de condición personalizada
  6. Lógica de condición : 1 Y NO (2) Y NO (3)
    1. Fila 1:
      1. Recurso: {! $ Record.NextStep}
      2. Operador: se cambia
      3. Valor: {! $ GlobalConstant.True}
    2. Haga clic en Agregar condición
    3. Fila 2:
      1. Recurso: {! $ Record.NextStep}
      2. Operador: contiene
      3. Valor: cerrado
    4. Haga clic en Agregar condición
    5. Fila 23:
      1. Recurso: {! $ Record.NextStep}
      2. Operador: contiene
      3. Valor: perdido
  7. Haz clic enListo .

Paso 3: Flujo de Salesforce – Crear registros – Agregar una tarea al objeto Oportunidad

El siguiente paso es crear una tarea en el objeto Oportunidad. Para ello utilizará elelementoCreate Records.
  1. En Caja de herramientas , seleccione Elementos . Arrastre y suelte Crear registros en el lienzo.
  2. Ingrese la siguiente información :
    1. Ingrese la etiqueta, el nombre de la API se completará automáticamente.
    2. Cuántos registros crear : uno
    3. Cómo configurar los campos de registro : use recursos separados y valores literales
    4. Objeto : Tarea
    5. Establecer valores de campo para la suscripción de entidad
      1. Fila 1:
        1. Campo: ActivityDate
        2. Valor: {! $ Record.CloseDate}
      2. Agregue campo
      3. Fila 2
        1. Campo: WhatId
        2. Valor: {! $ Record.Id}
      4. Agregue campo
      5. Fila 3
        1. Campo: OwnerId
        2. Valor: {! $ Record.OwnerId}
      6. Agregue campo
      7. Fila 4
        1. Campo: Estado
        2. Valor: no iniciado
      8. Agregue campo
      9. Fila 5
        1. Campo: Prioridad
        2. Valor: normal
  3. Haz clic en Listo .
Al final, elflujo de Brenda se verá como la siguiente captura de pantalla (activé el diseño automático ) para este flujo: Una vez que todo se vea bien, realice los pasos a continuación:
  1. Haga clic enGuardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completará automáticamente.
  3. Haga clic enMostrar avanzado .
  4. Cómo ejecutar el flujo : contexto del sistema sin compartir: acceder a todos los datos
  5. Tipo : flujo de pantalla
  6. Versión de API para ejecutar el flujo : 52
  7. Etiqueta de la entrevista : no contiene el ejemplo {! $ Flow.CurrentDateTime}
  8. Haga clic enGuardar .
¡Casi llegamos! Una vez que todo se vea bien, haga clic en el botón Activar.

Prueba de concepto

A partir de ahora, siempre que un usuario actualice el campo NextStep en el objeto Oportunidad y no contenga la palabra cerrada o Perdida, el flujo creará automáticamente una tarea para él. ¡¡Voila !!

Evaluación formativa:

¡Quiero saber de ti! ¿Qué aprendió de esta publicación, es relevante para usted y cómo modificará los conceptos enseñados en la publicación para sus propios procesos comerciales? Haz una publicación y etiquétame en Twitter @automationchamp usando #AutomationChampionFlow.
 Autor: - Rakesh Gupta
Editor técnico : - Munira Majmundar
… Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://automationchampion.com/2021/05/25/getting-started-with-salesforce-flow-part-64-upskill-on-flow-learn-how-to-use-doesnt-contains-operator-and-show-off/

Entradas recomendadas