Eliminaci贸n definitiva de registros con Salesforce Flow

Eliminaci贸n definitiva de registros con Salesforce Flow

脷ltima actualizaci贸n el 22 de mayo de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • 驴C贸mo eliminar registros de Salesforce utilizando Flow?

Objetivos:

Despu茅s de leer este blog, podr谩:

  • Comprender la anotaci贸n @InvocableMethod
  • M谩s informaci贸n sobre el m茅todo database.emptyRecycleBin
  • Configurar la acci贸n de Apex para eliminar registros de forma permanente de Flow
  • Configurar el flujo de pantalla con el elemento Eliminar registro
  • Y mucho m谩s

驴Qu茅 es la eliminaci贸n completa?

La eliminaci贸n definitiva es la eliminaci贸n permanente de los registros especificados de la Papelera de reciclaje. Cuando los datos se eliminan de forma permanente, es casi imposible recuperarlos. Esto generalmente se logra a trav茅s de los m茅todos Database.EmptyRecycleBin .

Al vaciar los contenedores de reciclaje, tenga en cuenta las siguientes reglas y pautas:

  • Una vez que los registros se eliminan de la Papelera de reciclaje mediante esta llamada, se pueden consultar mediante queryAll() durante alg煤n tiempo. Por lo general, este tiempo es de 24 horas, pero puede ser m谩s corto o m谩s largo.
  • Una vez que los registros se eliminan mediante la llamada Database.EmptyRecycleBin , no se pueden recuperar.

Warren Mason es administrador de sistemas en Gurukul on Cloud (GoC). En GoC est谩n utilizando Salesforce Flow para optimizar los procesos de ventas. Warren tiene un requisito para eliminar clientes potenciales sin correo electr贸nico. Est谩 construyendo un flujo de pantalla:

  1. Descubra todos los clientes potenciales sin correo electr贸nico
  2. Eliminar definitivamente tales clientes potenciales

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

Si bien esto se puede resolver con varias herramientas de automatizaci贸n como Apex Trigger y otras, usaremos Salesforce Flow y llamaremos a un m茅todo de Apex . Para llamar a un m茅todo de Apex , agregue el elemento Acci贸n a su Flujo de Salesforce y seleccione una clase de Apex con una anotaci贸n @InvocableMethod .

En este art铆culo, usaremos la llamada clase de base de datos EmptyRecycleBin . Con Database.EmptyRecycleBin es posible borrar los registros de Salesforce. El m茅todo EmptyRecycleBin() elimina los registros de la papelera de reciclaje inmediatamente. A partir del lanzamiento de Summer'23 , no es posible acceder directamente al m茅todo EmptyRecycleBin desde Flow, por eso estamos usando la clase Apex Invocable.

Antes de discutir la soluci贸n, perm铆tame mostrarle un diagrama del proceso a un alto nivel. Dedique unos minutos a revisar el siguiente diagrama de flujo para comprenderlo.

Comencemos a construir este proceso de automatizaci贸n.

Pr谩ctica guiada (nosotros hacemos):

Hay 2 pasos para resolver el requisito comercial de Warren usando Screen Flow . Debemos:

  1. Cree una clase de Apex y una clase de prueba para eliminar registros de forma permanente de la Papelera de reciclaje.
  2. Flujo de fuerza de ventas
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue un elemento Obtener registros para encontrar todos los clientes potenciales sin direcci贸n de correo electr贸nico
    3. Agregue un elemento de decisi贸n para verificar los clientes potenciales encontrados o no (del paso 2)
    4. Agregue el elemento Eliminar registros para eliminar clientes potenciales
    5. Agregar acci贸n: llame a Empty RecycleBin Invocable Apex Class

Paso 1: Cree una clase de Apex y una clase de prueba

Ahora, tenemos que comprender una nueva anotaci贸n de Apex, es decir, @InvocableMethod . Esta anotaci贸n nos permite usar un m茅todo de Apex como algo que se puede llamar desde Flow y Apex. Los m茅todos invocables se llaman con la API REST y se usan para invocar un solo m茅todo de Apex. Los m茅todos invocables tienen valores de entrada y salida din谩micos y admiten llamadas de descripci贸n.

La anotaci贸n InvocableVariable identifica una variable de clase utilizada como par谩metro de entrada o salida para la acci贸n invocable de un m茅todo InvocableMethod. Si crea su propia clase personalizada para usarla como entrada o salida de un m茅todo invocable, puede anotar variables de miembros de clase individuales para que est茅n disponibles para el m茅todo.

