Skip to content

Etiqueta: Screen Flow

Enviar, registrar, repetir: registro de alertas de correo electr贸nico como actividades

Enviar, registrar, repetir: registro de alertas de correo electr贸nico como actividades

脷ltima actualizaci贸n el 24 de octubre de 2023 por Rakesh Gupta Big Idea or Enduring Question: 驴C贸mo se registran los correos electr贸nicos enviados con la acci贸n ‘enviar correo electr贸nico’? Objetivos: Despu茅s de leer este blog, ser谩s capaz de: Utilizar el flujo activado por registro para enviar una alerta por correo electr贸nico. Utilizar la acci贸n de flujo 芦Enviar correo electr贸nico禄. Utilizar

The post Enviar, registrar, repetir: registro de alertas de correo electr贸nico como actividades appeared first on Campe贸n de la Automatizaci贸n.

Las alertas de correo electr贸nico se env铆an por correo electr贸nico

Seguir leyendo

Incrustar flujos de pantalla en el componente web Lightning

Incrustar flujos de pantalla en el componente web Lightning

脷ltima actualizaci贸n el 19 de julio de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • 驴C贸mo incrusta un flujo de pantalla dentro de un componente web Lightning?

Objetivos:

Despu茅s de leer este blog, podr谩:

  • Incruste el flujo de pantalla dentro de un componente web Lightning
  • Aplicar representaci贸n condicional en el componente web Lightning
  • Use uiRecordApi para obtener el valor del campo del registro sin usar la clase de Apex
  • y mucho m谩s

En el pasado, escrib铆 algunos art铆culos sobre Lightning Web Component . 驴Por qu茅 no echarles un vistazo mientras est谩s en ello?

  1. Pasar datos del componente web Lightning al flujo de pantalla
  2. Uso del componente web Lightning para mostrar un banner de alerta

Janel Parrish trabaja como desarrollador junior en Gurukul on Cloud (GoC). Se le ha encomendado un requisito comercial para desarrollar un componente LWC con las siguientes funcionalidades:

  1. Deber铆a mostrar un flujo de pantalla llamado 'parterFlow' cuando el tipo de cuenta es 'Socio tecnol贸gico'.
  2. Deber铆a presentar un flujo de pantalla llamado 'customerFlow' cuando el tipo de cuenta es 'Cliente – Directo'.
  3. El componente LWC debe dise帽arse con la capacidad de incorporarse en la p谩gina de registro de rayos de la cuenta.

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

Utilizaremos el componente lightning-flow para incrustar un flujo de pantalla en el componente lightning web. Para crear un flujo en el componente Lightning Web, establezca el atributo flowApiName del componente Lightning-Flow en el nombre de flujo que desea usar. El componente incluye botones de navegaci贸n (Atr谩s, Siguiente, Pausa y Finalizar) para que los usuarios naveguen dentro del flujo.

Tambi茅n usaremos un adaptador de cable uiRecordApi que nos permite interactuar con registros de Salesforce desde los componentes del componente web lightning sin escribir c贸digo Apex. Esta API le permite realizar operaciones como recuperar los datos de un registro o los detalles del dise帽o, crear, eliminar o actualizar un registro, etc. Estos son algunos de los m茅todos clave proporcionados por uiRecordApi :

  1. getRecord : este m茅todo le permite obtener datos de registro.
  2. getRecordCreateDefaults : este m茅todo proporciona los valores predeterminados que utiliza Salesforce al crear un nuevo registro.
  3. getRecordUi : obtiene los detalles de dise帽o de un registro, como qu茅 campos se muestran, c贸mo se muestran, etc.
  4. createRecord : este m茅todo le permite crear un nuevo registro.
  5. deleteRecord 鈥 Le permite eliminar un registro.
  6. updateRecord : te permite actualizar un registro existente.

En el archivo de configuraci贸n XML, usaremos lightning__RecordPage como destino para permitir que el componente web de iluminaci贸n se use en una p谩gina de registro en Lightning App Builder.

Pr谩ctica guiada (nosotros hacemos):

Hay 3 pasos para resolver el requisito comercial de Janel utilizando Lightning Web Component y Screen Flow . Debemos:

  1. Cree un ScreenFlow (customerFlow) para manejar la solicitud del cliente
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue una variable de texto para almacenar el nombre de la cuenta
    3. Agregue una pantalla para mostrar el nombre de la cuenta desde una variable de texto
  2. Cree un ScreenFlow (partnerFlow) para manejar la solicitud del cliente
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue una variable de texto para almacenar el nombre de la cuenta
    3. Agregue una pantalla para mostrar el nombre de la cuenta desde una variable de texto
  3. Cree un componente web rel谩mpago para mostrar los diferentes flujos de pantalla seg煤n el tipo de cuenta

Paso 1.1: Definir propiedades de flujo (customerFlow)

  1. Haga clic en Configuraci贸n .
  2. En el cuadro B煤squeda r谩pida, escriba Flujos .
  3. Seleccione Flujos , luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   y haga clic en Crear y configurar el flujo.
  5. Se abrir谩 el dise帽ador de flujo para usted.

Paso 1.2: agregue una variable de texto al nombre de la cuenta de la tienda

  1. En Caja de herramientas , seleccione Administrador y, a continuaci贸n, haga clic en Nuevo recurso para almacenar el nombre de la cuenta.
  2. Ingrese la siguiente informaci贸n :
    1. Tipo de recurso : Variable
    2. Nombre de API : nombre de cuenta
    3. Tipo de datos : Texto
    4. Valor predeterminado : {!$GlobalConstant.EmptyString}
    5. Comprobar disponible para entrada
    6. Comprobar disponible para la salida
  3. Haga clic en Listo.

