Saber cuándo un cliente potencial está listo para pasar del departamento de marketing al de ventas puede mejorar la velocidad del ciclo de ventas y la tasa de éxito.
Seguir leyendoIntegración de Salesforce y HubSpot: Guía del administrador
Ha llegado el momento. Una de las invitaciones de calendario más interruptivas que puedes recibir acaba de aparecer en tu bandeja de entrada. El equipo de marketing está cambiando de plataforma de automatización de marketing a HubSpot. Y esto necesita sincronizarse bidireccionalmente con Salesforce. En este post, te daré un rápido curso acelerado sobre la integración HubSpot-Salesforce y lo que […]
El post Integración de Salesforce y HubSpot: Guía para administradores appeared first on Salesforce Ben.
La integración de Salesforce y HubSpot: Guía para administradores appeared first on Salesforce Ben
Seguir leyendoNunca te pierdas el ritmo: notificaciones para la eliminación de clientes potenciales en la cadencia de participación de ventas
Última actualización el 1 de noviembre de 2023 por Rakesh Gupta
Gran idea o pregunta duradera:
- ¿Cómo se notifica al propietario del cliente potencial cuando alguien elimina un cliente potencial de la cadencia de participación de ventas?
Objetivos:
Después de leer este blog, podrás:
- Comprender la captura de datos modificados
- Comprender el objeto ActionCadenceTracker
- Suscríbase para cambiar eventos mediante un activador de Apex
- Llamar a un flujo iniciado automáticamente desde la clase Apex
- Y mucho más.
👉 Anteriormente, escribí un artículo sobre Sales Engagement. ¿Por qué no echarles un vistazo mientras lo haces?
A Benjamin Moore , administrador de Salesforce en Gurukul On Cloud (GoC), se le ha asignado una tarea específica. Siempre que un vendedor por teléfono o el equipo de ventas internas elimine un cliente potencial (cliente potencial) de la cadencia de participación de ventas, asegúrese de la creación automática de una tarea con estos detalles:
- Asunto : – Cliente potencial eliminado de la cadencia de participación en ventas
- Estado : – No iniciado
- Prioridad :- Alta
- Fecha de vencimiento : – Hoy
- Relacionado con : – Plomo
- Asignado a : – Propietario principal
¿Qué es la cadencia de participación en ventas?
La adquisición de clientes potenciales es un paso importante en cualquier esfuerzo de marketing. Una vez que los equipos de ventas internas tienen una lista de clientes potenciales, están listos para emprender actividades de divulgación. ¡Pero espera! Demos un paso atrás y reflexionemos sobre las siguientes preguntas como preámbulo para comprender la cadencia de ventas: (1) ¿Con qué frecuencia desea que sus representantes se comuniquen con los clientes potenciales? (2) ¿Cómo le gustaría que se comunicaran con el cliente potencial, mediante llamada o correo electrónico? (2) ¿Cómo desea capturar la disposición de las llamadas? (3) etcétera.
La cadencia de participación de ventas es una línea de tiempo de las actividades y métodos de ventas que siguen los representantes de ventas para atraer clientes potenciales. El propósito de una cadencia es facilitar que el representante de ventas interno cumpla con el cronograma y garantice que los prospectos no sean olvidados, es decir, que nada se pierda. Por ejemplo, si ofrece una consulta gratuita en su sitio web y alguien completa un formulario, la cadencia incluiría una lista de las cosas que hace para programar la primera reunión.
Una cadencia de ventas normalmente incluye tres puntos de contacto diferentes: correo electrónico , redes sociales y llamadas/correos de voz . La cadencia, para diferentes embudos de ventas, puede diferir, pero siempre debe incluir una combinación de las tres formas de comunicación mencionadas.
Una cadencia de participación de ventas se parece a esto:
En otras palabras, las cadencias de participación de ventas difieren de un tipo de proceso de ventas a otro, pero la idea básica sigue siendo la misma: toques consistentes y secuenciales.
¿Qué es la captura de datos modificados?
La captura de datos modificados (CDC) es una técnica utilizada en bases de datos y sistemas de procesamiento de datos para identificar y capturar los cambios realizados en los datos. El objetivo principal de CDC es garantizar que los cambios en los datos de origen (como inserciones, actualizaciones y eliminaciones) puedan detectarse y procesarse fácilmente en sistemas posteriores.
La captura de datos de cambios (CDC) en Salesforce es una función que le permite realizar un seguimiento y capturar los cambios realizados en los datos de Salesforce. Proporciona una manera de capturar y entregar cambios en los datos, tanto en tiempo real como de manera histórica, lo que facilita la sincronización de datos entre sistemas y mantiene una copia actualizada de los datos de Salesforce en almacenes de datos externos. Aquí hay un desglose de de qué se trata la captura de datos modificados en Salesforce:
- Actualizaciones en tiempo real : CDC proporciona un flujo de cambios en tiempo real, lo que significa que tan pronto como se realiza un cambio en Salesforce, se captura y se puede actuar de inmediato.
- Captura integral de datos : CDC captura no solo los datos modificados sino también los metadatos sobre el cambio, como cuándo ocurrió el cambio y qué tipo de cambio fue (por ejemplo, crear, actualizar, eliminar).
- Objetos estándar y personalizados : puede habilitar CDC tanto para objetos estándar de Salesforce (como Cuenta, Contacto) como para objetos personalizados.
- Arquitectura basada en eventos : los cambios se entregan como eventos. Las aplicaciones pueden suscribirse a estos eventos y tomar medidas cada vez que haya un cambio. Esto permite una integración más dinámica y con mayor capacidad de respuesta entre Salesforce y los sistemas externos.
- Integración simplificada : CDC puede simplificar los desafíos de integración. En lugar de sondear frecuentemente a Salesforce en busca de cambios, los sistemas externos pueden simplemente escuchar los eventos de cambio y actuar en consecuencia.
- Alto volumen : está diseñado para manejar un gran volumen de eventos de cambio, lo que garantiza que incluso las empresas con cantidades masivas de datos puedan utilizar CDC de manera efectiva.
- API y eventos de plataforma : Salesforce proporciona API que permiten que los sistemas externos se suscriban a estos eventos de cambio. Además, estos eventos de cambio se basan en Salesforce Platform Events, lo que facilita el trabajo dentro del ecosistema de Salesforce.
- Canales de eventos : los eventos de cambio se envían a canales de eventos que tienen una convención de nomenclatura como
data/ObjectNameChangeEvent
, dondeObjectName
es el nombre del objeto de Salesforce, comoAccount
oContact
. - Detalles del evento : cada evento de cambio contiene información sobre el cambio, como el tipo de cambio (crear, actualizar, eliminar, recuperar), el ID del registro, los nombres de los campos modificados y los nuevos valores de esos campos.
- Salesforce retiene los eventos de cambio durante 72 horas, lo que permite que los sistemas se pongan al día si se retrasan en el procesamiento de eventos.
Los administradores pueden habilitar la captura de datos modificados para objetos específicos en Salesforce a través del menú de configuración. Una vez habilitados, los cambios en esos objetos comenzarán a generar eventos de cambio.
Change Data Capture en Salesforce proporciona una manera poderosa de mantener los sistemas externos sincronizados con los datos de Salesforce sin la necesidad de una lógica de integración compleja o sondeos frecuentes. Es especialmente útil para análisis en tiempo real, sistemas de respaldo y otras aplicaciones que requieren datos actualizados de Salesforce.
Posible solución I: flujo activado por registro en el cliente potencial
Antes de profundizar en la solución funcional real, permítame guiarlo a través de algunas soluciones potenciales que pueden parecer las rutas más fáciles y rápidas a primera vista. Sin embargo, existen razones específicas por las que estas soluciones no serán viables.
Si tiene experiencia en la gestión de clientes potenciales y cadencias de participación de ventas, es posible que haya notado que Salesforce almacena ActionCadenceId (el ID de la cadencia asignada al cliente potencial) en el registro del cliente potencial. En particular, Salesforce establece ActionCadenceId en nulo cuando un cliente potencial se elimina/completa manualmente de la cadencia de participación de ventas.
Es posible que esté contemplando la idea de implementar un flujo posterior al guardado activado por registro (no conozco el flujo posterior al guardado, consulte este artículo) en el objeto principal y aplicando las siguientes condiciones:
- ActionCadenceId no es nulo {!$GlobalConstant.False}
- Con la condición "Solo si el registro que desencadenó la ejecución del flujo se actualiza para cumplir con los requisitos de la condición".
- Luego consulte el objeto ActionCadenceTracker para averiguar el estado y CompletionReason = ' ManuallyRemoved '
Sin embargo, encontrará un obstáculo al intentar guardar el flujo. Resultaría en un mensaje de error que indica:
Sí (resultado de la decisión): el campo $Record.ActionCadenceId contiene un valor derivado que no se admite. En un flujo programado o activado por registro, $Record no admite algunos campos estándar cuyos valores se derivan. Elimine el campo $Record.ActionCadenceId.
Ahora comprende por qué no podemos utilizar este enfoque para abordar el caso de uso empresarial mencionado anteriormente.
Nota : Los campos Cadencia y Cadencia asignado en registros de clientes potenciales, contactos y cuentas personales no se pueden utilizar como criterios de campo en reglas de flujo de trabajo, flujos y Generador de procesos.
Posible solución II: flujo activado por registro en ActionCadenceTracker
Inicialmente, esta solución puede parecer una opción más prometedora que la anterior, y quizás se pregunte por qué no se consideró antes. Desafortunadamente, Salesforce impone restricciones, lo que impide el uso de flujos activados por registros y activadores de Apex en este tipo de SObject en particular ( ActionCadenceTracker ).
Lamentablemente, esto marca el final de esta solución.
Posible solución III: flujo activado por programación en ActionCadenceTracker
La tercera opción es crear un flujo activado por programación para el objeto ActionCadenceTracker , lo cual ciertamente es factible. Sin embargo, es fundamental tener en cuenta que esta solución no es en tiempo real.
Puede configurar el flujo activado por programación para que se ejecute a intervalos , como cada minuto o cada hora, pero tiene sus limitaciones. Recomiendo encarecidamente considerar la escalabilidad al optar por esta solución.
Si bien este enfoque puede ser adecuado para ciertos escenarios, no sirve como una solución viable para el caso de uso empresarial específico mencionado, que requiere notificaciones en tiempo real.
La pregunta ahora es: ¿Cuál es la mejor solución para el caso de uso empresarial mencionado anteriormente? Empecemos.
Enfoque de campeón de automatización (Sí, quiero):
La mejor solución para el caso de uso empresarial determinado es utilizar Change Data Capture (CDC) en el objeto ActionCadenceTrackerChangeEvent . Si no está familiarizado con Change Data Capture (CDC), le recomiendo encarecidamente hacer una pausa aquí y completar este módulo de Trailhead.
Antes de continuar, debes familiarizarte con el objeto ActionCadenceTracker en Salesforce. Representa un objetivo de cadencia activa.
Se crea un registro ActionCadenceTracker cuando agrega un objetivo a una cadencia. Utilice ActionCadenceTracker para obtener información sobre un objetivo de cadencia de carrera, incluido su estado, paso actual, cliente potencial asignado y motivo de finalización.
Nombre del campo | Detalles |
Razón de finalización | El motivo por el que el objetivo completó la cadencia. Este campo contiene un valor si el estado del objetivo es Completo. Los valores posibles son:
|
Estado | El estado del rastreador de cadencia de acción actual. Los valores posibles son:
|
ID de destino | El ID del objetivo (Contacto, Cliente potencial) que está asignado a esta cadencia de acción. |
Antes de discutir la solución, permítanme mostrarles un diagrama del proceso a 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 tres pasos para resolver los requisitos comerciales de Benjamin utilizando Change Data Capture (CDC), un Apex Trigger y un flujo de inicio automático . Debemos:
- Habilite el objeto ActionCadenceTracker para notificaciones de cambios
- Flujo iniciado automáticamente
- Definir propiedades de flujo
- Cree una variable de colección de registros para almacenar clientes potenciales
- Agregue un elemento Loop para recuperar los registros de la variable de colección de registros
- Agregue un elemento de Asignación para asignar valores a una Variable de registro (Tarea)
- Agregue un elemento de Asignación para agregar la Variable de registro a una Variable de colección de registros .
- Agregue un elemento Crear registros para crear tareas
- Desencadenadores asincrónicos de Apex para eventos de cambio
Paso 1: habilite el objeto ActionCadenceTracker para notificaciones de cambios
- Haga clic en Configuración .
- En el cuadro Búsqueda rápida, escriba Cambiar captura de datos y seleccione Cambiar captura de datos .
- En Entidades disponibles, seleccione Rastreador de cadencia ( ActionCadenceTracker ) y haga clic en la flecha > .
- Haga clic en Guardar .
Paso 2.1: Definir las propiedades del 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 iniciado automáticamente (sin activación) opción.
- Haga clic en Crear .
Paso 2.2: Agregar una variable de recopilación de registros para almacenar clientes potenciales
- En Caja de herramientas , seleccione Administrador y luego haga clic en Nuevo recurso para almacenar los clientes potenciales.
- Introduzca la siguiente información:
- Tipo de recurso : variable
- Nombre de API : varR_Leads
- Tipo de datos : Registro
- Objeto : Plomo
- Marque Permitir múltiples valores (colección)
- Marque disponible para entrada
- Verificar disponible para salida
- Haga clic en Listo.
Paso 2.3: Agregar un elemento de bucle para recuperar los registros de la variable de colección de registros
- En Flow Designer, haga clic en el icono + y seleccione el elemento Bucle .
- Ingrese un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
- Para Variable de colección, seleccione {!varR_Leads} .
- Para especificar la dirección para iterar sobre la colección seleccione la opción Desde el primer elemento hasta el último elemento.
- Haga clic en Listo .
Paso 2.4: Agregar un elemento de asignación para asignar los valores a una variable de registro (tarea)
- Cree una tarea de tipo varR_Task de variable de registro para crear una tarea para el propietario del cliente potencial.
- En Flow Designer, debajo del nodo Para cada , haga clic en el icono + y seleccione el elemento Asignación .
- Ingrese un nombre en la etiqueta ; el nombre de API se completará automáticamente.
- Establecer valores de variables
- Fila 1 :
- Campo : Asunto
- Valor : Cliente potencial eliminado de la cadencia de participación en ventas
- Haga clic en Agregar tarea
- Fila 2 :
- Campo : Estado
- Valor : No iniciado
- Haga clic en Agregar tarea
- Fila 3 :
- Campo : Prioridad
- Valor : Alto
- Haga clic en Agregar tarea
- Fila 4 :
- Campo : Fecha de actividad
- Valor : {!$Flujo.FechaActual}
- Haga clic en Agregar tarea
- Fila 5 :
- Campo : WhoId
- Valor : {!Loop_Through_Leads.Id}
- Haga clic en Agregar tarea
- Fila 6 :
- Campo : ID de propietario
- Valor : {!Loop_Through_Leads.OwnerId}
- Fila 1 :
- Haga clic en Listo.
Paso 2.5: Agregar un elemento de asignación para agregar la variable de registro a la variable de colección de registros
- Cree una tarea de tipo varR_Tasks de recopilación de registros para almacenar la variable de registro (creada en el paso 2.4) para el proceso masivo.
- En Flow Designer, haga clic en el icono + y seleccione el elemento Asignación .
- Ingrese un nombre en la etiqueta ; el nombre de API se completará automáticamente.
- Establecer valores de variables
- Fila 1:
- Campo: {!varR_Tasks}
- Operador: Agregar
- Valor: {!varR_Task}
- Fila 1:
- Haga clic en Listo.
Paso 2.6: Agregar un elemento Crear registros para crear tareas
- En Flow Designer, debajo del nodo Después del último , haga clic en el icono + y seleccione el elemento Crear registros .
- Ingrese un nombre en la etiqueta ; el nombre de API se completará automáticamente.
- Para Cuántos registros crear, seleccione Múltiples.
- Colección de registros de mapas : {!varR_Tasks}
- Haga clic en la X en la parte superior para guardar los cambios.
Al final, Benjamin's Flow se verá como la siguiente captura de pantalla:
Una vez que todo se vea bien, realice los pasos a continuación:
- Haga clic en Guardar .
- Ingrese la etiqueta de flujo (CadenceTracker); el nombre de la API se completará automáticamente.
- Versión API para ejecutar el flujo : 59
- Etiqueta de la entrevista : CadenceTracker {!$Flow.CurrentDateTime}
- Haga clic en Guardar .
¡Casi llegamos! Una vez que todo se vea bien, haga clic en el botón Activar .
Paso 3: Activadores asincrónicos de Apex para eventos de cambio
Tiene la opción de recibir notificaciones de cambios en la plataforma Lightning suscribiéndose para cambiar eventos a través de activadores de Apex. Si bien los activadores de Apex para eventos de cambio comparten similitudes con los de los objetos estándar de Salesforce, también existen distinciones notables. Al igual que los activadores de Apex tradicionales para objetos de Salesforce, usted crea un activador de evento de cambio para el evento de cambio específico asociado con el objeto de Salesforce. Vale la pena señalar que en este contexto solo se admiten activadores posteriores a la inserción.
El desencadenador de evento de cambio se activa cuando se recibe uno o un lote de eventos de cambio. A diferencia de los activadores de objetos, los activadores de eventos de cambio se ejecutan de forma asincrónica una vez completada la transacción de la base de datos. La ejecución asincrónica hace que los desencadenadores de eventos de cambio sean ideales para procesar la lógica empresarial que consume muchos recursos y al mismo tiempo mantener la lógica basada en transacciones en el desencadenador de objetos. Al desacoplar el procesamiento de cambios, los desencadenantes de eventos de cambio pueden ayudar a reducir el tiempo de procesamiento de las transacciones.
Los desencadenantes de eventos de cambio tienen estas características.
- Se ejecutan bajo la entidad Proceso Automatizado. Como tal, los registros de depuración para el desencadenador son creados por la entidad de proceso automatizado y los campos del sistema, como CreadoById y OwnerId, hacen referencia al proceso automatizado.
- Están sujetos a los límites del gobernador síncrono de Apex.
- Tienen un tamaño de lote máximo de 2000 mensajes de eventos (la cantidad de elementos en Trigger.New).
- Cree un desencadenador de Apex en el objeto ActionCadenceTrackerChangeEvent .
desencadenar ActionCadenceTrackerAsyncTrigger en ActionCadenceTrackerChangeEvent (después de insertar) { ActionCadenceTrackerAsyncTriggerHandler.handleChangeEvent(Trigger.new); }
clase pública ActionCadenceTrackerAsyncTriggerHandler { handleChangeEvent vacío estático público (List<ActionCadenceTrackerChangeEvent> changeEvents) { Set<Id> actionCadenceTrackerIds = nuevo Set<Id>(); for(evento ActionCadenceTrackerChangeEvent: eventos de cambio) { encabezado EventBus.ChangeEventHeader = evento.ChangeEventHeader; if (header.changetype == 'ACTUALIZAR' && event.CompletionReason == 'Manualmente eliminado') { Lista<Id> recordIds = header.getRecordIds(); actionCadenceTrackerIds.addAll(recordIds); } } if(!actionCadenceTrackerIds.isEmpty()) { encontrarRelatedLeads(actionCadenceTrackerIds); } } findRelatedLeads vacío estático privado (Set<Id> actionCadenceTrackerIds) { Lista<Lead> AssociatedLeads = [Seleccione ID, OwnerId de plomo donde Id IN (SELECCIONAR targetId DESDE ActionCadenceTracker DÓNDE ID EN: actionCadenceTrackerIds AND Target.Type = 'Cliente')]; if(!asociadosLeads.isEmpty()) { runFlow (líderes asociados); } } runFlow vacío estático privado (List<Lead> leads) { Mapa<Cadena, Objeto> params = nuevo Mapa<Cadena, Objeto>(); params.put('varR_Leads', clientes potenciales); Flow.Interview.CadenceTracker myFlow = nuevo Flow.Interview.CadenceTracker(params); miFlow.start(); } }
Prueba de concepto
De ahora en adelante, si un usuario elimina un cliente potencial de la cadencia de participación de ventas, Change Data Capture (CDC) publicará un evento. Más adelante, un activador de Apex y un flujo crearán una tarea para el propietario principal.
- El primer paso es asignar la cadencia de participación de ventas a un cliente potencial.
- El siguiente paso es eliminar manualmente el cliente potencial de la cadencia de participación en ventas.
- Tarea creada por automatización.
Evaluación formativa:
¡Quiero saber de ti!
¿Qué es lo que aprendiste de esta publicación? ¿Cómo imagina aplicar este nuevo conocimiento en el mundo real? Siéntete libre de compartir en los comentarios a continuación.
Integración de API de zona horaria de Salesforce y Google: traducción de coordenadas a información de zona horaria
Última actualización el 29 de junio de 2023 por Rakesh Gupta
Gran idea o pregunta duradera:
- ¿Cómo puede aprovechar la API de zona horaria de Google para actualizar automáticamente la información de zona horaria de un cliente potencial en función de sus coordenadas geográficas?
Objetivos:
Después de leer este blog, podrá:
Jestilla Zetkin se desempeña actualmente como arquitecta de Salesforce en Gurukul On Cloud (GoC). El Director Comercial le ha confiado a Jestilla un desafío único. El objetivo es asegurarse de que, en el momento de la creación, los prospectos de Salesforce (creados a través de Web-to-lead) reciban los detalles exactos de la zona horaria, que se determinan en función de sus respectivas coordenadas geográficas.
- El caso de uso comercial requiere que usemos la API de zona horaria de Google para actualizar automáticamente cuatro campos específicos en los clientes potenciales:
- dstOffset (la compensación del horario de verano en segundos)
- rawOffset (el desplazamiento de la hora universal coordinada para la zona horaria de la ubicación dada)
- timeZoneId (una cadena que identifica de forma única la zona horaria)
- y timeZoneName (el nombre largo de la zona horaria)
- En caso de una respuesta fallida, instituya una acción de contingencia para crear una tarea para el propietario designado del cliente potencial.
¿Qué es la API de zona horaria de Google?
Hay muchas posibilidades de que su base de clientes esté repartida en varias zonas horarias. Este factor puede influir en gran medida en sus interacciones con ellos, especialmente al programar llamadas, reuniones o enviar mensajes automáticos. La plataforma de Salesforce ofrece un entorno altamente adaptable para almacenar y administrar datos de clientes, pero de forma predeterminada, no proporciona una forma de registrar automáticamente la zona horaria del cliente potencial en función de sus coordenadas geográficas.
La API de zona horaria de Google es un servicio ofrecido por Google como parte de su plataforma Google Maps. La API proporciona datos de zona horaria para cualquier ubicación en todo el mundo en función de las coordenadas de latitud y longitud. Este servicio puede ser particularmente útil para los desarrolladores que necesitan ajustar la comunicación de acuerdo con la ubicación geográfica de un cliente potencial o contacto o para empresas que operan en diferentes zonas horarias.
La API de zona horaria proporciona la siguiente información:
- El ID de la zona horaria , según lo define la base de datos de zonas horarias de la IANA (por ejemplo, America/New_York ).
- El nombre de la zona horaria (por ejemplo, hora de verano del este ).
- La diferencia horaria con respecto a la hora universal coordinada (UTC) sin tener en cuenta el horario de verano (rawOffset).
- El desfase horario debido al horario de verano (dstOffset).
Tenga en cuenta que la API de zona horaria de Google está sujeta a cargos, por lo que es importante comprender las implicaciones de costos antes de implementarla.
¿ Cómo funciona la API de zona horaria de Google?
La API de zona horaria de Google funciona tomando coordenadas de latitud y longitud y devolviendo datos de zona horaria en formato JSON. Aquí hay un ejemplo básico de cómo usarlo.
La siguiente solicitud HTTP GET obtiene información de zona horaria para una ubicación en la latitud 40.712776 y longitud -74.005974 (ciudad de Nueva York), y asume que está realizando la solicitud en una determinada marca de tiempo (marca de tiempo UNIX).
https://maps.googleapis.com/maps/api/timezone/json?location=40.712776,-74.005974×tamp=1458000000&key=YOUR_API_KEY
En la URL de solicitud anterior, reemplace YOUR_API_KEY con su clave API real.
Aquí hay una respuesta de muestra en formato JSON que la API podría devolver:
{ "dstOffset": 3600, "compensación sin procesar": -18000, "estado": "OK", "timeZoneId": "América/Nueva_York", "timeZoneName" : "Hora de verano del Este" }
La respuesta incluye la siguiente información:
- dstOffset : La compensación del horario de verano en segundos. Será cero si la zona horaria no está en el horario de verano durante la marca de tiempo especificada.
- rawOffset : el desplazamiento de UTC (sin contar el horario de verano) en segundos.
- estado : una cadena que indica el estado de la solicitud. “OK” significa que la solicitud fue exitosa.
- timeZoneId : una cadena que contiene el ID "tz" de la zona horaria (por ejemplo, "América/Nueva_York").
- timeZoneName : una cadena que contiene el nombre de forma larga de la zona horaria (por ejemplo, "hora de verano del este").
Recuerde, en la URL de solicitud, se requiere el parámetro de marca de tiempo y el parámetro de ubicación espera coordenadas de latitud y longitud.
- Marca de tiempo : el tiempo deseado en segundos desde la medianoche del 1 de enero de 1970 UTC. La API de zona horaria utiliza la marca de tiempo para determinar si se debe aplicar o no el horario de verano, según la zona horaria de la ubicación.
- Ubicación : una tupla de latitud, longitud separada por comas, ubicación = 40.712776, -74.005974, que representa la ubicación para buscar.
Además, no olvide incluir su clave API.
Beneficios de usar la API de zona horaria de Google
La API de zona horaria de Google ofrece una serie de beneficios significativos, especialmente para desarrolladores y empresas que necesitan operar en diferentes zonas horarias. Estos son algunos de los beneficios clave:
- Precisión : la API de zona horaria de Google proporciona datos de zona horaria precisos para cualquier ubicación en todo el mundo. Tiene en cuenta tanto la zona horaria 'sin procesar' como el horario de verano, lo que garantiza que siempre tenga la hora local correcta.
- Facilidad de uso : la API es fácil de usar y solo requiere la latitud y la longitud como entradas. Devuelve datos en un formato JSON estructurado, que es fácil de analizar y usar en varias aplicaciones.
- Cobertura global : la API proporciona datos de zona horaria para ubicaciones en todo el mundo, lo que la hace útil para empresas globales y aplicaciones con bases de usuarios internacionales.
- Confiabilidad : como servicio proporcionado por Google, es altamente confiable, lo que garantiza que tenga acceso constante a los datos de la zona horaria cuando los necesite.
- Integración : se puede integrar en una variedad de aplicaciones y plataformas, incluidas aplicaciones móviles, servicios web y plataformas de CRM como Salesforce. Esto permite funcionalidades como la programación de comunicaciones en diferentes franjas horarias, etc.
- Información actualizada : Google actualiza continuamente sus bases de datos, lo que garantiza que los datos devueltos por la API de zona horaria, como los cambios de horario de verano, estén siempre actualizados.
Al aprovechar estos beneficios, las empresas pueden mejorar la experiencia del cliente, aumentar la eficiencia operativa y garantizar un registro de datos preciso, entre otras ventajas.
Antes de comenzar a usar la API de zona horaria, necesita un proyecto con una cuenta de facturación y la API de zona horaria habilitada. Aquí hay una guía paso a paso para configurar su proyecto de Google Cloud y habilitar la API de zona horaria:
Paso 1: crea o selecciona tu proyecto
- Navegue a Google Cloud Console .
- Si ha creado un proyecto anteriormente, puede seleccionarlo de la lista desplegable en la parte superior. De lo contrario, haga clic en Nuevo proyecto en la parte superior derecha.
- Asigne un nombre a su proyecto y, opcionalmente, también puede editar el ID del proyecto.
- Haga clic en Crear para crear el proyecto.
Paso 2: configurar una cuenta de facturación
Debe vincular una cuenta de facturación a su proyecto para usar la API de zona horaria de Google. Así es cómo:
- En Google Cloud Console, abra el menú del lado izquierdo de la consola y haga clic en Facturación .
- Si tiene una o más cuentas de facturación, elija una cuenta y asóciela con su proyecto. De lo contrario, haga clic en Crear cuenta , complete el formulario para crear una nueva cuenta de facturación y luego asóciela con su proyecto.
Paso 3: habilite la API de zona horaria
Una vez que haya configurado su proyecto y su cuenta de facturación, puede habilitar la API de zona horaria.
- En Google Cloud Console, abra el menú del lado izquierdo de la consola y vaya a API y servicios | biblioteca
- En la biblioteca de API, busque API de zona horaria y selecciónela.
- En la página de la API de zona horaria, haga clic en Habilitar .
Paso 4: Genere su clave API
Finalmente, necesita una clave de API para autenticar sus solicitudes en la API de zona horaria.
- En Google Cloud Console, abra el menú del lado izquierdo de la consola y vaya a API y servicios | Cartas credenciales.
- Haga clic en el botón + CREAR CREDENCIALES en la parte superior y seleccione Clave API .
- Su nueva clave de API se creará y se mostrará. Cópielo y guárdelo de forma segura. Necesitará esta clave para realizar solicitudes a la API de zona horaria.
Ahora, su proyecto de Google Cloud está todo configurado y puede comenzar a usar la API de zona horaria de Google.
👉 Si bien la API de zona horaria es compatible con OAuth 2.0 y la cuenta de servicio para la autenticación, esta guía se enfoca en el método de clave de API más simple por razones de brevedad. Si necesita un método de autenticación más seguro o complejo, consulte la documentación de autenticación oficial de Google.
Enfoque de Campeón de Automatización (I-do):
Si bien esto se puede resolver utilizando varias herramientas de automatización como Apex Trigger y otras, utilizaremos Salesforce Flow y la función de flujo HTTP Callout (GET) recientemente introducida .
HTTP Callout extrae o envía datos entre la base de datos de Salesforce y un sistema externo a través de Flow Builder sin usar código. Puede configurar integraciones directas según sea necesario sin tener que trabajar con un desarrollador o llamar a una herramienta de middleware, como Mulesoft. Después de configurar la acción de llamada HTTP en un flujo, Flow Builder genera automáticamente un registro de servicio externo , una acción invocable y una clase de Apex que puede usar para crear un recurso definido por Apex para flujos. A continuación, puede utilizar la salida de datos de la solicitud de la API como entrada en Flow Builder y en Salesforce.
Puede usar HTTP Callout para conectar un flujo a una variedad de API.
- Obtener información de direcciones usando una API de mapa
- Obtén las condiciones meteorológicas con una API de servicios meteorológicos
- Genere el código de barras con una API de servicio de código de barras
- Obtenga información de autorización de pago con una API de procesamiento de pagos
- y mucho más
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 3 pasos para resolver el requisito empresarial de Jestilla mediante Record-Triggered After-Save Flow . Debemos:
- Cree campos personalizados en el cliente potencial para almacenar la respuesta
- Crear una credencial con nombre
- Flujo de fuerza de ventas
- Definir propiedades de flujo para el flujo desencadenado por registro
- Agregue una fórmula para calcular la marca de tiempo
- Configurar una llamada HTTP GET para la API de zona horaria
- Agregue un elemento de decisión para verificar el código de respuesta
- Agregue un elemento Actualizar registros para actualizar el prospecto
- Agregue un elemento Crear registros para crear una tarea para que el propietario del cliente potencial maneje la respuesta de error
Paso 1: Cree campos personalizados en el objeto principal para almacenar la respuesta
En este paso, hemos establecido campos personalizados dentro del objeto principal. Estos servirán como repositorios para los datos de respuesta de la API de zona horaria de Google.
Etiqueta de campo | Nombre de API de campo | Tipo de datos |
dstOffset | dstOffset __c | Número (18,0) |
rawOffset | rawOffset__c | Número (18,0) |
Posición actual | Posición_actual__c | Geolocalización |
Identificación de zona horaria | Time_Zone_Id__c | Texto (255) |
Nombre de zona horaria |
Nombre_de_la_zona_horaria__c | Texto (255) |
Paso 2: crear una credencial con nombre
- Haga clic en Configuración .
- En el cuadro Búsqueda rápida, ingrese Credenciales con nombre y luego seleccione Credenciales con nombre .
- Haga clic en Nuevo legado .
- Rellene la página con la URL y los parámetros de autenticación del extremo de la llamada.
- Haga clic en Guardar .
Paso 3.1: Definir propiedades de flujo
- Haga clic en Configuración .
- En el cuadro Búsqueda rápida, escriba Flujos .
- Seleccione Flujos , luego haga clic en Nuevo flujo .
- Seleccione la opción Flujo activado por registro , haga clic en Crear
- Objeto: Plomo
- Activar el flujo cuando: se crea un registro
- Establecer condiciones de entrada: se cumplen todas las condiciones (Y)
- Fila 1:
- Campo : Posición_Actual__Latitud__s
- Operador : es nulo
- Valor : {!$ConstanteGlobal.Falso}
- Haga clic en + Agregar condición
- Fila 2:
- Campo : Posición_Actual__Longitud__s
- Operador : es nulo
- Valor : {!$ConstanteGlobal.Falso}
- Optimizar el flujo para : acción y registros relacionados
- Elija la opción para incluir una ruta de ejecución asíncrona para acceder a un sistema externo después de que la transacción original para el registro de activación se confirme con éxito .
- Haga clic en Listo.
Paso 3.2: fórmula para calcular la marca de tiempo
- En Caja de herramientas , seleccione Administrador y luego haga clic en Nuevo recurso para calcular los segundos desde la época de Unix (1 de enero de 1970, 00:00:00).
- Ingrese la siguiente información :
- Tipo de recurso : Fórmula
- Nombre de API : forN_Timestamp
- Tipo de datos : Número
- Lugares decimales : 0
- Fórmula : RONDA((AHORA() – FECHAHORAVALUE(“1970-01-01 00:00:00”)) * 24 * 60 * 60, 0)
- Haga clic en Listo.
Paso 3.3: configurar una acción de llamada HTTP GET
HTTP Callout lo guía a través de la introducción de los detalles sobre el servicio HTTP basado en web o el punto final de la API REST al que se está conectando. Después de completar la configuración, invoca la acción en un flujo.
- En el nodo Ejecutar asincrónicamente , seleccione Acción .
- Haga clic en + Crear llamada HTTP .
- Configure el servicio externo que conecta Salesforce con la API basada en HTTP.
- Introduzca un Nombre para el servicio externo.
- Seleccione la credencial con nombre que creó en el paso 2 .
- Haga clic en Siguiente .
- El siguiente paso es configurar la acción invocable que puede usar en Flow Builder o en Salesforce.
- Para Etiqueta , ingrese la acción que realiza la llamada.
- Método : OBTENER
- Agregue el extremo de la URL para la solicitud.
- Ruta URL : /maps/api/timezone/json
- Agregue claves de parámetros de consulta si la API a la que está llamando las tiene. Cuando usa esta acción en un flujo, ingresa valores para las claves definidas.
- Haga clic en Agregar clave
- Clave : ubicación
- Tipo de datos : cadena
- Requerido : Verdadero
- Haga clic en Agregar clave
- Clave : marca de tiempo
- Tipo de datos : entero
- Requerido : Verdadero
- Clave : marca de tiempo
- Haga clic en Agregar clave
- Clave: clave
- Tipo de datos : cadena
- Requerido : Verdadero
- Haga clic en Agregar clave
- Proporcione un cuerpo de respuesta de API de muestra. Salesforce genera una estructura de datos a partir de la respuesta de muestra.
- Vaya a la sección Proporcione una respuesta de muestra .
- Haga clic en Nuevo .
- Pegue una respuesta JSON de muestra .
{ "timeZoneName": "cadena de muestra", "compensación sin procesar": 1, "timeZoneId": "cadena de muestra", "errorMessage": "cadena de muestra", "dstOffset": 1, "estado": "cadena de muestra" }
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:
- Descubra todos los clientes potenciales sin correo electrónico
- 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:
- Cree una clase de Apex y una clase de prueba para eliminar registros de forma permanente de la Papelera de reciclaje.
- Flujo de fuerza de ventas
- Definir propiedades de flujo para el flujo de pantalla
- Agregue un elemento Obtener registros para encontrar todos los clientes potenciales sin dirección de correo electrónico
- Agregue un elemento de decisión para verificar los clientes potenciales encontrados o no (del paso 2)
- Agregue el elemento Eliminar registros para eliminar clientes potenciales
- 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
- 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 de pantalla opción y haga clic en Crear y configurar el flujo.
- 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.
- En Flow Designer, haga clic en el icono + y seleccione el elemento Obtener registros .
- Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
- Seleccione el objeto Prospecto de la lista desplegable.
- Seleccione Se cumplen todas las condiciones (Y) .
- Establecer condiciones de filtro
- Fila 1:
- Campo : Correo electrónico
- Operador : Igual
- Valor : {!$ConstanteGlobal.EmptyString}
- Fila 1:
- Cuántos registros almacenar:
- Seleccionar todos los registros
- Cómo almacenar datos de registro:
- 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.
- En Flow Designer, haga clic en el icono + y seleccione el elemento Decisión .
- Introduzca 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 condición para ejecutar el resultado : se cumplen todas las condiciones (Y)
- Fila 1:
- Recurso: {!Get_Leads}
- Operador: es nulo
- Valor: {!$ConstanteGlobal.Falso}
- Haga clic en Listo .
- Fila 1:
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 .
- En Flow Designer, debajo del nodo Sí , haga clic en el icono + y seleccione el elemento Eliminar registros .
- Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completará automáticamente.
- 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 .
- Selecciona el {!Get_Leads} de la lista desplegable.
- Haga clic en Listo.
Paso 2.5: Adición de una acción para llamar a una clase de Apex invocable
- En Flow Designer, haga clic en el icono + y seleccione el elemento Acción .
- Seleccione la clase de Apex invocable EmptyRecycleBin .
- Ingrese un nombre en el campo Etiqueta : el nombre de la API se completará automáticamente.
- Establecer valores de entrada:
- Objeto para “listofSObjects” (Entrada) : Lead
- Objeto para "obj" (Entrada) : Plomo
- Objeto para “listofSObjects” (Entrada) : Lead
- Almacenar valores de entrada
- listofSObjects : {!Get_Leads}
- listofSObjects : {!Get_Leads}
- 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
- Creé 201 clientes potenciales sin una dirección de correo electrónico para probar el flujo anterior.
- Ahora ejecute el flujo de pantalla y espere a que se complete el flujo.
- 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 leyendoCómo aprobar el examen de certificación de consultor Pardot de Salesforce
Última actualización el 8 de octubre de 2022 por Rakesh Gupta Han pasado seis años desde que aprobé el examen de Consultor Pardot certificado de Salesforce. En los últimos meses, muchas personas se pusieron en contacto conmigo para pedirme orientación y un camino para convertirme en un consultor certificado de Pardot (Marketing Cloud Account Engagement). Que
La publicación Cómo aprobar el examen de certificación de consultor Pardot de Salesforce apareció primero en Automation Champion .
Seguir leyendoLos nombres de host de su organización de Salesforce están cambiando. ¿Estás listo? ☁️
El conjunto de dominios utilizados por Salesforce cambiará en Winter '23 para organizaciones sandbox y non-prod (a partir de agosto de 2022), y en Spring '23 para todas las demás organizaciones (a partir de febrero de 2023). Este cambio puede afectar su código, configuraciones, integraciones de API, SSO, documentación y marcadores. En este blog, discutiremos cómo identificar, evaluar y resolver […]
La publicación Los nombres de host de su organización de Salesforce están cambiando. ¿Estás listo? apareció por primera vez en el blog de desarrolladores de Salesforce .
Seguir leyendoCapturar origen de clientes potenciales en Pardot
Última actualización el 7 de julio de 2022 por Rakesh Gupta La fuente de oportunidades de venta es un dato vital que necesita para evaluar el valor de sus campañas de marketing y el proceso de generación de oportunidades de venta. Comprender sus fuentes de clientes potenciales y su seguimiento es esencial para expandir su negocio y aprovechar al máximo
La publicación Capture Lead Source en Pardot apareció primero en Automation Champion .
Seguir leyendo¿Quiere ser más eficiente y productivo? Automatice más de su negocio
Muchas personas pierden mucho tiempo haciendo cosas que no agregan valor a sus trabajos o al negocio. Te has sumergido en la automatización de algunos de ellos. Es hora de sumergirse y ver qué es posible.
Seguir leyendo25 mejores prácticas de comercio electrónico para llevar su tienda en línea al siguiente nivel
Si tiene un negocio de comercio electrónico, concéntrese en estas prácticas recomendadas para facilitar el crecimiento.
La publicación 25 mejores prácticas de comercio electrónico para llevar su tienda en línea al siguiente nivel apareció primero en Groove Blog.
Seguir leyendo¿Cómo ocultar el botón Nuevo estándar de la vista de lista?
Última actualización el 27 de febrero de 2022 por Rakesh Gupta Gran idea o pregunta duradera: ¿Cómo ocultar el botón Nuevo estándar de la vista de lista? Objetivos: Después de leer este blog, podrá: Quitar el nuevo botón estándar de las vistas de lista Agregar o quitar un botón estándar de la lista
The post ¿Cómo ocultar el botón Nuevo estándar de la vista de lista? apareció por primera vez en Automation Champion .
Seguir leyendoAsigne 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 leyendoGuía para configurar equipos de atención al cliente de comercio electrónico
¿Configurar un equipo de atención al cliente de comercio electrónico? Lo ayudaremos a estructurarlo para el éxito, la retención y la eficiencia.
La publicación Guía para configurar equipos de atención al cliente de comercio electrónico apareció primero en Groove Blog.
Seguir leyendoConceptos básicos de capacitación en empatía, programas, beneficios y más
Comprenda el papel que juega la empatía en el lugar de trabajo y cómo nutrirla entre su equipo.
La publicación Conceptos básicos, programas, beneficios y más sobre capacitación en empatía apareció por primera vez en el Blog de Groove.
Seguir leyendoIntroducción a Salesforce Flow – Parte 79 (Convenciones de nomenclatura de Salesforce Flow)
Última actualización el 9 de noviembre de 2021 por Rakesh Gupta Como programador declarativo, siempre desea crear flujos limpios donde los nombres deben ser apropiados para que a cualquier otro programador le resulte más fácil leer el flujo y comprenderlo. Ahora, esto puede parecerle insignificante, pero piense
La publicación Getting Started with Salesforce Flow – Part 79 (Convenciones de nomenclatura de Salesforce Flow) apareció primero en Automation Champion .
Seguir leyendoIntroducción a Salesforce Flow – Parte 77 (Ejecución de reglas de asignación de clientes potenciales desde Salesforce Flow)
Última actualización el 1 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 49 (Ejecución de reglas de asignación de clientes potenciales desde Process Builder). Gran idea o pregunta duradera: ¿Cómo se ejecuta el
La publicación Getting Started with Salesforce Flow – Part 77 (Ejecución de reglas de asignación de clientes potenciales desde Salesforce Flow) apareció primero en Automation Champion .
Seguir leyendoOportunidad en Salesforce
Hola amigos: En este artículo, cubriremos el objeto Oportunidad en Salesforce. Tema cubierto: ¿Qué es oportunidad? Etapas de oportunidad Vs oportunidad? Proceso de ventas Configurar la ruta de ventas en Salesforce … Leer más »
Seguir leyendoGestión de clientes potenciales en Salesforce
¿Qué es el plomo? Los clientes potenciales son clientes no calificados o se puede decir que es un cliente potencial. Puede ser un individuo o una empresa que muestra interés en los productos de la empresa …. Leer más »
Seguir leyendo5 formas en que las pequeñas empresas pueden navegar la inestabilidad de la cadena de suministro
Dirigir una pequeña o mediana empresa es, en partes iguales, planificar, mantenerse ágil y estar listo para girar cuando los planes salen mal. A continuación, le mostramos cómo prepararse para una cadena de suministro poco confiable.
Seguir leyendoIntroducción a Salesforce Flow – Parte 33 (Valor anterior de un registro en flujos activados por registros)
Última actualización el 19 de diciembre de 2020 por Rakesh Gupta Para comprender cómo resolver el mismo caso de uso empresarial utilizando Process Builder. Consulte este artículo Introducción a Process Builder – Parte 53 (Seguimiento del historial de campo para listas de selección de selección múltiple). Gran idea o… Continuar leyendo
La publicación Getting Started with Salesforce Flow – Part 33 (Valor anterior de un registro en flujos activados por registros) apareció primero en Automation Champion .
Seguir leyendo