La anotaci贸n de variable invocable admite los modificadores que se muestran en este ejemplo.


@InvocableVariable(label='variableLabel' description='variableDescription' requerido=(verdadero | falso))

La clase EmptyRecycleBin contiene dos variables, una para eliminar un solo registro y otra para manejar la eliminaci贸n de varios registros. Si茅ntase libre de pasar el valor a una o ambas variables seg煤n sea necesario. Cree la siguiente clase en su organizaci贸n.


clase p煤blica EmptyRecycleBin { @InvocableMethod(label='Papelera de reciclaje vac铆a' description='Eliminar permanentemente los registros de la Papelera de reciclaje.' iconName='slds:est谩ndar:record_delete' categor铆a = 'Acciones de Apex personalizadas') ejecuci贸n de vac铆o est谩tico p煤blico (Lista <Solicitudes> lista de solicitudes) { List<SObject> recordstoDelete = New List<SObject>(); para (Solicitudes req: lista de solicitudes) { if(req.obj != null){ recordstoDelete.add(req.obj); } if(req.listofSObjects != null){ recordstoDelete.addAll(req.listofSObjects); } } if(registrosparaEliminar.tama帽o()>0){ Database.emptyRecycleBin(registrosparaEliminar); } } Solicitudes de clases p煤blicas{ @InvocableVariable (descripci贸n ='Aceptar un registro de tipo SObject.' requerido=falso) objeto p煤blico SObject; @InvocableVariable (descripci贸n ='Aceptar m煤ltiples registros de un tipo SObject.' requerido=falso) public List<SObject> listofSObjects; }
}

Copie el c贸digo de GitHub o inst谩lelo usando esta URL .

Paso 2.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 de pantalla   opci贸n y haga clic en Crear y configurar el flujo.
  5. Se abrir谩 el dise帽ador de flujo para usted.

Paso 2.2: Adici贸n de elementos Obtener registros para encontrar clientes potenciales sin correo electr贸nico

El siguiente paso es usar el objeto Prospecto para encontrar los prospectos sin direcci贸n de correo electr贸nico.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Obtener registros .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completar谩 autom谩ticamente.
  3. Seleccione el objeto Prospecto de la lista desplegable.
  4. Seleccione Se cumplen todas las condiciones (Y) .
  5. Establecer condiciones de filtro
    1. Fila 1:
      1. Campo : Correo electr贸nico
      2. Operador : Igual
      3. Valor : {!$ConstanteGlobal.EmptyString}
  6. Cu谩ntos registros almacenar:
    1. Seleccionar todos los registros
  7. C贸mo almacenar datos de registro:
    1. Elija la opci贸n para Almacenar autom谩ticamente todos los campos .

Paso 2.3: uso del elemento de decisi贸n para verificar la variable de recopilaci贸n de registros (del paso 2)

Ahora usaremos el elemento Decisi贸n para comprobar la Variable de recopilaci贸n de registros del paso 2 para saber si devuelve el cliente potencial o no.

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Decisi贸n .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completar谩 autom谩ticamente.
  3. En Detalles del resultado , ingrese la etiqueta que el nombre de la API se completar谩 autom谩ticamente.
  4. Requisitos de condici贸n para ejecutar el resultado : se cumplen todas las condiciones (Y)
    1. Fila 1:
      1. Recurso: {!Get_Leads}
      2. Operador: es nulo
      3. Valor: {!$ConstanteGlobal.Falso}
    2. Haga clic en Listo .

Paso 2.4: Agregar acci贸n: eliminar registros para eliminar clientes potenciales

El siguiente paso es eliminar los clientes potenciales que encontramos en el Paso 2.2 . Para ello utilizaremos el elemento Eliminar Registros .

  1. En Flow Designer, debajo del nodo S铆 , haga clic en el icono + y seleccione el elemento Eliminar registros .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completar谩 autom谩ticamente.
  3. Para C贸mo encontrar registros para eliminar, seleccione Usar los ID almacenados en una variable de registro o una variable de colecci贸n de registros .
  4. Selecciona el   {!Get_Leads} de la lista desplegable.
  5. Haga clic en Listo.

Paso 2.5: Adici贸n de una acci贸n para llamar a una clase de Apex invocable

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Acci贸n .
  2. Seleccione la clase de Apex invocable EmptyRecycleBin .
  3. Ingrese un nombre en el campo Etiqueta : el nombre de la API se completar谩 autom谩ticamente.
  4. Establecer valores de entrada:
    1. Objeto para 鈥渓istofSObjects鈥 (Entrada) : Lead
    2. Objeto para "obj" (Entrada) : Plomo
  5. Almacenar valores de entrada
    1. listofSObjects : {!Get_Leads}
  6. Haga clic en Listo .

