Gran idea o pregunta duradera:
¿Cómo se configura el enrutamiento dinámico de aprobación? En Salesforce , unusuario puede utilizar unproceso de aprobación para obtener la aprobación de los gerentes o una autoridad superior . Procesos de aprobación ruta de un registro a uno o más aprobadores, especificando los pasos necesarios para un registro a ser aprobado, y quién debe aprobarlo en cada paso. En un proceso de aprobación normal, i . e ., Proceso de aprobación estático , los aprobadores en cada paso se especifican explícitamente en cada paso del proceso de aprobación, o puede hacer que el remitente elija al aprobador manualmente , como se muestra en la siguiente captura de pantalla: Mientras que el enrutamiento de aprobación dinámico nos permite especificar los aprobadores para cada registro mediante los campos de búsqueda de usuarios en el registro que requiere aprobación . Estos campos se pueden completar usando Process Builder o Apex , usando datos de un objeto / ajuste personalizado especial que contiene toda la información necesaria para enrutar el registro . El enrutamiento de aprobación dinámico proporciona la flexibilidad de enrutar la solicitud de aprobación a diferentes personas según el tipo de cuenta o algunos otros criterios relacionados con el registro . Comencemos con un caso de uso empresarial.Objetivos:
Después de leer esta publicación de blog, el lector podrá:- Utilice el flujo activado por registro antes de guardar paraenviar solicitudes de aprobación a los aprobadores designados
- Utilice un elemento de decisión para buscar: la variable de registro o la variable de colección de registros contiene un registro o no
- Utilice un elemento de asignación para asignar un aprobador predeterminado a la oportunidad
Enfoque de campeón de automatización (I-do):
Si bien esto se puede resolver utilizando varias herramientas de automatización como Apex o Flow , usaremos el flujo activado por registro antes de guardar . Esto no es algo que se pueda lograr con Workflow Rules o Process Builder.
Antes de discutirlo, 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.
Comencemos a construir este proceso de automatización.
Práctica guiada (lo hacemos):
Hay 5 pasos para resolver los requisitos comerciales de Steven utilizando Salesforce Flow. Debemos:- Cree un campo de búsqueda personalizado (con objeto de usuario) en el objeto que se está aprobando
- Cree un objeto personalizado que se utilizará como matriz de aprobación
- Complete la matriz de aprobación, es decir, cree algunos registros en un objeto personalizado
- Crea un proceso de aprobación
- Pasos del flujo de Salesforce:
- Definir propiedades de flujo para flujo activado por registro
- Agregue un elemento de obtención de registros para encontrar al propietario de la oportunidad
- Agregue un elemento de decisión para verificar la variable de recopilación de registros (del paso 5.2)
- Agregar un elemento de asignación: asignar un aprobador dinámico
- Agregar un elemento de asignación: asignar un aprobador predeterminado
Paso 1: creación de una búsqueda personalizada (usuario)
En elobjeto Oportunidad , cree un campo de búsqueda llamado Aprobador de oportunidades como se menciona en los pasos a continuación.- Haga clic enConfiguración .
- En el Administrador de objetos, escribaOportunidad .
- SeleccioneCampos y relaciones , luego haga clic en Nuevo.
- Seleccione Relación de búsqueda como tipo de datos, luego haga clic en Siguiente .
- Seleccione el objeto Usuario para la opción Relacionado con, luego haga clic en Siguiente .
- IngreseEtiqueta de campo y haga clic en el botón Siguiente. Se completará el nombre de la API .
- Como práctica recomendada, introduzca siempre una descripción .
- Configure laSeguridad a nivel de campo para los perfiles , asegúrese de configurar este campo como de solo lectura.
- Agregue este campo a Diseño de página .
- Haga clic enGuardar.
Paso 2: crea un objeto personalizado
El siguiente paso es crear una Matriz de aprobadores de objetos personalizados y algunos campos personalizados para almacenar información relacionada que se utilizará en el enrutamiento de aprobación.- Haga clic enConfiguración .
- En el Administrador de objetos, haga clic enCrear | Objeto personalizado .
- Ahora cree una matriz de aprobadores de objetos personalizados y campos como se muestra en la captura de pantalla a continuación:
- Haga clic enGuardar.
Nombre del campo | Valores |
Fuente principal | Web Consulta telefónica Recomendación de socio |
Tipo | Cliente existente: degradación Cliente existente – Reemplazo Cliente existente: actualización Nuevo cliente |
Paso 3: crear registros de matriz de aprobación
El siguiente paso es crear registros de matriz de aprobación que asocian la fuente y el tipo de cliente potencial al Aprobador de oportunidades apropiado. Por ejemplo, si Origen del cliente potencial = Web y Tipo = Cliente existente – Actualización , entonces uno podría enrutar los registros a Adam Smith como Aprobador de oportunidades . Se verá como la siguiente captura de pantalla:Paso 4: cree un proceso de aprobación
- Haga clic enConfiguración .
- En el cuadro Búsqueda rápida, escribaProcesos de aprobación .
- Hace clic enCrear nuevo proceso de aprobación | Utilice el botón Asistente de configuración estándar .
- Seleccione el objeto Oportunidad para el menú desplegable Gestionar procesos de aprobación para.
- Ahora cree un proceso de aprobación, como se muestra en la siguiente captura de pantalla:
Paso 5.1: Flujo de Salesforce – Definir propiedades de flujo
- Haga clic en Configuración .
- En el cuadro Búsqueda rápida, escriba Flujos .
- Seleccione Flujos y luego haga clic en Nuevo flujo .
- Seleccione el flujo activado por registro y haga clic en Siguiente y configure el flujo de la siguiente manera:
- ¿Cómo quieres empezar a construir ? Freeform
- Activar el flujo cuando : se crea o actualiza un registro
- Ejecutar flujo : antes de que se guarde el registro
- Objeto : Oportunidad
- SeleccioneSe cumple cualquier condición (O) .
- Establecer condiciones
- Fila 1
- Campo: Oportunidad | Tipo
- Operador: No es igual
- Valor: {! $ GlobalConstant.EmptyString}
- Fila 1
- Haga clic en Agregar condición
- Fila 2
- Campo: Oportunidad | Fuente principal
- Operador: No es igual
- Valor: {! $ GlobalConstant.EmptyString}
- Fila 2
- Elija la opción Cada vez que se actualice un registro y cumpla con los requisitos de condición .
- Haz clic enListo .
Paso 5.2: Flujo de Salesforce: agregar un elemento Obtener registro
El siguiente paso es obtener el Aprobador de oportunidades. Usaremos elelementoObtener registros. Para hacer esto, arrastre y suelte el elemento Obtener registros en el lienzo y asigne los campos de acuerdo con los detalles a continuación:- En Caja de herramientas , seleccione Elemento .
- Arrastre y suelte el elemento Obtener registros en el diseñador de flujo.
- Ingrese un nombre en el campo Etiqueta; el nombre de la API se completará automáticamente.
- Seleccione lamatriz de aprobadores objeto de la lista desplegable.
- SeleccioneSe cumplen todas las condiciones (Y) .
- Establecer condiciones de filtro
- Fila 1:
- Tipo de campo
- Operador: Igual a
- Valor: {! $ Record.Type}
- Fila 2:
- Campo: Fuente de cliente potencial
- Operador: Igual a
- Valor: {! $ Record.LeadSource}
- Fila 1:
- Cuántos registros almacenar:
- seleccionesolo el primer registro
- Cómo almacenar datos de registro:
- Elija la opción para almacenar automáticamente todos los campos .
- Haz clic enListo .
Paso 5.3: Flujo de Salesforce: uso del elemento de decisión para verificar el tamaño de la variable de registro
Ahora usaremos el elemento Decisión para verificar el tamaño de la Variable de registro del paso 5.2. Si la Variable de texto no es igual a nula , seguiremos adelante y actualizaremos al Aprobador en el registro de oportunidades. De lo contrario, lo actualizaremos con un aprobador predeterminado.- En Caja de herramientas , seleccione Elemento .
- Arrastre y suelte el elemento Decisión en el diseñador de flujo.
- Ingrese un nombre en el campo Etiqueta; el nombre de la API se completará automáticamente.
- En Detalles del resultado , ingrese la etiqueta que el nombre de la API se completará automáticamente.
- Requisitos de las condiciones para ejecutar el resultado : se cumplen todas las condiciones (Y)
- Fila 1:
- Recurso: {! Opportunity_Approver}
- Operador: es nulo
- Valor: {! $ GlobalConstant.False}
- Fila 1:
- Cuándo ejecutar el resultado : si se cumplen los requisitos de la condición
- Haz clic enListo .
Paso 5.4: Flujo de Salesforce: uso del elemento de asignación para actualizar el aprobador de oportunidades
El siguiente paso es actualizar un registro de oportunidad. Usaremos la Asignación elemento, ya que estamos usando el flujo antes de guardar .- En Caja de herramientas , seleccione Elemento .
- Arrastre y suelte el elemento Asignación en el diseñador de flujo.
- Ingrese un nombre en el campo Etiqueta; el nombre de la API se completará automáticamente.
- Establecer valores variables
- Fila 1:
- Campo: {! $ Record.Opportunity_Approver__c}
- Operador: Igual a
- Valor: {! Opportunity_Approver.Opportunity_Approver__c} (Registrar variable del paso 5.2)
- Fila 1:
- Haz clic enListo .
Paso 5.5: Flujo de Salesforce: uso del elemento de asignación para actualizar el aprobador predeterminado
En caso de que no existan aprobadores en laMatriz de aprobadores para la oportunidad actual, actualizaremos Aprobador de oportunidades a administrador de usuarios que han iniciado sesión. Usaremos la Asignación elemento, ya que estamos usando el flujo antes de guardar .- En Caja de herramientas , seleccione Elemento .
- Arrastre y suelte el elemento Asignación en el diseñador de flujo.
- Ingrese un nombre en el campo Etiqueta; el nombre de la API se completará automáticamente.
- Establecer valores variables
- Fila 1:
- Campo: {! $ Record.Opportunity_Approver__c}
- Operador: Igual a
- Valor: {! $ User.ManagerId}
- Fila 1:
- Haz clic enListo .
- Haga clic enGuardar .
- Ingrese la etiqueta de flujo, el nombre de la API se completará automáticamente.
- Haga clic enMostrar avanzado .
- Tipo : flujo activado por registro
- Versión de API para ejecutar el flujo : 50
- Etiqueta de la entrevista : Enrutamiento de aprobación dinámica {! $ Flow.CurrentDateTime}
- Haga clic enGuardar .
Prueba de concepto
A partir de ahora, si un usuario empresarial actualiza la fuente y el tipo de cliente potencial, Process Builder completará automáticamente el campo Aprobador de oportunidades .- Actualmente, elAprobador de oportunidades en la oportunidad West Mountain Sign es Patrick Trevenen (que es correcto según nuestra matriz que configuramos en el paso 3 ) como se muestra en la siguiente captura de pantalla:
- Ahora actualizamos el tipo a cliente existente: actualización y fuente de clientes potenciales a la Web.
- Por último, envíe un registro de oportunidad para su aprobación.