Definir varias rutas en un flujo
Objetivos de aprendizaje
Después de completar esta unidad, podrá:
- Interpretar los requisitos de negocio y visualizarlos en un diagrama de flujo del proceso.
- Crear un flujo para implementar el proceso de los requisitos de negocio.
- Utilizar la lógica de ramificación para seleccionar una de varias rutas en un flujo.
Antes de empezar
Para esta insignia se supone que sabe cómo crear un flujo con variables, entradas y elementos de datos, como el elemento Get Records (Obtener registros). Si no conoce estos conceptos o necesita un repaso, consulte las insignias Aspectos básicos de Flow Builder y Datos y acciones en los flujos.
Cuando el flujo se ejecuta, viaja como si fuera un tren, avanzando por el camino hacia el final y haciendo que sucedan cosas en cada parada. Pero los trenes no siempre avanzan por una única ruta. Las vías del tren se dividen, convergen y se entrelazan para llegar a donde tienen que ir. Flow Builder le permite crear una automatización que haga lo mismo, con rutas que se pueden ramificar y combinar según lo considere adecuado.
El poder de If
En algunos casos de uso de automatización, se requiere que automatice de distintos modos para diferentes situaciones. Observemos un ejemplo.
Flo Smith es una administradora experta de Salesforce y analista de negocios en Pyroclastic, Inc. En este módulo, usted es un administrador de Salesforce del equipo de Flo que la ayuda a automatizar algunos de los procesos de negocio de Pyroclastic.
La tarea que Flo le asignará hoy es crear una automatización que permita establecer de forma automática la prioridad correcta cuando se creen casos de asistencia. El valor de la prioridad depende del tipo de problema y de la influencia del solicitante. Flo empieza revisando los requisitos de negocio.
- If Type = Downtime: priority = Severity 0 (Si tipo = Interrupciones: prioridad = Severidad 0).
- If Type = Usability and the contact who submitted it is a VIP: priority = Severity 1 (Si tipo = Usabilidad y el contacto que lo envió es VIP: prioridad = Severidad 1).
- If Type = Usability and the contact who submitted it is not a VIP: priority = Severity 2 (Si tipo = Usabilidad y el contacto que lo envió no es VIP: prioridad = Severidad 2).
- Otherwise (else), priority = Severity 3 (De lo contrario [else], la prioridad = Severidad 3).
Observe que todas las líneas, excepto la última, empiezan con if. La última línea actúa como un valor predeterminado para los casos que no cumplen con ninguno de los tres requisitos anteriores.
A continuación, usted y Flo crearán un diagrama de flujo para visualizar la automatización mediante la cual se establecerá la prioridad del caso. Puede hacer esto de cualquier forma que le funcione: desde hacer bocetos en papel hasta usar una herramienta de diseño o un programa de diagramas de flujo. Su objetivo es transformar los requisitos de texto a un modelo visual de la automatización prevista.
Analicemos el diagrama de flujo. Tiene cuatro requisitos de negocio.
Cada requisito de negocio incluye un cuadro de severidad para la ruta que se seleccionará cuando se cumpla el requisito, la ruta Yes (Sí). En Flow Builder, se conocen como resultados, y cada resultado tiene su propia ruta en el lienzo.
Cada resultado (excepto el último) tiene condiciones que se deben cumplir. En Flow Builder, esas condiciones se denominan requisitos de condición.
El último resultado es el predeterminado. No tiene condiciones. El flujo elige el resultado predeterminado cuando no se cumple ninguna de las condiciones de los otros resultados.
Para crear este tipo de lógica de ramificación en un flujo, debe utilizar un elemento de decisión.
El elemento de decisión
El elemento Decision (Decisión) le permite crear varias rutas. Crear un elemento de decisión según un diagrama de flujo tiene dos pasos.
- Cree un resultado para cada ruta Yes (Sí) del diagrama. (El resultado predeterminado rige la ruta No final). Los resultados se enumeran en orden bajo Outcome Order (Orden de resultados).
- Agregue requisitos de condición a cada resultado, excepto al predeterminado. Los requisitos de condición para cada resultado provienen del diamante correspondiente en el diagrama de flujo.
Las rutas del elemento de decisión representan los resultados.
Cuando el flujo llega a un elemento de decisión, evalúa el primer resultado. Si se cumplen las condiciones, el flujo elige ese resultado y sigue su ruta. De lo contrario, el flujo continúa según el orden de resultados hasta que encuentra un resultado para el cual se cumplen los requisitos de condición. Si no se cumple ninguno de los requisitos de condición de los resultados, el flujo sigue la ruta predeterminada del resultado. Cuando las distintas rutas se combinan, el flujo regresa a esa ruta única.
¿Todo listo para pasar a la práctica con Flow Builder?
Inicie su Trailhead Playground ahora para seguirnos y probar los pasos de este módulo. Para abrir su Trailhead Playground, desplácese hasta el reto práctico y haga clic en Launch (Iniciar). También se utiliza la zona de pruebas cuando es el momento de completar los retos prácticos.
Crear un elemento de decisión
Vamos a crear un flujo para automatizar este proceso de negocio. Pero primero, agreguemos estos valores de listas de selección obligatorios a los campos relevantes. Para obtener más información sobre cómo agregar valores de listas de selección, consulte la unidad Gestionar los valores de su lista de selección en la insignia Administración de listas de selección.
- En el objeto Case (Caso), en el campo Priority (Prioridad), agregue estos valores:
Severity 0
(Severidad 0),Severity 1
(Severidad 1),Severity 2
(Severidad 2),Severity 3
(Severidad 3) - En el objeto Case (Caso), en el campo Type (Tipo), agregue estos valores:
Downtime
(Interrupciones),Usability
(Usabilidad)
Crear un elemento de decisión y definir resultados
Siga estos pasos para volver a crear el proceso de diagrama de flujo como un flujo, con un elemento Decision (Decisión).
- Cree un flujo desencadenado por registro:
- En Object (Objeto), seleccione Case (Caso).
- Acepte la configuración predeterminada del desencadenador y las condiciones de entrada.
- En Optimize the Flow for (Optimizar el flujo para), seleccione Fast Field Updates (Actualizaciones de campo rápidas).
Elija dicha opción cuando solo desea actualizar el registro desencadenante. Consulte la insignia Flujos desencadenados por registro para obtener más información sobre las actualizaciones de campo rápidas.
- Agregue un elemento de decisión al flujo:
- En el lienzo, haga clic en
.
- Seleccione Decision (Decisión).
- En Label (Etiqueta), introduzca
Check Case Details
(Verificar detalles del caso).
- Defina los resultados:
- En OUTCOME ORDER (Orden de resultados), deje seleccionada la opción New Outcome (Nuevo resultado).
- En OUTCOME DETAILS (Detalles de resultado), en Label (Etiqueta), introduzca
Severity 0
(Severidad 0).
- Junto a OUTCOME ORDER (Orden de resultados), haga clic en
para crear un nuevo resultado.
- Etiquete el segundo resultado
Severity 1
(Severidad 1).
- Cree otro resultado y etiquételo como
Severity 2
(Severidad 2).
- En OUTCOME ORDER (Orden de resultados), seleccione Default Outcome (Resultado predeterminado).
- Cambie su etiqueta a
Severity 3 (Default)
(Severidad 3 [Predeterminada]).
Agregar requisitos de condición a los resultados
- Defina los requisitos de condición del resultado de severidad 0:
- En OUTCOME ORDER (Orden de resultados), seleccione Severity 0 (Severidad 0).
- En OUTCOME DETAILS (Detalles de resultado), en Resource (Recurso), haga clic en Triggering Case (Caso desencadenante) y seleccione Case Type (Tipo de caso).
- Mantenga Equals (Es igual a) como el operador.
- En Value (Valor), seleccione Downtime (Interrupción).
- Defina los requisitos de condición del resultado de severidad 1:
- Introduzca el primer requisito de condición:
- Resource (Recurso): Triggering Case (Caso desencadenante)> Case Type (Tipo de caso)
- Operator (Operador): Equals (Es igual a)
- Value (Valor): Usability (Usabilidad)
- Resource (Recurso): Triggering Case (Caso desencadenante)> Case Type (Tipo de caso)
- Haga clic en Add Condition (Agregar condición).
- Introduzca el segundo requisito de condición:
- Resource (Recurso): Triggering Case (Caso desencadenante)> Contact ID (Id. de contacto)> Contact Description (Descripción del contacto)
- Operator (Operador): Contains (Contiene)
- Value (Valor):
VIP
- Resource (Recurso): Triggering Case (Caso desencadenante)> Contact ID (Id. de contacto)> Contact Description (Descripción del contacto)
- Defina los requisitos de condición del resultado de severidad 2:
- Resource (Recurso): Triggering Case (Caso desencadenante) > Case Type (Tipo de caso)
- Operator (Operador): Equals (Es igual a)
- Value (Valor): Usability (Usabilidad)
Por más que el tercer diamante del diagrama especifique que el contacto no es VIP, no tenemos que verificar ese requisito para el tipo de severidad 2. Los requisitos de condición se evalúan en orden, por lo cual el elemento de decisión no verifica este resultado, salvo que el contacto no sea VIP.
El elemento de decisión debe verse similar a lo siguiente:
Haga clic en para cerrar el panel lateral.
El diagrama de flujo tenía cuatro resultados potenciales, así que el elemento de decisión tiene cuatro resultados. Esos cuatro resultados crean cuatro rutas posibles que el flujo puede tomar, cada una con un nombre según su resultado correspondiente. Así aparece en el lienzo.
Este es un buen momento para asignarle un nombre al flujo nuevo y guardarlo.
- Haga clic en Save (Guardar).
- En Flow Label (Etiqueta de flujo), introduzca
Set Case Priority
(Establecer prioridad del caso).
- Haga clic en Save (Guardar).
Crear elementos de actualización de registros
En cada ruta de severidad, debe agregar un elemento que actualice el caso nuevo con el valor de prioridad adecuado. Por ejemplo, en la ruta de severidad 0, el campo Priority (Prioridad) se establece en Severity 0 (Severidad 0).
Primero, agregue un elemento Update Records (Actualizar registros) a las tres primeras rutas.
- En Severity 0 (Severidad 0), haga clic en
.
- En Shortcuts (Accesos directos), seleccione Update Triggering Record (Actualizar registro desencadenante).
- En Label (Etiqueta), introduzca
Set Priority to Sev0
(Establecer prioridad en Sev0).
- Acepte el nombre de API generado automáticamente.
- En How to Find Records to Update and Set Their Values (Cómo encontrar registros para actualizar y establecer sus valores), conserve el valor predeterminado: Use the case record that triggered the flow (Usar el registro de caso que desencadenó el flujo).
- Desplácese a Set Field Values for the Case Record (Establecer valores de campo para el registro de caso).
- En Field (Campo), seleccione Priority (Prioridad).
- En Value (Valor), seleccione Severity 0 (Severidad 0).
- Haga clic en
en el panel Update Records (Actualizar de registros) para cerrarlo.
- Repita los pasos 1 a 9 para las rutas de severidad 1 y 2. No se olvide de cambiar la etiqueta y el valor de cada ruta.
En la ruta de severidad 3, debe copiar y pegar el elemento de la ruta de severidad 2. Es un ejemplo bastante simple, pero si alguna vez necesita copiar o mover (cortar y pegar) una gran cantidad de elementos juntos, es bueno conocer esta técnica.
- Haga clic en el elemento Set Priority to Sev2 (Establecer prioridad en Sev2).
- Haga clic en Copy Element (Copiar Elemento).
- En Severity 3 (Severidad 3), haga clic en
.
- Haga clic en Paste 1 Element (Pegar 1 elemento).
- Haga clic en el elemento nuevo y seleccione Edit Element (Editar elemento).
- Cambie la etiqueta a
Set Priority to Sev3
(Establecer prioridad en Sev3).
- Cambie el nombre de API a
Set_Priority_to_Sev3
- Cambie el campo Value (Valor) a Severity 3 (Severidad 3).
- Guarde el flujo.
El flujo debería tener un aspecto similar al siguiente en el lienzo.
Cuando el flujo sigue la ruta para un resultado específico, ejecuta solo el elemento de actualización de registros en esa ruta.