Al final, Warren's Flow se ver谩 como la siguiente captura de pantalla:

Una vez que todo se vea bien, guarde el flujo.

Prueba de concepto

  1. Cre茅 201 clientes potenciales sin una direcci贸n de correo electr贸nico para probar el flujo anterior.
  2. Ahora ejecute el flujo de pantalla y espere a que se complete el flujo.
  3. Vuelva a la Papelera de reciclaje para asegurarse de que los clientes potenciales se hayan eliminado definitivamente.

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.

Seguir leyendo

Buscar el siguiente d铆a h谩bil a partir de una fecha espec铆fica

Buscar el siguiente d铆a h谩bil a partir de una fecha espec铆fica

脷ltima actualizaci贸n el 7 de abril de 2023 por Rakesh Gupta Gran idea o pregunta duradera: no queremos trabajar los fines de semana o d铆as festivos, 隆todos lo entendemos! Si es as铆, 驴cree que nuestros clientes o prospectos lo hacen? Si tiene dudas, intente enviar un correo electr贸nico a

La publicaci贸n Buscar el siguiente d铆a h谩bil a partir de una fecha espec铆fica apareci贸 por primera vez en Automation Champion .

Seguir leyendo

Implemente la gamificaci贸n en su Salesforce

脷ltima actualizaci贸n el 22 de noviembre de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo puedo usar la gamificaci贸n en Salesforce para impulsar las ventas? 驴Cu谩les son las formas de automatizar la gamificaci贸n? Objetivos: despu茅s de leer esta publicaci贸n de blog, el lector podr谩: Crear un flujo que publicar谩 autom谩ticamente un

La publicaci贸n Implemente la gamificaci贸n en su fuerza de ventas apareci贸 primero en Automation Champion .

Seguir leyendo

Agregar autom谩ticamente un nuevo usuario al grupo p煤blico o cola

脷ltima actualizaci贸n el 25 de junio de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se agregan autom谩ticamente nuevos usuarios a un grupo p煤blico o cola? Objetivos: esta publicaci贸n de blog nos ayudar谩 a comprender lo siguiente Crear automatizaci贸n asociada con la creaci贸n de un nuevo usuario Agregar autom谩ticamente un usuario a

La publicaci贸n Agregar autom谩ticamente un nuevo usuario a un grupo p煤blico o cola apareci贸 primero en Automation Champion .

Seguir leyendo

Eliminar mensajes de Chatter mediante Salesforce Flow

脷ltima actualizaci贸n el 17 de junio de 2022 por Rakesh Gupta Gran idea o pregunta persistente: 驴C贸mo se puede permitir que los usuarios eliminen mensajes individuales de Chatter? Objetivos: despu茅s de leer este art铆culo, el lector podr谩: Usar la automatizaci贸n para aumentar los permisos de los usuarios Crear un objeto personalizado para almacenar la identificaci贸n de

La publicaci贸n Eliminar mensajes de Chatter mediante Salesforce Flow apareci贸 primero en Automation Champion .

Seguir leyendo

Cree un canal Slack usando Flow

脷ltima actualizaci贸n el 30 de mayo de 2022 por Rakesh Gupta Gran idea o pregunta persistente: 驴C贸mo se crea un canal de Slack con Salesforce Flow? Los canales de Slack aportan orden y claridad al trabajo: puede crearlos para cada proyecto, tema o equipo. Cuando hay un canal para todo, usted

La publicaci贸n Create A Slack Channel usando Flow apareci贸 primero en Automation Champion .

Seguir leyendo

Env铆e un mensaje directo de Slack usando Flow

Gran idea o pregunta duradera: 驴C贸mo se env铆a un mensaje directo al propietario de la cuenta en Slack a trav茅s de Salesforce Flow? Slack es una aplicaci贸n de mensajer铆a para empresas que conecta a las personas con la informaci贸n que necesitan. Sus espacios de trabajo le permiten organizar las comunicaciones por canales para discusiones grupales y le permiten

La publicaci贸n Enviar un mensaje directo de Slack mediante Flow apareci贸 por primera vez en Automation Champion .

Seguir leyendo

Publicar un mensaje en un canal de Slack mediante Flow