Paso 1.3: agregue una pantalla para mostrar el nombre de la cuenta desde la variable de texto

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Pantalla .
  2. Ingrese la siguiente informaci贸n :
    1. Ingrese la etiqueta, el nombre de la API se completar谩 autom谩ticamente.
  3. Haga clic en Listo.

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

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completar谩 autom谩ticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versi贸n de API para ejecutar el flujo : 58
  5. Etiqueta de entrevista : customerFlow {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

Paso 2.1: Definir propiedades de flujo (partnerFlow)

  1. Haga clic en Configuraci贸n .
  2. En el cuadro B煤squeda r谩pida, escriba Flujos .
  3. Seleccione Flujos , luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   y haga clic en Crear y configurar el flujo.
  5. Se abrir谩 el dise帽ador de flujo para usted.

Paso 2.2: agregue una variable de texto al nombre de la cuenta de la tienda

  1. En Caja de herramientas , seleccione Administrador y, a continuaci贸n, haga clic en Nuevo recurso para almacenar el nombre de la cuenta.
  2. Ingrese la siguiente informaci贸n :
    1. Tipo de recurso : Variable
    2. Nombre de API : nombre de cuenta
    3. Tipo de datos : Texto
    4. Valor predeterminado : {!$GlobalConstant.EmptyString}
    5. Comprobar disponible para entrada
    6. Comprobar disponible para la salida
  3. Haga clic en Listo.

Paso 2.3: agregue una pantalla para mostrar el nombre de la cuenta desde la variable de texto

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Pantalla .
  2. Ingrese la siguiente informaci贸n :
    1. Ingrese la etiqueta, el nombre de la API se completar谩 autom谩ticamente.
  3. Haga clic en Listo.

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

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completar谩 autom谩ticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versi贸n de API para ejecutar el flujo : 58
  5. Etiqueta de entrevista : flujo de socio { !$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

Paso 3: cree un componente web Lightning para mostrar los diferentes flujos de pantalla seg煤n el tipo de cuenta

Debajo de la plantilla de componente web lightning, se muestra una tarjeta Lightning titulada Iniciar pedido . Dependiendo de si la propiedad isPartner o isCustomer es verdadera, se iniciar谩 y mostrar谩 el Lightning Flow correspondiente ("rakeshistomMVP__partnerFlow" o "rakeshistomMVP__customerFlow").

embedFlowToLWC.html

Utilizaremos el componente lightning-flow para incrustar un flujo de pantalla en el componente lightning web. Desglosemos el c贸digo:

  • En LWC, el archivo HTML de cada componente debe envolverse con una etiqueta <plantilla> .
  • <template if:true={isPartner}> y <template if:true={isCustomer}> : estas son plantillas condicionales que muestran contenido en funci贸n de la veracidad de las propiedades isPartner e isCustomer , respectivamente. El contenido dentro de estas plantillas solo se representar谩 si la condici贸n correspondiente es verdadera.

<plantilla> <div class="slds-m-alrededor_medio"> <lightning-card title="Iniciar pedido" icon-name="est谩ndar:pedidos"> <div class="slds-m-alrededor_medio"> <template if:true={esSocio}> <lightning-flow onstatuschange={handleStatusChange} flow-api-name="rakeshistomMVP__partnerFlow" flow-input-variables={inputVariables}></lightning-flow> </plantilla> <template if:true={esCliente}> <lightning-flow onstatuschange={handleStatusChange} flow-api-name="rakeshistomMVP__customerFlow" flow-input-variables={inputVariables}></lightning-flow> </plantilla> </div> </tarjeta-rel谩mpago> </div>
</plantilla>
embedFlowToLWC.js

Este c贸digo JavaScript de muestra usa el decorador @api para crear propiedades p煤blicas. Por ejemplo, recordId es una propiedad reactiva p煤blica que contiene el ID de la p谩gina de registro. Mientras que el decorador @wire lee los datos de Salesforce. getRecord es una funci贸n del m贸dulo lightning/uiRecordApi que recupera un registro. accountType y accountName se importan del esquema de Salesforce.

  • Las declaraciones de importaci贸n se utilizan para importar los m贸dulos y las dependencias necesarios. LightningElement es el componente b谩sico para crear componentes web Lightning.
  • account({ error, data }) es una funci贸n que maneja la respuesta de la llamada getRecord . Si hay un error, asigna el error a this.error . Si se devuelven datos, establece this.accountName en el nombre de la cuenta y establece isPartner o isCustomer en verdadero seg煤n el tipo de cuenta.
  • get inputVariables() es un m茅todo captador que devuelve una matriz de objetos, que representa variables de entrada para un flujo. En este caso, devuelve el nombre de la cuenta.

import { LightningElement, api, wire } de 'lwc';
importar { getRecord } desde 'lightning/uiRecordApi';
importar tipo de cuenta desde '@salesforce/schema/Account.Type';
importar nombre de cuenta desde '@salesforce/schema/Account.Name'; exportar la clase predeterminada FlowLauncher extiende LightningElement { @api recordId; nombre de la cuenta; esSocio = falso; esCliente = falso; @wire(getRecord, { recordId: '$recordId', campos: [nombre de cuenta, tipo de cuenta] }) cuenta ({ error, datos }) { si (error) { this.error = error; } m谩s si (datos) { this.accountName = data.fields.Name.value; if(data.fields.Type.value === 'Socio tecnol贸gico') { this.isPartner = verdadero; this.isCustomer = false; } else if(data.fields.Type.value === 'Cliente - Directo') { this.isCustomer = true; this.isPartner = false; } } } obtener variables de entrada () { devolver [ { nombre: 'nombre de cuenta', tipo: 'Cadena', valor: este.nombreDeCuenta } ]; } handleStatusChange(evento) { if(evento.detalle.estado === 'FINALIZADO') { //Acci贸n despu茅s de que un flujo haya terminado } }
}
embedFlowToLWC.js-meta.xml

El elemento isExposed se establece en verdadero, lo que hace que el componente est茅 disponible para su uso en herramientas como Lightning App Builder o Flow Builder.

El elemento de objetivos se usa para especificar d贸nde se puede usar su componente. En este caso, la etiqueta lightning__RecordPage significa que este componente est谩 dise帽ado para usarse en una p谩gina de registro en Lightning App Builder.



<?versi贸n xml=鈥1.0鈥 codificaci贸n=鈥漊TF-8鈥?>
<LightningComponentBundle xmlns=鈥漢ttp://soap.sforce.com/2006/04/metadata鈥>
<apiVersion>58.0</apiVersion>
<isExposed>verdadero</isExposed>
<target>rel谩mpago__RecordPage</target>
</objetivos>
</LightningComponentBundle>

Prueba de concepto

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

Pasar datos del componente web Lightning al flujo de pantalla

Pasar datos del componente web Lightning al flujo de pantalla

脷ltima actualizaci贸n el 17 de julio de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • 驴C贸mo pasa datos del componente web lightning al flujo de pantalla principal?

Objetivos:

Despu茅s de leer este blog, podr谩:

  • Incruste un componente web rel谩mpago dentro del flujo de pantalla
  • Pase los datos del componente web lightning a una variable de flujo
  • Interactuar con el componente web lightning y los elementos de flujo de pantalla en la misma pantalla
  • y mucho m谩s

En el pasado, escrib铆 algunos art铆culos sobre Lightning Web Component . 驴Por qu茅 no echarles un vistazo mientras est谩s en ello?

  1. Uso del componente web Lightning para mostrar un banner de alerta
  2. Obtenga el Id. de registro y el nombre de la API del objeto en el componente web Lightning

Janel Parrish trabaja como desarrollador junior en Gurukul on Cloud (GoC). Janel tiene un requisito comercial para hacer lo siguiente:

  1. Desarrollar un componente LWC capaz de recibir entradas de latitud y longitud.
  2. Pase los valores introducidos a los componentes de flujo de pantalla correspondientes.

Construir pantallas con componentes reactivos

Con la funci贸n Crear pantallas con componentes interactivos (actualmente en versi贸n beta), ahora puede habilitar la interacci贸n directa entre un componente web Lightning y otros elementos de flujo en la misma pantalla.

Anteriormente, no exist铆a una disposici贸n directa para la interacci贸n din谩mica entre un componente web Lightning y los elementos de flujo. Como resultado, los usuarios ten铆an que navegar a la siguiente pantalla para ver los datos pasados por el componente web Lightning en Screen Flow.

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

Al crear el componente web Lightning, tambi茅n utilizaremos el evento FlowAttributeChangeEvent . Esto permitir谩 que un componente controle la navegaci贸n del flujo y notifique al flujo los cambios en los valores de los atributos.

Los eventos FlowAttributeChangeEvent solo se admiten en componentes donde el destino es lightning__FlowScreen .

Pr谩ctica guiada (nosotros hacemos):

Hay 2 pasos para resolver el requisito empresarial de Janel utilizando Lightning Web Component y Screen Flow . Debemos:

  1. Cree un componente web Lightning de ubicaci贸n de entrada para Screen Flow
  2. Pasos de flujo de Salesforce
    1. Definir propiedades de flujo para el flujo de pantalla
    2. Agregue una pantalla para mostrar el componente personalizado de ubicaci贸n de entrada
    3. Agregar un componente de n煤mero de entrada para mostrar la latitud desde la ubicaci贸n de entrada Componente LWC
    4. Agregar un componente de n煤mero de entrada para mostrar la longitud desde la ubicaci贸n de entrada Componente LWC

Paso 1: Cree un componente web Lightning de ubicaci贸n de entrada para Screen Flow

En primer lugar, cree un componente web Lightning de ubicaci贸n de entrada con el siguiente c贸digo. El componente lightning-input-location representa un campo de geolocalizaci贸n compuesto que acepta valores de latitud y longitud introducidos por el usuario, siendo ambos coordenadas geogr谩ficas expresadas en grados decimales. Le permite identificar ubicaciones utilizando estas coordenadas.

El rango aceptable para la latitud est谩 entre -90 y 90, mientras que la longitud acepta valores de -180 a 180. Cualquier entrada m谩s all谩 de estos rangos especificados genera un mensaje de error. Este ejemplo muestra un campo de geolocalizaci贸n compuesto, que muestra una latitud de 27,70750 y una longitud de -122,3948370.

Si no sabe c贸mo crear un componente Lightning, consulte esta gu铆a para desarrolladores, Crear un componente web Lightning .

lwcToScreenFlow.html

Utilizaremos el componente de ubicaci贸n de entrada de rayos para aceptar valores de latitud y longitud. Desglosemos el c贸digo:

  • En LWC, el archivo HTML de cada componente debe envolverse con una etiqueta <plantilla> .
  • latitude={latitude} :- Esto vincula la propiedad de latitud de la clase JavaScript de LWC con el atributo de latitud del componente.
  • longitude={longitude} :- Similar a la latitud, esto une la propiedad de longitud de la clase JavaScript de LWC con el atributo de longitud del componente.
  • onchange={handleChange} :- Esto configura un detector de eventos en el componente. Cada vez que cambia el valor del componente (ya sea latitud o longitud), se llama al m茅todo handleChange de la clase JavaScript de LWC.

<plantilla> <rel谩mpago-entrada-ubicaci贸n etiqueta="Coordenadas predeterminadas" latitud={latitud} longitud={longitud} onchange={handleChange}> </ubicaci贸n-de-entrada-del-rel谩mpago>
</plantilla>
lwcToScreenFlow.js

Este c贸digo JavaScript de muestra utiliza el decorador @api para crear propiedades p煤blicas, es decir, accesibles desde otros componentes o utilizadas en plantillas HTML. Por ejemplo, @api latitude y @api longitude declaran dos propiedades p煤blicas.

  • FlowAttributeChangeEvent crea y distribuye el evento personalizado que transfiere datos del componente web Lightning a un flujo.
  • handleChange(event) es un m茅todo de controlador de eventos que se llama cuando ocurre un evento de cambio en el componente lightning-input-location en la plantilla HTML de LWC.
  • this.latitude = event.target.latitude y this.longitude = event.target.longitude , estas l铆neas actualizan las propiedades de latitud y longitud con los valores del objetivo del evento (el componente lightning-input-location).
  • [鈥渓atitud鈥, 鈥渓ongitud鈥漖.forEach((loc) => this.dispatchEvent(new FlowAttributeChangeEvent(loc, this[loc]))) , esta l铆nea recorre una matriz que contiene cadenas de latitud y longitud, y para cada uno de estos, env铆a un nuevo FlowAttributeChangeEvent.

importar { LightningElement, api } desde 'lwc';
importar {FlowAttributeChangeEvent} desde 'lightning/flowSupport'; exportar la clase predeterminada LwcToScreenFlow extiende LightningElement { @api latitud; @api longitud; handleChange(evento){ esta.latitud = evento.objetivo.latitud; this.longitude = event.target.longitude; ["latitud", "longitud"].forEach((loc) => this.dispatchEvent(new FlowAttributeChangeEvent(ubicaci贸n, esta[ubicaci贸n])) ); }
}
lwcToScreenFlow.js-meta.xml

El elemento isExposed se establece en verdadero, lo que hace que el componente est茅 disponible para su uso en herramientas como Lightning App Builder o Flow Builder. El elemento de objetivos se usa para especificar d贸nde se puede usar su componente. En este caso, la etiqueta lightning__FlowScreen significa que este componente est谩 dise帽ado para usarse en las pantallas de Salesforce Flow.

Los elementos targetConfigs y targetConfig le permiten definir propiedades que se pueden establecer en el contexto del constructor. En este caso, las propiedades son latitud y longitud . Ambos est谩n configurados para ser del tipo Integer y tienen la funci贸n de outputOnly , lo que significa que se pueden configurar en el flujo, pero el usuario no puede modificarlos dentro del componente. Estas propiedades se pueden usar para pasar datos del LWC al flujo.


<?versi贸n xml="1.0" codificaci贸n="UTF-8"?>
<LightningComponentBundle xmlns="http://soap.sforce.com/2006/04/metadatos"> <apiVersion>58.0</apiVersion> <isExposed>verdadero</isExposed> <objetivos> <target>rel谩mpago__FlowScreen</target> </objetivos> <configuraciones de destino> <targetConfig objetivos="rel谩mpago__FlowScreen"> <property label="Latitude" name="latitude" type="Integer" role="outputOnly"/> <property label="Longitud" name="longitud" type="Integer" role="outputOnly"/> </targetConfig> </configuraciones de destino>
</LightningComponentBundle>

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 , luego haga clic en Nuevo flujo .
  4. Seleccione el flujo de pantalla   y haga clic en Crear y configurar el flujo.
  5. Se abrir谩 el dise帽ador de flujo para usted.

Paso 2.2: agregue una pantalla para mostrar el componente personalizado de ubicaci贸n de entrada

  1. En Flow Designer, haga clic en el icono + y seleccione el elemento Pantalla .
  2. Ingrese la siguiente informaci贸n :
    1. Ingrese la etiqueta, el nombre de la API se completar谩 autom谩ticamente.
  3. Haga clic en Listo.

Paso 2.3: Agregue un componente de n煤mero de entrada para mostrar la latitud desde el componente LWC de ubicaci贸n de entrada

  1. En la secci贸n Entrada en Elemento de pantalla , arrastre y suelte el componente N煤mero en la pantalla.
  2. Ingrese la siguiente informaci贸n :
    1. Ingrese la etiqueta, el nombre de la API se completar谩 autom谩ticamente.
    2. Valor predeterminado : {!lwcToFlow.latitude}
  3. Haga clic en Listo.

Paso 2.4: Agregar un componente de n煤mero de entrada para mostrar la longitud desde la ubicaci贸n de entrada Componente LWC

  1. En la secci贸n Entrada en Elemento de pantalla , arrastre y suelte el componente N煤mero en la pantalla.
  2. Ingrese la siguiente informaci贸n :
    1. Ingrese la etiqueta, el nombre de la API se completar谩 autom谩ticamente.
    2. Valor predeterminado : {!lwcToFlow.longitude}
  3. Haga clic en Listo.

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

Una vez que todo se vea bien, realice los siguientes pasos:

  1. Haga clic en Guardar .
  2. Ingrese la etiqueta de flujo, el nombre de la API se completar谩 autom谩ticamente.
  3. Haga clic en Mostrar avanzado .
  4. Versi贸n de API para ejecutar el flujo : 58
  5. Etiqueta de entrevista : Pase de Screen Flow a LWC {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

Prueba de concepto

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

Comenzando con Acciones Externas 鈽侊笍

Comenzando con Acciones Externas 鈽侊笍

Esta es una traducci贸n que desde EGA Futura ofrecemos como cortes铆a a toda la Ohana y comunidad de programadores , consultores , administradores y arquitectos de Salesforce para toda Iberoam茅rica .

El enlace a la publicaci贸n original, lo encontrar谩s al final de este art铆culo.

Introducci贸n a las acciones externas | Blog de desarrolladores de Salesforce

Tuve excelentes conversaciones con clientes y socios en Connections este a帽o, as铆 como a trav茅s de la comunidad Trailblazer de MC Account Engagement , con respecto a las acciones externas de Account Engagement . Segu铆a surgiendo una pregunta: "驴C贸mo empiezo con las acciones externas?" En esta publicaci贸n, aprender谩 qu茅 son las acciones externas, c贸mo configurarlas y c贸mo probarlas. Adem谩s, sintonice una pr贸xima sesi贸n de codeLive el 20 de julio a las 10 a. m. PT , donde realizar茅 una demostraci贸n de codificaci贸n en vivo para mostrarle c贸mo crear una acci贸n externa y responder sus preguntas.

驴Qu茅 son las Acciones Externas?

Las acciones externas son una parte clave deMarketing App Extensions , ya que proporcionan una forma de desencadenar una acci贸n en un sistema externo. El otro componente es Actividades externas, que proporciona una forma de activar la automatizaci贸n de la participaci贸n de la cuenta en funci贸n de un evento de participaci贸n que ocurre en un sistema externo. Piense en ello como las dos caras de una moneda, las acciones se activan, las actividades se activan. Combinadas, forman una aplicaci贸n de extensibilidad de automatizaci贸n para un servicio, por lo que puede tener una extensi贸n de aplicaci贸n de marketing por SMS, por ejemplo.

Por este motivo, las acciones externas se empaquetan en una extensi贸n de aplicaci贸n de marketing. En el momento de escribir este art铆culo, las actividades externas a煤n no se pueden empaquetar, pero eventualmente tambi茅n se empaquetar谩n en la extensi贸n de la aplicaci贸n de marketing.

Si desea conectar una aplicaci贸n de terceros para automatizar la ejecuci贸n de una acci贸n de prospecto en ese sistema, entonces esta es definitivamente la funci贸n para usted. En esta publicaci贸n, profundizaremos en el lado de la acci贸n externa de las extensiones de aplicaciones de marketing.

驴Cu谩les son algunos buenos casos de uso para las acciones externas?

Bueno, si me preguntan, 隆dir铆a absolutamente todo! Puede que est茅s pensando: 鈥溌laro, todo el mundo dice eso!鈥. Sin embargo, las posibilidades que desbloquean las acciones externas son realmente amplias. Si alguna vez ha dicho: "Me gustar铆a que cuando un prospecto llegue a este paso, yo pudiera <insertar deseo aqu铆>", entonces deseaba una acci贸n externa.

Puede usar una acci贸n externa para registrarse en un seminario web de Zoom desde Account Engagement (consulte el ejemplo en GitHub ). Tambi茅n puede usar una acci贸n externa para enviar un mensaje SMS a trav茅s de Twilio, que presentamos en una publicaci贸n de blog anterior . Incluso puedes usar acciones externas con webhooks; Us茅 la funci贸n de captura de webhook de Zapier para crear una acci贸n externa que usaba un cliente potencial como desencadenante de un Zap.

驴Qu茅 constituye una acci贸n externa?

Una acci贸n externa consta de una acci贸n invocable de Apex, metadatos de la extensi贸n de la aplicaci贸n de marketing, metadatos de una acci贸n externa y una forma de gestionar la autenticaci贸n. Los metadatos para las extensiones de la aplicaci贸n de marketing y las actividades externas conectan la acci贸n invocable con la participaci贸n de la cuenta. Los componentes que se usar谩n para la autenticaci贸n pueden variar seg煤n el tipo de autenticaci贸n que admita el servicio. Como OAUTH 2.0 es bastante com煤n, el componente que uso m谩s es un proveedor de autorizaci贸n y Credenciales con nombre . Las credenciales con nombre tambi茅n facilitan la administraci贸n de la autenticaci贸n en mi c贸digo, y el sistema hace la mayor parte del trabajo.

驴Qu茅 habilidades necesito para trabajar con Acciones Externas?

Con una gran flexibilidad viene la complejidad, por lo que necesitar谩 algunas habilidades en ciertas 谩reas para construir con 茅xito una acci贸n externa. Los siguientes son temas clave de los que necesitar谩 una comprensi贸n b谩sica antes de abordar su propia acci贸n externa.

SLDC de Salesforce

Comprender el ciclo de vida del desarrollo de Salesforce es muy importante para tener 茅xito en general. Recomiendo aprender Visual Studio y el proceso de implementaci贸n de la CLI. No se necesita maestr铆a, solo lo b谩sico para poder empezar. Trailhead ofrece una ruta para ayudarlo a configurar su espacio de trabajo .

Documentaci贸n de la API REST

El patr贸n del que hablamos en este art铆culo se basa en las API REST JSON. Para comprender lo que es posible y recopilar las entradas pertinentes para una acci贸n externa, debe poder leer una especificaci贸n API. Consulte las especificaciones de la API de Account Engagement y Twilio .

Implementaci贸n de Apex y Apex

Apex Invocable Actions es mi forma preferida de codificar mis acciones externas, ya que me permite la mayor flexibilidad y control. Recomendar铆a, como m铆nimo, familiarizarse con la compilaci贸n y la implementaci贸n de c贸digo Apex mediante el proyecto Quick Start: Apex de Trailhead. Para obtener m谩s informaci贸n, encontr茅 煤til el trailmix de Apex Basics . No necesita convertirse en un experto, pero al menos debe estar lo suficientemente informado como para poder leer el c贸digo de la aplicaci贸n de referencia .

Flujo de Salesforce (opcional)

No necesita conocer Salesforce Flow para aprender Acciones externas. Sin embargo, es una herramienta de prueba muy poderosa para sus acciones externas, lo que facilita la creaci贸n de una interfaz de usuario para controlar las entradas durante la prueba. Si est谩 familiarizado con Engagement Studio, Flow ser谩 bastante f谩cil ya que tiene muchos de los mismos conceptos. Utilic茅 la ruta Crear flujos con Flow Builder para ponerme al d铆a. Otro beneficio de aprender Salesforce Flow es que abre la puerta a la creaci贸n de todo tipo de automatizaci贸n de procesos comerciales.

驴C贸mo debo configurar mi entorno de desarrollador?

Es importante configurar sus entornos de desarrollador y contar con las herramientas adecuadas antes de comenzar con las acciones externas. Yo uso las siguientes herramientas.

  • Postman : utilizo Postman para explorar una nueva API, por lo que puedo aprender a realizar una solicitud y responder de forma sencilla. Postman tambi茅n proporciona una manera f谩cil de generar ejemplos.
  • CLI de Visual Studio + Salesforce 鈥 Uso Visual Studio para codificar mi acci贸n invocable y la implemento en mi organizaci贸n de desarrollador. La mayor铆a de las veces, es simplemente copiar y pegar un ejemplo anterior y editarlo para mi nuevo caso de uso.
  • Entorno de desarrollador/sandbox : este es un entorno seguro para construir, desarrollar y empaquetar sus acciones externas. Tenga en cuenta que, en el momento de escribir este art铆culo, solo admitimos paquetes de primera generaci贸n (1GP) , por lo tanto, no configure su organizaci贸n de desarrollador como Dev Hub.
  • Salesforce Flow : personalmente me gusta usar ScreenFlows para probar una acci贸n invocable. Es bueno poder controlar completamente la entrada antes de conectarla a acciones externas y programas ES.
  • Consola de desarrollador de Salesforce : esto le permite ver r谩pidamente el c贸digo o ver los registros de sus pruebas de flujo de pantalla.

Patr贸n b谩sico para llamadas API REST con acciones externas

Si bien puede codificar acciones externas de muchas maneras, existe un patr贸n b谩sico que recomiendo al realizar llamadas a la API REST.

Las dos etiquetas que debe recordar son InvocableVariable , que define las entradas y salidas de la acci贸n invocable, e InvocableMethod , que es el m茅todo a llamar al ejecutar la acci贸n invocable. Puede ver c贸mo se aplican en el siguiente c贸digo de ejemplo.

Normalmente creo dos clases, una para la entrada y otra para la solicitud de API. Separar mi c贸digo en dos clases facilita jsonificar la carga 煤til. Mi clase de entrada contiene todos los campos de variables invocables que la acci贸n invocable necesita en la entrada. Mi solicitud de API contiene los campos de la solicitud JSON.

InvocableMethod construir谩 la carga 煤til a partir de la entrada, la convertir谩 a JSON y luego la agregar谩 a la solicitud HTTP. A continuaci贸n, configura el resto de la solicitud HTTP agregando la URL, los encabezados y el m茅todo. Finalmente, realiza la llamada a la API y comprueba si el resultado es correcto o, de lo contrario, genera un error 煤til para diagnosticar un problema.

Consideraci贸n importante: el marco de acci贸n externa espera que se devuelva un error si hay una falla en lugar de detectar el error y luego devolver el 茅xito. Si se devuelve un error, se informar谩 en la tabla de errores.

Poniendo a prueba tus acciones externas

De vez en cuando, mientras crea una acci贸n externa, encontrar谩 errores. Cuanto m谩s pueda probar sobre la marcha, m谩s f谩cil ser谩 descubrir d贸nde radica el problema. Es por eso que recomiendo agregar un paso de prueba para probar en Salesforce Flow antes de probar en Engagement Studio. Elimina la configuraci贸n de la acci贸n externa de la imagen, por lo que si la verifica aqu铆, pero no funciona en Engagement Studio, sabr谩 que el problema radica en la configuraci贸n de la acci贸n externa.

Las pruebas lo ayudan a identificar errores, pero determinar la causa ra铆z y corregirlos es otra cosa. A continuaci贸n se presentan algunas de las t茅cnicas que utilizo para diagnosticar las causas fundamentales.

  • Consola de desarrollador de Salesforce : utilizo la consola de desarrollo para ejecutar mis casos de prueba y confirmar la cobertura de mi c贸digo. Durante las pruebas exploratorias en Flow, mantengo abierta mi consola de desarrollo, por lo que genera registros para usar en la investigaci贸n de errores.
  • Rastreos de registro de Salesforce : si el error ocurre durante mi prueba de Engagement Studio, coloco un rastreo de usuario en el usuario de integraci贸n B2BMA, para poder ver mis registros de Apex y diagnosticar el problema m谩s a fondo. Tenga cuidado, podr铆a terminar con una gran cantidad de datos. El Usuario de Integraci贸n B2BMA es el usuario que ejecuta acciones externas.
  • Errores de acci贸n externa de compromiso de cuenta : la tabla proporciona cualquier error devuelto por la acci贸n externa que result贸 en una falla. Es 煤til ver lo que sucedi贸 durante una ejecuci贸n de ES.

SUGERENCIA: si tiene una cuenta de Gmail, puede usar un "+" para crear varios registros con su direcci贸n de correo electr贸nico. Por ejemplo, puedo registrar tanto "ejemplo@ejemplo.com" como "ejemplo+usuario2@ejemplo.com" como prospecto, y cualquier correo enviado a esas direcciones ir铆a al buz贸n de correo de ejemplo@ejemplo.com. Por ejemplo, us茅 esto para probar el ejemplo de registro de Zoom porque no quer铆a que el correo electr贸nico registrado rebotara.

Errores comunes

Los errores van a suceder, as铆 es la vida. Me he encontrado con algunos escenarios que me han hecho casi tirarme de los pelos.

El primero es garantizar que la acci贸n exterior sea activa. Si la acci贸n no aparece en Engagement Studio, es probable que esta sea la causa. Recuerde, debe activar tanto la extensi贸n de la aplicaci贸n de marketing como la acci贸n externa, adem谩s de asignarla a esa unidad comercial.

El siguiente es asegurarse de que su clase de Apex est茅 activa. La mayor铆a de las veces ya estar谩 marcado como activo, es el estado predeterminado cuando creas una nueva clase. Es exactamente por eso que es f谩cil pasarlo por alto.

Otro es buscar extensiones de aplicaciones de marketing al empaquetar. No puedo decirte cu谩ntas veces busco acciones externas, solo para tener un momento de confusi贸n antes de recordar.

Finalmente, si su acci贸n externa no funciona, pero no ve errores, verifique que la acci贸n invocable fue dise帽ada para generar un error en caso de falla.

Lo anterior no es de ninguna manera exhaustivo, y es probable que encuentre sus propias alegr铆as. Sin embargo, recomiendo compartirlos con la comunidad si encuentra algunos buenos.

驴Que estas esperando? 隆Empiece hoy!

Ahora sabe casi todo lo que hago sobre las acciones externas, desde c贸mo funciona la funci贸n hasta los errores comunes. Recuerde que Acciones externas es su herramienta siempre que se encuentre diciendo: "Me gustar铆a hacer algo cuando el cliente potencial haga esto", y lo ayudar谩 a automatizar esa acci贸n.

Entonces, configure su entorno de desarrollador, revise la aplicaci贸n de referencia y comience a construir su acci贸n externa hoy. El 20 de julio a las 10 a. m. (hora del Pac铆fico) , realizaremos una sesi贸n de CodeLive en nuestro canal de YouTube para desarrolladores de Salesforce , as铆 que 煤nase y s铆ganos mientras construimos una extensi贸n de la aplicaci贸n de marketing de Twilio.

Recursos

Sobre el Autor

Christopher Cornett es gerente s茅nior de productos en Salesforce, responsable de la experiencia del desarrollador de Account Engagement. Ha trabajado para Salesforce durante m谩s de cuatro a帽os y tiene m谩s de 13 a帽os de experiencia en gesti贸n de productos, trabajando principalmente en plataformas que van desde la atribuci贸n de big data hasta el fraude. Christopher ha ayudado a ofrecer API V5 y extensiones de aplicaciones de marketing, ayudando a los clientes a crear integraciones personalizadas para que su pila de marketing funcione para ellos. Le apasiona la experiencia del desarrollador y le encanta jugar con todas las excelentes funciones para ver qu茅 es posible.

Obtenga las 煤ltimas publicaciones de blog de desarrolladores de Salesforce y episodios de podcast a trav茅s de Slack o RSS.

Agregar a Slack Suscr铆bete a RSS

Seguir leyendo

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

Diferentes formas de hacer que el componente de la pantalla sea de solo lectura

Diferentes formas de hacer que el componente de la pantalla sea de solo lectura

脷ltima actualizaci贸n el 9 de abril de 2023 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo hacer que el componente de pantalla sea de solo lectura? Objetivos: despu茅s de leer este blog, podr谩: Agregar texto de solo lectura al componente de pantalla usando Display Text Agregar texto de solo lectura al componente de pantalla usando un Lightning Web personalizado

La publicaci贸n Diferentes formas de hacer que el componente de pantalla sea de solo lectura apareci贸 primero en Automation Champion .

Seguir leyendo

Agregar seguidores de Chatter al registro

C贸mo agregar autom谩ticamente seguidores de Chatter al registro

La publicaci贸n Agregar seguidores de Chatter al registro apareci贸 primero en Automation Champion .

Seguir leyendo

Mejores pr谩cticas de LWC para flujos de pantalla 鈽侊笍

Aseg煤rese de que sus componentes se integren bien en el motor de tiempo de ejecuci贸n de flujo y funcionen como se espera en este blog sobre Screen Flows.

La publicaci贸n Mejores pr谩cticas de LWC para flujos de pantalla apareci贸 primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Anunciando los Ganadores del Premio Codey 2022 鈽侊笍

Consulte los ganadores del Premio Codey a los mejores blogs, videos y podcasts de 2022, seg煤n la votaci贸n de la comunidad de desarrolladores de Salesforce.

La publicaci贸n Anunciando los ganadores del premio Codey 2022 apareci贸 primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Resumen de 2022: nuevas funciones para desarrolladores del a帽o pasado 鈽侊笍

Cada a帽o, los desarrolladores de Salesforce se encuentran en el extremo receptor de una cinta transportadora de funciones nuevas importantes y, a veces, esenciales de la plataforma de Salesforce.

La publicaci贸n 2022 en revisi贸n: nuevas funciones para desarrolladores del a帽o pasado apareci贸 primero en el blog de desarrolladores de Salesforce .

Seguir leyendo

Flujos de pantalla integrados en sus componentes web Lightning 鈽侊笍

Screen Flow permite a los desarrolladores y administradores crear interfaces de usuario y vincularlas a los datos de Salesforce, y utilizar componentes web Lightning como elementos de flujo.

La publicaci贸n Integrar flujos de pantalla en sus componentes web Lightning apareci贸 por primera vez en el blog de desarrolladores de Salesforce .

Seguir leyendo

Cree una b煤squeda filtrada con Choice Lookup

脷ltima actualizaci贸n el 11 de diciembre de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo se usa el nuevo componente de b煤squeda de opciones (beta) para mostrar registros filtrados? Este blog es una continuaci贸n de mi blog anterior: seleccione varios registros en el componente de b煤squeda. En el blog anterior, habl茅

La publicaci贸n Create Filtered Lookup with Choice Lookup apareci贸 primero en Automation Champion .

Seguir leyendo

Crear b煤squeda con formularios din谩micos para flujo

脷ltima actualizaci贸n el 9 de diciembre de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo se agrega un campo de b煤squeda desde el objeto con el filtro de b煤squeda aplicado? Hasta ahora hemos discutido varios usos para usar diferentes campos de componentes de b煤squeda: 驴Qu茅? 驴Usar campo de b煤squeda en un elemento de pantalla de flujo?

La publicaci贸n Create Lookup with Dynamic Forms for Flow apareci贸 primero en Automation Champion .

Seguir leyendo

Seleccionar varios registros en el componente de b煤squeda

脷ltima actualizaci贸n el 8 de diciembre de 2022 por Rakesh Gupta Gran idea o pregunta duradera: al usar el componente de b煤squeda, permita que sus usuarios seleccionen m谩s de un registro. Este blog es una continuaci贸n de mi blog anterior: 驴Qu茅? 驴Usar campo de b煤squeda en un elemento de pantalla de flujo? En el blog anterior,

La publicaci贸n Seleccione varios registros en el componente de b煤squeda apareci贸 primero en Automation Champion .

Seguir leyendo

Limite el n煤mero de sesiones simult谩neas en Salesforce

脷ltima actualizaci贸n el 10 de octubre de 2022 por Rakesh GuptaGran idea o pregunta duradera: 驴C贸mo limitar la cantidad de sesiones simult谩neas para un usuario? Objetivos: despu茅s de leer este blog, podr谩: Comprender las sesiones concurrentes y c贸mo identificarlas usando Flow Limitar el n煤mero de sesiones concurrentes con

La publicaci贸n Limitar el n煤mero de sesiones simult谩neas en Salesforce apareci贸 primero en Automation Champion .

Seguir leyendo

Mostrar datos de registros en una tabla mediante DataTable

脷ltima actualizaci贸n el 9 de octubre de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo mostrar registros en una tabla usando la tabla de datos y procesar los registros seleccionados? Objetivos: despu茅s de leer este blog, podr谩: Comprender c贸mo usar la tabla de datos Funciona con el elemento Obtener registros para obtener

La publicaci贸n Mostrar datos de registros en una tabla usando DataTable apareci贸 primero en Automation Champion .

Seguir leyendo

Componente de 谩rea de texto enriquecido para Screen Flow

脷ltima actualizaci贸n el 10 de junio de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo agregar un campo de 谩rea de texto enriquecido a una pantalla de flujo? Objetivos: despu茅s de leer este blog, podr谩: Crear un componente web Lightning para el flujo de pantalla Agregar un editor de propiedades personalizado para un

El componente de 谩rea de texto enriquecido posterior para el flujo de pantalla apareci贸 por primera vez en Automation Champion .

Seguir leyendo

Esc谩ner de c贸digo de barras para el flujo de pantalla con la API de BarcodeScanner

脷ltima actualizaci贸n el 8 de junio de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo escanear y procesar un c贸digo de barras de Screen Flow? Objetivos: despu茅s de leer este blog, podr谩: Usar la API BarcodeScanner en el componente web Lightning Crear un componente web Lightning para el flujo de pantalla con un

La publicaci贸n Esc谩ner de c贸digo de barras para el flujo de pantalla con la API de BarcodeScanner apareci贸 primero en Automation Champion .

Seguir leyendo

C贸mo obtener la URL base de la organizaci贸n de Salesforce en Flow

脷ltima actualizaci贸n el 25 de abril de 2022 por Rakesh Gupta Gran idea o pregunta persistente: 驴C贸mo obtiene la URL base de su organizaci贸n de Salesforce (incluida la comunidad) y la URL completa de registro en Flow? Objetivos: despu茅s de leer este blog, podr谩: Obtener la URL base de su organizaci贸n de Salesforce en el flujo

La publicaci贸n C贸mo obtener la URL base de la organizaci贸n de Salesforce en Flow apareci贸 primero en Automation Champion .

Seguir leyendo

Secciones plegables en Screen Flow

脷ltima actualizaci贸n el 24 de abril de 2022 por Rakesh Gupta Gran idea o pregunta duradera: 驴C贸mo se crea un flujo de pantalla con secciones plegables? Objetivos: despu茅s de leer este blog, podr谩: Agregar una secci贸n al elemento de la pantalla Hacer que una secci贸n en el flujo de la pantalla sea plegable y mucho m谩s

La publicaci贸n Secciones plegables en Screen Flow 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

Introducci贸n a Salesforce Flow – Parte 61 (Clonar un grupo p煤blico o una cola con miembros)

Clonar un grupo p煤blico o una cola con miembros en Salesforce usando Salesforce Flow

La publicaci贸n Getting Started with Salesforce Flow – Part 61 (Clonar un grupo p煤blico o cola con miembros) apareci贸 primero en Automation Champion .

Seguir leyendo

Cinco lecciones aprendidas al trabajar con componentes en Salesforce

脷ltima actualizaci贸n el 21 de diciembre de 2021 por Rakesh Gupta Introducci贸n En primer lugar, nos gustar铆a presentarnos a nosotros mismos y a nuestra empresa: SharinPix. Tenemos nuestra sede en Francia y nuestro objetivo es ser la opci贸n predeterminada cuando se trata de tomar, cargar y trabajar con im谩genes en el ecosistema de Salesforce. Empezamos

La publicaci贸n Cinco lecciones aprendidas al trabajar con componentes en Salesforce apareci贸 primero en Automation Champion .

Seguir leyendo

Introducci贸n a Salesforce Flow – Parte 69 (驴Establecer un valor predeterminado para el conjunto de opciones de registro? Claro, 驴por qu茅 no?)

脷ltima actualizaci贸n el 14 de septiembre de 2021 por Rakesh Gupta Gran idea o pregunta duradera: 驴Sorprendido, que establecer un valor predeterminado preseleccionado para un componente de Elecci贸n de registro no es f谩cil? Si es as铆, una cosa para recordar es que con suficiente creatividad y persistencia, la versatilidad de Salesforce Flows es tal que puede

La publicaci贸n Getting Started with Salesforce Flow – Part 69 (Establecer un valor predeterminado para Record Choice Set? Claro, 驴por qu茅 no?) Apareci贸 primero en Automation Champion .

Seguir leyendo