脷ltima actualizaci贸n el 24 de mayo de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se publica un mensaje en un canal de Slack a trav茅s de Salesforce Flow? Slack es una aplicaci贸n de mensajer铆a para empresas que conecta a las personas con la informaci贸n que necesitan. Sus espacios de trabajo te permiten organizar las comunicaciones por canales

La publicaci贸n Publicar un mensaje en un canal de Slack usando Flow apareci贸 primero en Automation Champion .

Seguir leyendo

Publicar autom谩ticamente un mensaje en Chatter cuando se crea un evento

脷ltima actualizaci贸n el 6 de abril de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se publica autom谩ticamente un mensaje en el mensaje del grupo de Chatter cuando un usuario crea un evento? En Salesforce, Chatter Group representa el grupo de personas. Es una excelente manera de impulsar la colaboraci贸n en su organizaci贸n.

La publicaci贸n Publicar autom谩ticamente un mensaje en Chatter cuando se crea un evento apareci贸 primero en Automation Champion .

Seguir leyendo

F贸rmula de flujo para estandarizar el nombre de oportunidad

脷ltima actualizaci贸n el 16 de abril de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo estandariza el nombre de la oportunidad para seguir la convenci贸n de nomenclatura definida por el negocio? Objetivos: despu茅s de leer este blog, podr谩: Comprender cu谩ndo usar el flujo antes de guardar Usar la f贸rmula para concatenar campos en el

La f贸rmula de flujo posterior para estandarizar el nombre de la oportunidad apareci贸 primero en Automation Champion .

Seguir leyendo

C贸mo reparar el error de operaci贸n DML MIXTO

脷ltima actualizaci贸n el 18 de abril de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo resuelve MIXED_DML_OPERATION: la operaci贸n DML en el objeto de configuraci贸n no est谩 permitida despu茅s de haber actualizado un error de objeto que no es de configuraci贸n (o viceversa)? El flujo activado por registros es una forma de automatizar los procesos comerciales. El flujo activado por registro es un

La publicaci贸n C贸mo corregir un error de operaci贸n DML MIXTO apareci贸 primero en Automation Champion .

Seguir leyendo

C贸mo reparar el error FIELD_INTEGRITY_EXCEPTION

脷ltima actualizaci贸n el 18 de abril de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo resuelve el error FIELD_INTEGRITY_EXCEPTION? El flujo activado por registros es una forma de automatizar los procesos comerciales. Record-Triggered Flow es una poderosa herramienta para que los administradores y desarrolladores de sistemas implementen procesos comerciales sin escribir c贸digo. Sin embargo, con gran poder viene

La publicaci贸n C贸mo corregir el error FIELD_INTEGRITY_EXCEPTION apareci贸 primero en Automation Champion .

Seguir leyendo

Agregar autom谩ticamente un invitado a un evento

脷ltima actualizaci贸n el 16 de abril de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se comparten eventos autom谩ticamente con un invitado cuando las actividades compartidas est谩n habilitadas? Esta es una continuaci贸n de mi 煤ltimo art铆culo Compartir eventos autom谩ticamente desde un calendario compartido. En mi art铆culo anterior, hab铆a discutido un uso

La publicaci贸n Agregar autom谩ticamente un invitado a un evento apareci贸 por primera vez en Automation Champion .

Seguir leyendo

Agregar usuario de socio autom谩ticamente al grupo p煤blico

脷ltima actualizaci贸n el 11 de marzo de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se agregan autom谩ticamente usuarios asociados a un grupo p煤blico? Esta es una continuaci贸n de mi 煤ltimo art铆culo Primeros pasos con Process Builder – Parte 56 (Creaci贸n autom谩tica de un grupo p煤blico para una cuenta nueva). En mi art铆culo anterior,

La publicaci贸n Agregar autom谩ticamente un usuario de socio a un grupo p煤blico apareci贸 por primera vez en Automation Champion .

Seguir leyendo

Notificaci贸n de correo electr贸nico personalizada para tareas completadas

脷ltima actualizaci贸n el 10 de marzo de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se env铆an notificaciones por correo electr贸nico personalizadas para las tareas completadas al cedente? Objetivos: despu茅s de leer esta publicaci贸n de blog, el lector podr谩: Crear un flujo activado por registro para enviar notificaciones de correo electr贸nico personalizadas para el

La publicaci贸n Notificaci贸n de correo electr贸nico personalizada para tareas completadas apareci贸 primero en Automation Champion .

Seguir leyendo

Asigne el origen del cliente potencial al origen de la cuenta durante la conversi贸n del cliente potencial

脷ltima actualizaci贸n el 24 de febrero de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo puede asignar el origen del cliente potencial al origen de la cuenta durante la conversi贸n del cliente potencial? Un cliente potencial en un contexto de marketing es un contacto de ventas potencial, una persona u organizaci贸n que expresa inter茅s en sus productos.

La publicaci贸n Asignar origen de cliente potencial a origen de cuenta durante la conversi贸n de cliente potencial apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow: parte 89 (Creaci贸n y activaci贸n autom谩ticas de un contrato)

脷ltima actualizaci贸n el 7 de febrero de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se crea y activa un contrato mediante Salesforce Flow? Objetivos: despu茅s de leer esta publicaci贸n de blog, el lector podr谩: Usar el flujo desencadenado por registro despu茅s de guardar para crear un borrador de contrato Usar un elemento de decisi贸n para verificar

La publicaci贸n Primeros pasos con Salesforce Flow: Parte 89 (Crear y activar autom谩ticamente un contrato) apareci贸 primero en Automation Champion .

Seguir leyendo

Primeros pasos con Salesforce Flow: parte 86 (隆Mejore la productividad con notificaciones push para escritorio o dispositivos m贸viles!)

脷ltima actualizaci贸n el 25 de enero de 2022 por Rakesh Gupta Quiz谩s est茅 pensando, 驴por qu茅 estoy tan entusiasmado con el lanzamiento reciente de Salesforce? Bueno, 隆d茅jame contarte las razones! Sin embargo, una de las razones que m谩s destaca son las mejoras relacionadas con Process Builder: 隆oh, s铆! lo tienes

La publicaci贸n Primeros pasos con Salesforce Flow: parte 86 (隆Mejore la productividad con notificaciones push en el escritorio o el m贸vil!) apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow – Parte 78 (Reenv铆o autom谩tico de registros a una conexi贸n)

脷ltima actualizaci贸n el 3 de noviembre de 2021 por Rakesh Gupta Para comprender c贸mo resolver el mismo caso de uso comercial utilizando Process Builder. Consulte este art铆culo Introducci贸n a Process Builder – Parte 10 (Reenv铆o autom谩tico de registros a una conexi贸n). Gran idea o pregunta duradera: Salesforce-to-Salesforce es una funci贸n compatible de forma nativa

La publicaci贸n Getting Started with Salesforce Flow – Part 78 (Auto Forward Records to a Connection) apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow – Parte 71 (隆Ahora, generar un PDF de cotizaci贸n es muy sencillo! 隆Aprenda c贸mo!)

Genere PDF de cotizaci贸n autom谩ticamente utilizando Salesforce Salesforce.

La publicaci贸n Getting Started with Salesforce Flow – Part 71 (隆Ahora, generar un PDF de cotizaci贸n es muy f谩cil! 隆Aprenda c贸mo!) Apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow – Parte 66 (Dejar de seguir autom谩ticamente registros seg煤n criterios)

Gran idea o pregunta duradera: 驴Desea dejar de seguir autom谩ticamente los registros cuando los registros cumplen con criterios espec铆ficos? Como sabe, los usuarios pueden seguir y dejar de seguir registros haciendo clic en el icono Seguir en la p谩gina de detalles del registro. Sin embargo, los usuarios pueden automatizar el proceso Seguir / Dejar de seguir, seg煤n algunos criterios, ya sea por

La publicaci贸n Getting Started with Salesforce Flow – Part 66 (Auto Unfollow Records Based on Criteria) apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow – Parte 65 (Registro de seguimiento autom谩tico basado en criterios)

Gran idea o pregunta duradera: 驴C贸mo pueden los usuarios seguir autom谩ticamente los registros cuando los registros cumplen con criterios espec铆ficos? Dentro de Salesforce, los usuarios pueden seguir y dejar de seguir registros haciendo clic en el icono Seguir en la p谩gina de detalles del registro. Si quieres鈥 Sigue leyendo

La publicaci贸n Getting Started with Salesforce Flow – Part 65 (Registro de seguimiento autom谩tico basado en criterios) apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow – Parte 64 (Mejora en Flow – Aprenda a usar NO CONTIENE Operador – 隆y presumir!)

脷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 use el operador NO CONTIENE en Flow? Con un suspiro, es posible que desee recordarme que, en Salesforce Flow, uno鈥 Continuar leyendo

La publicaci贸n Getting Started with Salesforce Flow – Part 64 (Upskill on Flow – Learn How to Use DOESN'T CONTAINS Operator – and Show-Off!) Apareci贸 primero en Automation Champion .

Seguir leyendo