Categories
Developers Tutoriales de Salesforce

Comience a crear aplicaciones de Salesforce ahora con un nuevo proyecto de Trailhead ☁️

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.

Comience a crear aplicaciones de Salesforce ahora con un nuevo proyecto de Trailhead | Blog de desarrolladores de Salesforce

Los desarrolladores valoran y confían en Salesforce Platform porque simplifica el proceso de creación de soluciones empresariales seguras. Al utilizar las herramientas y los servicios integrados de la plataforma para la automatización, la integración y más, los desarrolladores pueden lograr el éxito comercial más rápido. Los desarrolladores de Salesforce abordan problemas comerciales complejos escribiendo código y utilizando herramientas sin código que ofrecen funciones simples rápidamente. Las herramientas sin código de la plataforma reducen la necesidad de que los desarrolladores escriban código repetitivo, para que puedan concentrarse en escribir código para funciones de mayor valor.

Para iniciar su viaje de desarrollo de Salesforce, hemos creado un nuevo Proyecto Trailhead: Comience con el desarrollo de Salesforce . Este blog le presenta el proyecto y proporciona una descripción general de lo que puede esperar de él.

Además de Salesforce Platform, el ecosistema más amplio de tecnologías de Salesforce incluye Heroku, MuleSoft, Marketing Cloud, Tableau, Slack y otros. El proyecto Trailhead del que hablaremos aquí está diseñado específicamente para desarrolladores que estén interesados en comenzar con Salesforce Platform.

requisitos previos

El único requisito previo para este proyecto es crear una cuenta en Trailhead , nuestra plataforma de aprendizaje en línea gratuita y divertida. Una vez que llegue a Trailhead, haga clic en el proyecto Comenzar con el desarrollo de Salesforce y siga las instrucciones del proyecto.

Si tiene experiencia previa en ingeniería de software, puede encontrar las instrucciones paso a paso fáciles de navegar. Sin embargo, los estudiantes sin experiencia en programación también deberían poder completar este proyecto.

Panorama de herramientas para desarrolladores de Salesforce

La plataforma Salesforce permite a los equipos de desarrollo elegir la herramienta adecuada para el trabajo adecuado. La combinación de herramientas sin código con código escrito hace que los desarrolladores sean más productivos y acelera el desarrollo.

Herramientas sin código: las herramientas sin código vienen listas para usar dentro del entorno de Salesforce. Los desarrolladores usan estas herramientas para crear modelos de datos de aplicaciones (Schema Builder), configurar la seguridad de los datos, escribir automatización sin código y mucho más.

Herramientas de código : como cualquier otra tecnología de desarrollo de software, los desarrolladores de Salesforce Platform utilizan herramientas de línea de comandos y un IDE. La CLI de Salesforce es la herramienta de línea de comandos que ejecuta comandos en organizaciones de Salesforce y funciona con archivos de origen en su máquina local. El paquete de extensión de Salesforce para Visual Studio Code contiene funciones que agilizan aún más el desarrollo y brindan una experiencia IDE.

Su primer paso hacia el desarrollo de Salesforce es aprender a instalar estas herramientas. La primera unidad del proyecto, Prepárese para desarrollar , está diseñada para ayudarlo a configurar el entorno de desarrollo y prepararse para crear aplicaciones.

El poder de menos código

Las aplicaciones modernas suelen necesitar una interfaz de usuario intuitiva, API para integrarse con otros sistemas y procesos, y una seguridad robusta, todo lo cual requiere un código complejo. La buena noticia es que Salesforce Platform proporciona herramientas integradas para ayudarlo a incorporar estas funciones en sus aplicaciones sin necesidad de escribir y mantener una gran cantidad de código.

La segunda unidad del proyecto, Crear un modelo de datos mediante clics , le presenta herramientas sin código para crear modelos de datos y también proporciona una descripción general de algunas de las capacidades listas para usar de la plataforma Salesforce.

Ampliación de los servicios listos para usar y las capacidades de la plataforma

Los desarrolladores pueden personalizar la plataforma Salesforce para resolver problemas comerciales complejos. Una de las formas en que pueden hacerlo es escribiendo código para ampliar las capacidades de las herramientas sin código de la plataforma.

JavaScript y Apex son los dos lenguajes más destacados en Salesforce Platform para escribir personalizaciones. Apex es el lenguaje de back-end más ampliamente adoptado en el ecosistema de Salesforce, y JavaScript se utiliza para el desarrollo de front-end que aparece a través de Lightning Web Components.

Escribiendo lógica de negocios en Apex

El lenguaje de programación de Apex está optimizado para ejecutarse en el entorno multiusuario de Salesforce. Está fuertemente tipado y orientado a objetos, y permite a los desarrolladores automatizar procesos comerciales de back-end complejos cuando se necesita código.

Apex se integra con la capa de persistencia de datos de Salesforce y tiene soporte integrado para trabajar con datos de Salesforce, lo que permite a los desarrolladores ser más productivos. Y además de eso, Apex fomenta automáticamente las buenas prácticas de codificación al hacer cumplir los límites del regulador y los requisitos de prueba .

Los desarrolladores de Salesforce necesitan conocer Apex, ya que les permite ampliar la funcionalidad lista para usar proporcionada por la Plataforma de Salesforce. La tercera unidad del proyecto, Write Business Login in Apex , cubre cómo escribir y probar el código Apex.

Personalización de la interfaz de usuario de Salesforce con componentes web Lightning

Los componentes web Lightning son elementos HTML personalizados que utilizan los estándares de los componentes web y están creados con HTML y JavaScript moderno. Un componente web Lightning (LWC) se ejecuta en el navegador de forma nativa y permite a los desarrolladores crear nuevas aplicaciones o personalizar la interfaz de usuario lista para usar de las aplicaciones existentes.

Saber cómo trabajar con LWC es una habilidad de desarrollo clave de Salesforce, ya que le permite crear experiencias personalizadas en la plataforma de Salesforce. La última y última unidad, Crear un componente de interfaz de usuario reutilizable con componentes web Lightning , lo guiará paso a paso a través del proceso de creación de un componente web Lightning.

¿Qué más puedes aprender?

Además del proyecto Trailhead que se analiza en este blog, tiene la oportunidad de aprender habilidades de desarrollo aún más importantes en Trailhead . Algunos que recomendamos incluyen:

Flujo de fuerza de ventas

Salesforce Flow le permite automatizar los procesos comerciales con poca o ninguna codificación, lo que le permite ahorrar tiempo y recursos. Puede interactuar con Apex y LWC. Por ejemplo, como desarrollador, puede escribir clases de Apex que Flow puede invocar. También puede crear una interfaz de usuario de flujo personalizada usando LWC, o tener su flujo alojado en la página en un LWC. Al combinar Flows, Apex y LWC, puede crear rápidamente soluciones que agreguen valor comercial.

Funciones de la fuerza de ventas

Para el código de escala elástica, puede utilizar Funciones de Salesforce . Estas unidades de código de funciones como servicio (FaaS) le permiten ampliar Salesforce utilizando lenguajes de código abierto como Java, JavaScript y Python. Las funciones de Salesforce también le permiten conectarse fácilmente a servicios de bases de datos administrados en Heroku. Escalar su aplicación Salesforce con código nunca ha sido tan fácil.

Cliente 360

La plataforma de Salesforce permite el éxito inmediato al trabajar sin problemas con Salesforce Customer 360 y proporcionar beneficios rápidos de tiempo de valor de código bajo. Sin embargo, las habilidades de desarrollador también son útiles cuando se trabaja con gran parte del panorama tecnológico de Salesforce. Esto incluye la creación de experiencias y recorridos personalizados con Marketing Cloud, la creación y el escalado de escaparates y sitios web de comercio electrónico con Commerce Cloud , la visualización de análisis basados en datos con Tableau o la creación de aplicaciones conectadas con Slack .

Conclusión

El proyecto Trailhead, Primeros pasos con el desarrollo de Salesforce , le brinda una descripción general de lo que es ser un desarrollador que trabaja con las capacidades de la plataforma Salesforce. Pero esto es sólo el comienzo. Cada una de las unidades dentro del proyecto tiene enlaces a otros recursos para brindarle una comprensión más profunda.

Finalmente, si te quedas atascado, recuerda que no estás solo. El grupo de desarrolladores de Salesforce en Trailblazer Community es donde puede colaborar, conectarse en red, crear conexiones y aprender con otros desarrolladores a nivel mundial.

Recursos

Comience con el desarrollo de Salesforce

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, Apex y Lightning Web Components en Salesforce. Mohith se encuentra actualmente entre los principales contribuyentes en Salesforce Stackexchange, 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

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2022/11/get-started-building-salesforce-apps-now-with-a-new-trailhead-project.html

Categories
Developers

Cómo aprobar el examen de certificación

de Salesforce Platform App Builder

Última actualización el 16 de septiembre de 2022 por Rakesh Gupta

Con inmenso placer, me gustaría compartir que aprobé el examen de certificación de Platform App Builder hace un mes. Me tomó 50 minutos revisar todas las preguntas antes de presionar el botón de enviar. Después de un clic más del botón 'Continuar', woohoo, la pantalla dice Result: Pass .

Después de terminar, pensé en compartir algunas de mis experiencias con respecto a mi preparación para el examen.

👉 Ya que está aquí, es posible que desee consultar mi nuevo libro Certificación del creador de aplicaciones de la plataforma Salesforce: una guía práctica de estudio .

Entonces, ¿quién es un candidato ideal para el examen?

La credencial de Salesforce Platform App Builder está destinada a una persona con experiencia en el desarrollo de aplicaciones personalizadas en Lightning Platform, incluida la aplicación práctica de las habilidades y conceptos que se indican en los objetivos del examen a continuación.

El creador de aplicaciones de la plataforma Salesforce generalmente tiene de 6 meses a 1 año de experiencia en la creación de aplicaciones en la plataforma Lightning y/o en una plataforma de tecnología similar.

El candidato de Salesforce Platform App Builder tiene la experiencia, las habilidades y los conocimientos que se describen a continuación:

  • Familiaridad con las capacidades de la plataforma Lightning
  • Conocimiento de los tipos de licencia de Salesforce y consideraciones relacionadas
  • Capacidad para diseñar aplicaciones para respaldar los procesos comerciales y los requisitos de informes
  • Familiaridad con las capacidades y la personalización utilizadas para mejorar la experiencia del usuario móvil
  • Familiaridad con los entornos de desarrollo de Salesforce y las opciones disponibles para implementar aplicaciones y administrar cambios en la Plataforma Lightning
  • Comprensión de los recursos enumerados en esta guía de examen y los materiales de estudio adicionales requeridos proporcionados por Salesforce

No se espera que un candidato para este examen pueda administrar Sales Cloud o Service Cloud, tener experiencia en desarrollo programático (Apex, Visualforce, etc.), diseñar interfaces personalizadas con Visualforce o diseñar componentes Lightning personalizados con Apex o JavaScript.

¿Cómo prepararse para el examen?

El punto de partida para mí con cualquier examen es la Guía de estudio. Esto le brinda detalles del propósito y el formato del examen y luego un resumen punto por punto de las áreas en las que se evaluará y cuánto cuentan para la calificación general.

  • 60 preguntas de opción múltiple/selección múltiple: 105 minutos
  • 63% es el puntaje de aprobación
  • Secciones de examen y ponderación
    • Fundamentos de Salesforce : 23%
    • Modelado y gestión de datos: 22%
    • Lógica de Negocios y Automatización de Procesos : 28%
    • Interfaz de usuario: 17%
    • Implementación de la aplicación : 10 %
  • La tarifa del examen es de $ 200 más los impuestos aplicables.
  • Tarifa de repetición: USD 100, más impuestos aplicables según lo exija la ley local
  • Guía del examen de certificación de Platform App Builder
  • Programa tu examen de certificación aquí

Lo que suceda a continuación depende de cómo le guste estudiar: si encuentra videos de la mejor manera, el principal catálogo de capacitación en línea tiene un excelente material, que incluye preguntas de verificación de conocimientos para ver si algo se mantiene. Si no tiene acceso a eso, hay una gran cantidad en el canal de Salesforce en YouTube.

Soy un gran admirador de la palabra escrita, por lo que generalmente me dirijo a la ayuda en línea y voy directamente a la sección Hojas de consejos imprimibles y guías del usuario . Esta colección de documentos breves lo guía a través de la configuración y el uso de varios aspectos del sistema.

La siguiente lista no es exhaustiva; así que échale un vistazo y utilízalo como punto de partida:

  1. Descubra la certificación de asociado de Salesforce: una credencial de nivel de entrada para los nuevos pioneros
  2. Trailmix: Prepárese para su credencial de creador de aplicaciones de la plataforma Salesforce
  3. Módulo : estudio para el examen de Platform App Builder
  4. Superbadge : Especialista en seguridad
  5. Superbadge : Especialista en Automatización de Procesos
  6. Superbadge : Especialista en personalización de aplicaciones

Lo que necesita saber para suavizar su viaje

En un nivel muy alto, debe comprender los siguientes temas para aprobar el examen. Todo el mérito es para el equipo de Salesforce Trailhead y sus respectivos propietarios.

  1. Fundamentos de Salesforce : 23%
    1. Salesforce proporciona objetos y campos estándar para tipos de registros comerciales comunes, como cuentas, clientes potenciales y contactos. Pero cada organización es única y necesita una forma de personalizar cómo se almacenan los datos. Los objetos y campos personalizados permiten a las empresas gestionar y almacenar datos para adaptarse mejor a sus necesidades.
    2. Una aplicación Lightning es una colección de elementos que funcionan juntos para cumplir una función particular. En Lightning Experience, las aplicaciones Lightning brindan a sus usuarios acceso a conjuntos de objetos, pestañas y otros elementos, todo en un paquete conveniente en la barra de navegación.
    3. Entonces, ¿qué cosas puedes poner en una aplicación Lightning?
      1. La mayoría de los objetos estándar, incluidos Inicio, las noticias en tiempo real de Chatter, Grupos y Personas
      2. Los objetos personalizados de su organización
      3. Pestañas de Visualforce
      4. Pestañas de componentes Lightning
      5. Aplicaciones de lienzo a través de pestañas de Visualforce
      6. pestañas web
    4. Puede ver en el Administrador de aplicaciones que hay dos tipos de aplicaciones: Classic y Lightning. Una marca de verificación en la columna Visible en Lightning Experience significa que se puede acceder a la aplicación en Lightning Experience a través del Iniciador de aplicación y que es totalmente funcional.
      1. Las aplicaciones clásicas que no tienen una marca de verificación en la columna Visible en Lightning solo están habilitadas para nuestra IU de Salesforce Classic. Debido a que está trabajando en Lightning Experience, no encontrará esas aplicaciones solo clásicas en el Iniciador de aplicación. Las aplicaciones clásicas marcadas como visibles en Lightning Experience se pueden usar por completo en Lightning Experience, pero no aprovechan las mejoras de aplicaciones que ofrece Lightning Experience.
    5. Los diseños compactos controlan qué campos ven sus usuarios en el panel de aspectos destacados en la parte superior de un registro. También controlan los campos en la tarjeta de búsqueda expandida que ve cuando pasa el mouse sobre un enlace en los detalles del registro y en la sección de detalles cuando expande la actividad en la escala de tiempo de la actividad.
      1. Los diseños compactos ayudan a que su equipo sea más productivo al presentarles información de registro clave para que puedan administrar fácilmente su trabajo. Por ejemplo, muestre números de teléfono y regiones en una cuenta. O muestre etapas, cantidades y campos de propiedad en una oportunidad. Con diseños compactos, puede resaltar lo que sus usuarios necesitan ver de un vistazo cuando miran un registro.
    6. Las páginas Lightning son una colección de componentes Lightning organizados en regiones de la página. Puede personalizar la estructura de la página y la posición de los componentes con Lightning App Builder (obtenga más información en el módulo Lightning App Builder en Trailhead).
    7. Los vínculos personalizados pueden vincular a una URL externa, como http://www.google.com , una página de Visualforce o la intranet de su empresa. Los botones personalizados pueden conectar a los usuarios a aplicaciones externas, como páginas web, y lanzar enlaces personalizados.
      1. Hay tres tipos principales de botones y enlaces personalizados que puede crear.
        1. Botón Lista: aparece en una lista relacionada en una página de registro de objetos.
        2. Vínculo de la página de detalles: aparece en la sección Vínculos de los detalles del registro en una página de registro de objeto.
        3. Botón de página de detalles: aparece en el menú de acciones en el panel de aspectos destacados de una página de registro.
      2. Un botón de lista personalizada es un botón que puede agregar a una lista relacionada. Cuando crea un botón de lista para un objeto, puede agregar ese botón a la lista relacionada de ese objeto cuando la lista relacionada aparece en otros objetos. Dado que las auditorías energéticas están vinculadas a cuentas con un campo de relación de búsqueda, aparece automáticamente una lista relacionada con las auditorías energéticas en los registros de cuentas.
    8. Las acciones permiten a los usuarios realizar tareas rápidamente, como crear registros, registrar llamadas, enviar correos electrónicos y más. Con acciones personalizadas, puede hacer que la navegación y el flujo de trabajo de sus usuarios sean lo más fluidos posible al brindarles acceso rápido a la información más importante.
      1. Las acciones rápidas vienen en dos sabores diferentes.
        1. Las acciones específicas de objetos tienen relaciones automáticas con otros registros y permiten a los usuarios crear o actualizar rápidamente registros, registrar llamadas, enviar correos electrónicos y más, en el contexto de un objeto en particular.
        2. Las acciones globales se crean en un lugar diferente de la Configuración en el que se crean acciones específicas de objetos. Se denominan acciones globales porque se pueden colocar en cualquier lugar donde se admitan acciones. Use acciones globales para permitir que los usuarios registren detalles de llamadas, creen registros o envíen correos electrónicos sin salir de la página en la que se encuentran.
    9. Service Cloud es una aplicación de servicio al cliente fácil de usar que puede ayudarlo a brindar y realizar un seguimiento de un servicio excelente. Mantiene a sus clientes contentos y a su equipo de soporte cuerdo, ya sea que sus clientes se comuniquen con usted por correo electrónico, teléfono, redes sociales u otros canales desde computadoras de escritorio, dispositivos móviles o aplicaciones.
    10. Beneficios de la Consola de servicio
      Beneficio Descripción
      (1) Vistas divididas Desde el principio, puede ver una lista de casos junto con su espacio de trabajo para resolver rápidamente los problemas de los clientes entrantes.
      (2) Registros relacionados y componentes de listas relacionadas Desde el primer momento, puede ver información relacionada con un cliente para obtener una imagen completa de su problema y quiénes son. Vaya a listas de casos similares y trabaje con listas para mantener sus casos organizados.
      (3) Componente del panel de aspectos destacados Sin configurar nada, localice exactamente lo que necesita al frente y al centro para responder a los clientes rápidamente.
      (4) Caja de alimentación compacta Comprenda la progresión del caso y el historial del caso de un vistazo con un feed de noticias y páginas preconfiguradas. Los íconos coloridos lo ayudan a distinguir entre personas e interacciones al instante, y puede agregar un comentario rápido para ayudar a sus clientes o equipo.
      (5) Componente de conocimiento Vea artículos sugeridos de su base de conocimiento para resolver casos más rápido, busque artículos para encontrar exactamente lo que necesita y adjunte soluciones comunes de casos similares. (Debe habilitar Lightning Knowledge primero).
      (6) Barra de utilidades preconfigurada Aumente la productividad con herramientas, como Notas para anotar cosas o Historial para volver a los registros vistos recientemente.
    11. La gestión de casos significa organizar los casos de los clientes en un solo lugar y asegurarse de que vayan a la persona adecuada, para obtener la respuesta correcta, en el momento adecuado. Service Cloud hace todo eso entre bastidores con herramientas de automatización. El servicio es más fácil, más rápido y mejor con un poco de automatización.
      1. Herramientas de gestión de casos en Salesforce
        Colas Priorice automáticamente la carga de trabajo de su equipo de soporte mediante la creación de listas desde las cuales los agentes específicos pueden intervenir para resolver ciertos tipos de casos.
        Reglas de asignación Asigne automáticamente casos entrantes a agentes específicos para que las personas adecuadas trabajen en los casos correctos.
        Reglas de escalada Escalar automáticamente los casos a las personas adecuadas cuando los casos no se resuelvan en un tiempo determinado.
        Reglas de respuesta automática Envíe automáticamente respuestas de correo electrónico personalizadas a los clientes según los detalles de cada caso.
    12. Plan para la automatización de casos: las respuestas determinan qué herramientas utilizará para automatizar la gestión de casos.
      Pregunta Responder Herramienta
      ¿Los agentes de soporte trabajan en equipo en temas específicos? Sí, algunos agentes elaboran una lista de correos electrónicos a medida que llegan de los clientes. Colas
      ¿Cómo está estructurado el equipo de soporte? Contamos con equipos de soporte Gold y Platinum. El soporte Platinum comparte una carga de trabajo. colas o

      Reglas de asignación

      ¿Los agentes de soporte trabajan en productos específicos o tienen habilidades especiales? Algunos agentes trabajan en la instalación de paneles solares mientras que otros trabajan en el rendimiento de los paneles solares. Reglas de asignación
      ¿Los casos deben escalarse a alguien si no se resuelven en un tiempo específico? Sí, no podemos hacer que los clientes esperen más de 5 horas para resolver sus problemas. Reglas de escalada
      ¿Los clientes deben recibir respuestas automáticas? Sí, queremos que los clientes sepan que recibimos su problema y que nos preocupamos por ellos. Reglas de respuesta automática
    13. Plan de compromiso digital
      Pregunta Responder
      ¿Cuál es el tamaño máximo de los archivos adjuntos de correo electrónico admitidos? Menos de 25 MB está bien.
      ¿Los correos electrónicos salientes de Salesforce deben enrutarse a través de los servidores de correo electrónico de Ursa Major Solar por razones de seguridad o cumplimiento? No, los correos electrónicos salientes pueden enrutarse a través de Salesforce.
      ¿El servicio de atención al cliente utiliza plantillas de correo electrónico y, de ser así, existen requisitos de marca? No, no usamos plantillas de correo electrónico, pero deberíamos hacerlo en el futuro para mantener la coherencia. También deberíamos agregar nuestro logotipo a las plantillas de correo electrónico en algún momento.
      ¿Podemos agregar un fragmento de código al sitio web de nuestro cliente para mostrar un formulario web? Si no hay problema.
      ¿Necesitamos crear campos de casos personalizados para capturar información para el formulario web? No, no ahora. Veamos cómo funciona esto primero.
    14. Opciones de interacción digital con Service Cloud.
      Voz, Call Center y Open CTI Aumente la productividad del teléfono mediante la integración de Salesforce con sistemas de integración de telefonía informática (CTI) de terceros. Vea los datos de Salesforce para las llamadas entrantes, realice llamadas salientes directamente desde la consola e informe sobre el resultado de la llamada, la duración y más.
      Centro de ayuda de autoservicio Ayude a los clientes a encontrar respuestas, registrar casos y actualizar pedidos por su cuenta desde experiencias web de autoservicio. Personalice, cree y marque centros de ayuda con plantillas, componentes y aplicaciones fáciles de usar.
      Atención al cliente en redes sociales Ayude a los agentes de soporte a escuchar, responder y registrar casos para clientes en plataformas sociales como Twitter, Instagram, Facebook y más. Use palabras clave, clasificadores y detección de idioma para asegurarse de que los agentes encuentren las publicaciones correctas y trabajen en los problemas correctos.
      Chat y servicio integrado Interactúe con los clientes que navegan por la web con chat en vivo en tiempo real. Integre rápidamente capacidades de chat discretas en los sitios web de la empresa para navegadores móviles y de escritorio para permitir que los clientes conversen con los agentes y desvíen los casos antes de que se registren.
      Complementos para Mobile & Visual Remote Assistant Agregue servicio a las aplicaciones móviles para que los clientes puedan obtener ayuda de las aplicaciones en teléfonos y tabletas. Con un SDK (kit de desarrollo de software), los desarrolladores pueden permitir que los clientes creen y administren casos, chateen en vivo con agentes de soporte, chaten por video y compartan pantalla con agentes (Visual Remote Assistant) y vean artículos de la base de conocimientos sobre la marcha.
      Mensajería Interactúe con los clientes utilizando aplicaciones de mensajería como texto SMS y Facebook Messenger, para que puedan conectarse con los agentes de soporte al instante desde cualquier lugar. Ayude a los agentes a administrar varias conversaciones de texto a la vez y ver cada texto junto con los datos relevantes de Salesforce.
      Servicio de campo Apoye las visitas in situ en el campo con soluciones móviles como horarios de trabajo, inventario de camionetas y más, con o sin conexiones web.
    15. Las soluciones de AppExchange son la forma rápida y sencilla de ampliar la funcionalidad principal de Salesforce. Hay algo para cada desafío empresarial.
      Escribe Descripción
      aplicaciones Aplicaciones completas y especializadas
      Componentes Bloques de construcción utilizados para agregar funcionalidad a páginas, aplicaciones y soluciones Bolt
      Soluciones de pernos Soluciones industriales combinadas con servicios de socios
      Datos de rayos Datos de terceros para enriquecer sus datos de CRM
      Soluciones de flujo Acciones de flujo: elementos independientes que agregan funcionalidad a los flujos de proceso
      Plantillas de flujo: procesos comerciales preconstruidos, integrales, configurables y adaptados para adaptarse a casos de uso específicos de la industria
      Consultores Expertos que poseen un profundo conocimiento de la industria y habilidades comprobadas de Salesforce
    16. Las soluciones de AppExchange tienen varias cosas en común. Ellos:
      1. Ampliar la funcionalidad de Salesforce.
      2. Se puede distribuir a otros.
      3. Ejecutar en la plataforma Salesforce.
      4. Acelere el desarrollo de soluciones.
    17. Todas las soluciones de AppExchange comparten algunas cualidades importantes.
      1. Fácil de instalar : miles de soluciones se instalan con solo unos pocos clics.
      2. Fácil de configurar : integre y configure soluciones con clics, no con código.
      3. Revisión por pares : hay más de 80 000 revisiones por pares de las soluciones de AppExchange.
      4. Seguridad probada : para aparecer en AppExchange, cada solución pasa una revisión de seguridad rigurosa.
    18. Puede administrar el acceso a nivel de registro de estas cuatro maneras.
      1. Los valores predeterminados de toda la organización especifican el nivel predeterminado de acceso que los usuarios tienen a los registros de los demás. Utiliza la configuración de uso compartido de toda la organización para bloquear sus datos al nivel más restrictivo y luego usa las otras herramientas de seguridad y uso compartido a nivel de registro para otorgar acceso de forma selectiva a otros usuarios.
      2. Las jerarquías de funciones otorgan acceso a los usuarios que se encuentran más arriba en la jerarquía a todos los registros que pertenecen a los usuarios que se encuentran por debajo de ellos en la jerarquía. Las jerarquías de roles no tienen que coincidir exactamente con su organigrama. En su lugar, cada rol en la jerarquía debe representar un nivel de acceso a los datos que necesita un usuario o grupo de usuarios.
      3. Las reglas de colaboración son excepciones automáticas a los valores predeterminados de toda la organización para grupos particulares de usuarios, por lo que pueden acceder a registros que no son de su propiedad o que normalmente no pueden ver. Las reglas de colaboración, como las jerarquías de funciones, solo se utilizan para dar acceso a los registros a usuarios adicionales. No pueden ser más estrictos que la configuración predeterminada de toda su organización.
      4. El uso compartido manual permite a los propietarios de registros particulares compartirlos con otros usuarios. Aunque el uso compartido manual no está automatizado como la configuración de uso compartido en toda la organización, las jerarquías de roles o las reglas de uso compartido, puede ser útil en algunas situaciones, como cuando un reclutador que se va de vacaciones necesita asignar temporalmente la propiedad de una solicitud de empleo a otra persona.
    19. La auditoría proporciona información importante para diagnosticar posibles problemas de seguridad o tratar problemas reales. Alguien en su organización debe auditar regularmente para detectar posibles abusos. Busque cambios inesperados o patrones de uso.
      1. Campos de modificación de registros: todos los objetos incluyen campos para almacenar el nombre del usuario que creó el registro y quién lo modificó por última vez. Esto proporciona alguna información básica de auditoría.
      2. Historial de inicio de sesión: puede revisar una lista de intentos de inicio de sesión exitosos y fallidos durante los últimos seis meses. Para obtener más información, consulte Supervisar el historial de inicio de sesión .
      3. Seguimiento del historial de campos: puede activar la auditoría para realizar un seguimiento automático de los cambios en los valores de los campos individuales. Aunque la auditoría a nivel de campo está disponible para todos los objetos personalizados, solo algunos objetos estándar la permiten. Para obtener más información, consulte Seguimiento del historial de campos .
      4. Pista de auditoría de configuración: la Pista de auditoría de configuración registra cuándo se realizan modificaciones en la configuración de su organización. Para obtener más información, consulte Supervisar cambios en la configuración .
    20. Salesforce Identity le permite brindar a las personas adecuadas el acceso correcto a los recursos correctos en el momento correcto. Usted controla quién puede acceder a sus organizaciones y quién puede utilizar las aplicaciones que se ejecutan en Salesforce Platform, localmente, en otras nubes y en dispositivos móviles.
    21. Las principales características de Salesforce Identity.
      1. Inicio de sesión único
      2. Aplicaciones conectadas
      3. Inicio de sesión social
      4. Autenticación multifactor
      5. Mi dominio
      6. Gestión centralizada de cuentas de usuario
      7. Aprovisionamiento de usuarios
      8. Lanzador de aplicaciones
    22. Estos son los tres protocolos que siguen Salesforce y otros proveedores de identidad para implementar soluciones de identidad.
      1. SAML
      2. Autenticación automática 2.0
      3. Conexión de identificación abierta
    23. Especialista en paneles e informes de Lightning Experience
    24. La aplicación móvil Salesforce es una aplicación de clase empresarial que brinda a sus usuarios acceso instantáneo a los datos de CRM de su empresa desde un teléfono o tableta. Estas son algunas de las razones por las que la aplicación es tan increíble.
      1. La aplicación móvil se incluye con cada licencia de Salesforce. Sí, nos has oído bien, es gratis. Aplazar la implementación de su dispositivo móvil es básicamente como prender fuego a montones de dinero.
      2. La aplicación es plug-and-play , lo que significa que los usuarios simplemente la descargan de App Store® o Google Play™ y listo. Funciona fuera de la caja sin necesidad de configuración. Es muy rápido, en serio. En el tiempo que le tomó leer este párrafo, es posible que ya haya instalado la aplicación e iniciado sesión.
      3. La aplicación es multiplataforma , por lo que se ejecuta en los sistemas operativos Android e iOS. Automáticamente, sin que tengas que hacer ningún trabajo de desarrollo.
      4. La aplicación tiene capacidades fuera de línea. Sus usuarios móviles no se verán afectados por señales celulares caprichosas, regulaciones de la FAA, viajes en metro o edificios estilo búnker.
      5. Funciona a la perfección con la versión de escritorio de Lightning Experience , por lo que los usuarios pueden cambiar entre los dos sin perder el ritmo.
      6. No es solo una aplicación. es una plataforma Debido a que la plataforma Salesforce impulsa la aplicación móvil, es infinitamente personalizable. Puede usar herramientas de apuntar y hacer clic para personalizarlo.
    25. Tres características que puede usar para personalizar la aplicación móvil.
      1. Acciones rápidas
      2. Diseños compactos
      3. Navegación móvil, para aplicaciones Lightning y la aplicación Solo móvil
  2. Modelado y gestión de datos: 22%
    1. Los clientes potenciales son personas y empresas que ha identificado como clientes potenciales. Puede encontrar clientes potenciales de varias maneras. Muchos de sus clientes potenciales pueden ser referidos por otros clientes satisfechos. También puede recopilar clientes potenciales cuando los clientes se comuniquen con usted en su sitio web, pasen por su stand en una conferencia o mediante intercambios de información con empresas asociadas. En Salesforce, la información sobre prospectos se almacena en registros de prospectos.
      1. Algunas grandes ventajas de usar clientes potenciales. Puede realizar un mejor seguimiento, generar informes y orientar las campañas de marketing a clientes potenciales. Los clientes potenciales pueden ayudarlo a concentrarse en los tratos potenciales que tienen más probabilidades de cerrarse.
    2. Utilice el espacio de trabajo para realizar un seguimiento de las interacciones con los clientes potenciales, consultar el historial de campañas y planificar actividades futuras.
      1. Si el cliente potencial está involucrado en alguna campaña de marketing, se enumeran en el Historial de campañas para el cliente potencial.
      2. Revise la pestaña Detalles del cliente potencial para encontrar y actualizar la información sobre el cliente potencial.
      3. Use la pestaña Actividad del cliente potencial para registrar sus llamadas y correos electrónicos para ayudarlo a recordar de qué hablaron y cómo respondió el cliente potencial: planifique para el futuro creando Tareas o Eventos .
      4. Use la pestaña Noticias del cliente potencial para consultar las últimas noticias de la industria del cliente potencial. Inicie sesión con su cuenta de Twitter para buscar y seguir el feed de Twitter del cliente potencial.
      5. Conéctese con sus compañeros de trabajo para hacer preguntas, buscar consejos o proporcionar información en la pestaña de Chatter del cliente potencial. Las noticias en tiempo real de Chatter para el registro también se muestran cuando crea actividades.
    3. Puede convertir el registro de prospecto en una oportunidad cuando califica un prospecto. Luego, trabaja su oportunidad hasta que cierra el trato, ya sea completándolo o cancelándolo.
      1. Cuando convierte un prospecto, Salesforce usa la información almacenada en el registro del prospecto para crear una cuenta comercial, un contacto y una oportunidad. Si habilitó cuentas personales y el registro de cliente potencial no incluía el nombre de una empresa, el cliente potencial se convierte en una cuenta personal y una oportunidad.
  3. Lógica de Negocios y Automatización de Procesos : 28%
  4. Interfaz de usuario: 17%
    1. Lightning App Builder es una herramienta de apuntar y hacer clic que facilita la creación de páginas personalizadas para la aplicación móvil Salesforce y Lightning Experience, brindando a sus usuarios todo lo que necesitan en un solo lugar.
    2. Con Lightning App Builder, puede crear:
      1. Aplicaciones de una sola página que profundizan en páginas estándar
      2. Aplicaciones de estilo de panel, como aplicaciones para realizar un seguimiento de las principales perspectivas de ventas o clientes potenciales clave para el trimestre
      3. Aplicaciones de "punto" para resolver una tarea en particular, como una aplicación de gastos para que los usuarios ingresen los gastos y controlen los gastos que han enviado.
      4. Páginas de registro personalizadas para sus objetos, adaptadas a las necesidades de sus usuarios
      5. Páginas de inicio personalizadas que contienen los componentes y funciones que sus usuarios utilizan más
    3. Las páginas Lightning admiten estos componentes:
      1. Componentes estándar: los componentes estándar son componentes Lightning creados por Salesforce.
      2. Componentes personalizados: los componentes personalizados son componentes Lightning que usted o alguien más ha creado. Puede configurar componentes Lightning personalizados para que funcionen en Lightning App Builder.
      3. Componentes de terceros en AppExchange : AppExchange proporciona un mercado para componentes Lightning. Puede encontrar paquetes que contienen componentes ya configurados y listos para usar en Lightning App Builder.
    4. Puede crear diferentes tipos de páginas Lightning con Lightning App Builder. Vamos a ver estos tres tipos.
      1. Página de aplicación : use una página de aplicación para crear una página de inicio para una aplicación de terceros que puede agregar directamente a los menús de navegación de la aplicación móvil Salesforce y Lightning Experience. Luego, sus usuarios tienen una página de inicio de la aplicación donde pueden acceder rápidamente a los objetos y elementos más importantes.
      2. Página de inicio: cree páginas de inicio con características relevantes para tipos específicos de usuarios y asigne las páginas personalizadas a diferentes aplicaciones o combinaciones de aplicación y perfil de usuario. Las páginas de inicio personalizadas solo se admiten en Lightning Experience.
      3. Página de registro : con una página de registro, puede crear una versión personalizada de la página de registro de un objeto, adaptándola a las necesidades de sus usuarios. Las páginas de registro personalizadas se admiten en Lightning Experience y en la aplicación móvil Salesforce.
    5. También puede personalizar la página para diferentes tipos de usuarios y asignar páginas personalizadas a diferentes aplicaciones y combinaciones de aplicaciones y perfiles.
    6. Tienes cuatro opciones para activar la página de registro de rayos.
      • Haga que la página sea la organización predeterminada para el objeto.
      • Convierta la página en la página de registro de objetos predeterminada para aplicaciones Lightning específicas.
      • Asigne la página a una combinación de aplicaciones Lightning, tipos de registros y perfiles.
      • Asigne la página a un factor de forma, como una computadora de escritorio o un teléfono.
    7. Puede crear un componente Lightning personalizado utilizando dos modelos de programación, componentes web Lightning y componentes Aura.
    8. Sus componentes Lightning personalizados no funcionan automáticamente en páginas Lightning o en Lightning App Builder. Para que un componente personalizado se pueda utilizar en ambos, debe configurar el componente y su paquete de componentes para que sean compatibles con Lightning App Builder y páginas Lightning.
  5. Implementación de la aplicación : 10 %

Recursos adicionales

Algunos blogs lo ayudan a prepararse para el examen de Salesforce Certified Platform App Builder.

  1. Libro: Certificación de Salesforce Platform App Builder: una guía de estudio práctica .
  2. Regístrese en el seminario web de días de certificación de Salesforce para: certificación de Platform App Builder
  3. Capacitación de instructores principales por Trailhead
    1. Trailhead Virtual Bootcamp para Platform App Builder (TVB403)
    2. Prepárese para su examen de certificación de Platform App Builder (CRT403)
    3. Desarrollo declarativo para creadores de aplicaciones de plataforma ampliado (DEX-403E)

Conclusión

Si tiene experiencia básica con todos los temas anteriores, aprobar el examen será pan comido y podrá obtener el codiciado examen de certificación Salesforce Certified Platform App Builder. Sin embargo, si no tiene suficiente experiencia (6 a 9 meses) con la plataforma de Salesforce y planea convertirse en un Creador de aplicaciones de plataforma certificado. Le sugiero que dibuje un plan de 6 a 9 meses (finalice el Trailhead anterior para prepararse).

Espero que encuentre útiles estos consejos y recursos. Si pones el tiempo y el esfuerzo, tendrás éxito. ¡Feliz estudio y buena suerte!

Evaluación formativa:

¡Quiero saber de ti!

¿Ha realizado el examen de creación de aplicaciones de plataforma certificada de Salesforce? ¿Te estás preparando para el examen ahora? ¡Comparte tus consejos en los comentarios!

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://automationchampion.com/2022/09/16/salesforce-platform-app-builder-certification-exam/

Categories
Developers Tutoriales de Salesforce

Redacción de los servicios REST de Apex (y cuándo no hacerlo) ☁️

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.

Redacción de los servicios REST de Apex (y cuándo no hacerlo) | Blog de desarrolladores de Salesforce

Apex es el lenguaje central para personalizar la lógica comercial en la plataforma Salesforce y para la integración con sistemas de terceros. Siempre que necesite exponer datos de la plataforma o lógica personalizada a un sistema externo, una de sus opciones es crear un punto final REST de Apex personalizado. En esta publicación, analizaremos los casos de uso para implementar puntos finales REST de Apex personalizados y compartiremos consejos sobre cómo implementarlos y probarlos.

Comprender los casos de uso y las alternativas a los puntos finales REST personalizados

Los puntos finales REST de Apex personalizados son bastante potentes porque le brindan un control total sobre la lógica comercial para su integración. Sin embargo, es fácil pasar por alto el hecho de que su código de terminal personalizado genera un costo de mantenimiento y que hay una serie de alternativas que no requieren código en el lado de Salesforce.

Salesforce tiene un amplio conjunto de API que pueden cubrir sus necesidades de integración:

  • La API REST es la API más flexible. Entre otras cosas, expone operaciones CRUD en registros y consultas sobre otras entidades, como objetos de modelo de datos o límites. Sin embargo, las solicitudes a esta API operan fuera de las transacciones, y esto puede ser un problema cuando necesita encadenar operaciones de escritura en el contexto de una integración. Por ejemplo, si necesita actualizar tres registros y la segunda solicitud falla, debe implementar una estrategia de reversión manual para cancelar la primera operación.
  • La API compuesta es una gran adición a la API REST. Le permite encadenar llamadas API REST dentro de un contexto transaccional gracias a un indicador allOrNone (ver documentos ). Tenga en cuenta que los cambios se pueden revertir en caso de errores. Además, admite operaciones encadenadas para crear registros vinculados, como una Cuenta, una Oportunidad y un Contacto, con una sola solicitud.
  • LaAPI de la interfaz de usuario es excelente para recuperar datos y metadatos asociados con objetos y registros en llamadas de API únicas. También admite operaciones CRUD en registros individuales.
  • La API de GraphQL (Beta a partir del lanzamiento de Summer '22) es la última incorporación a la familia de API. Aprovecha el lenguaje de consulta estándar de GraphQL y le permite ejecutar consultas en la API de la interfaz de usuario. A diferencia de otras API, la API de GraphQL es de solo lectura.

Lea la documentación de esas API y explórelas con herramientas como la colección de API de Salesforce Platform para Postman . Luego, si su caso de uso requiere alguna lógica de negocios personalizada, como el cálculo usando varios registros y una serie de operaciones CRUD que las API no pueden cubrir, puede implementar un punto de enlace REST de Apex personalizado.

Exponer un punto final REST personalizado con Apex

Implementar un punto final REST personalizado

Lo primero que debe hacer es crear una clase de Apex global anotada con @RestResource (consulte los documentos ) y una propiedad urlMapping . Esto le permite exponer su recurso usando un patrón de URL como:

Tenga en cuenta el uso de un carácter comodín opcional * en nuestro valor de urlMapping . Esto capturaría todas las siguientes URL de solicitudes HTTP donde MY_DOMAIN_HOST es el nombre de host de Mi dominio:

Importante: a diferencia de Apex, las URL distinguen entre mayúsculas y minúsculas. Como práctica recomendada general de REST, mantenga las URL en minúsculas.

Ahora que ha declarado una clase de recurso REST, debe crear uno o más métodos de Apex para capturar solicitudes de varios métodos HTTP . Para hacerlo, deberá declarar los métodos de Apex estáticos anotados por uno de estos:

Anotación método HTTP Uso de REST convencional
@HttpDelete DELETE Eliminación de un recurso.
@HttpGet GET Lectura de un recurso.
@HttpPatch PATCH Actualización de un recurso. La diferencia con PUT es que PATCH acepta una copia parcial del recurso para una actualización.
@HttpPost POST Creación de un nuevo recurso.
@HttpPut PUT Actualización de un recurso. La diferencia con PATCH es que PUT espera una copia completa del recurso para una actualización.

Por ejemplo, el siguiente método captura todas las solicitudes GET entrantes para nuestro recurso REST. El nombre del método no tiene importancia, pero se recomienda que al menos mencione el método HTTP para simplificar las pruebas (spoiler: estará llamando al método en sus pruebas).

Si es necesario, puede agregar la anotación @ReadOnly (ver documentos ) a su método. Esto duplica el número máximo de filas devueltas a 100 000 para las consultas SOQL que se ejecutan en este método. Como nota al margen, la anotación @ReadOnly no se limita a los métodos de extremo REST, también está disponible para los servicios web SOAP y la interfaz programable.

Ahora que tiene la firma del método, el siguiente paso es implementar su cuerpo. Para hacerlo, confiamos en la clase System.RestContext (consulte los documentos ) para capturar los detalles de la solicitud entrante como una instancia de System.RestRequest (consulte los documentos ).

Con esto, así es como se vería la implementación de una solicitud GET "Hola, mundo":

En nuestro ejemplo, el método devuelve una cadena, pero puede trabajar con cualquier tipo de objeto o contenido binario. Cada vez que especifica un tipo de devolución para el método de Apex, la Plataforma de Salesforce serializa su valor como JSON en el cuerpo de la respuesta.
Si desea tener más control sobre la respuesta, puede trabajar con un método void y pasar el resultado a una instancia de System.RestResponse (ver docs ) que recupera del RestContext . Esto le permite controlar el tipo de devolución, los encabezados y el código de estado HTTP .

Aquí está el mismo ejemplo de "Hola, mundo" usando RestResponse :

Otra sutileza que vale la pena mencionar es que si su solicitud tiene un cuerpo JSON, puede extraer valores automáticamente gracias a los parámetros del método Apex. Por ejemplo, si el cuerpo de su solicitud usa este formato:

Puede capturar valores de parámetros con esta firma de método de Apex:

Ahora que sabe cómo implementar un punto de enlace REST de Apex personalizado, veamos cómo puede escribir pruebas para él.

Escribir pruebas de Apex para un punto final REST personalizado

Al probar su punto final, simplemente puede falsificar el objeto RestContext para pasar sus valores de prueba. Por ejemplo, esta es una prueba que cubre nuestro ejemplo de "Hola, mundo". Tenga en cuenta cómo falsificamos el URI de solicitud y el método HTTP e invocamos directamente el método que estaría expuesto como un recurso HTTP.

Al probar un método de punto final vacío que usa RestContext.response en lugar de un tipo de retorno, puede verificar la respuesta del servidor desde el contexto de prueba:

palabras de cierre

Esto concluye nuestra publicación sobre puntos de enlace REST de Apex personalizados. Ahora debería tener una buena idea de las alternativas para escribir su propio punto final y, si se trata de esto, cómo puede implementar uno con las pruebas relacionadas. Asegúrese de consultar nuestra aplicación de muestra Recetas de Apex para ver ejemplos de recursos REST de Apex y sus pruebas asociadas. Recuerde siempre que el código que no escribe es código que no tiene que mantener.

Recursos

Recursos de puntos finales de Apex personalizados

Recursos de la API de Salesforce

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 de pila completa y disfruta trabajar en proyectos DevOps, robótica y realidad virtual. 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

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2022/08/writing-apex-rest-services-and-when-not-to.html

Categories
Developers Enterprise Software Tutoriales de Salesforce

Create Interactive Emails with AMP and Marketing Cloud

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 mayoría de los correos electrónicos que puede recibir a diario como consumidor son iguales. En su mayoría son información estática que no te permite interactuar y te envía a un sitio web para hacerlo.

Al implementar Accelerated Mobile Pages (AMP) en tus correos electrónicos, puedes cambiar esto para tus clientes. Esta entrada del blog le presentará los fundamentos de AMP y cómo implementar experiencias de correo electrónico interactivas basadas en datos en Marketing Cloud.

AMP

AMP, en pocas palabras, es un marco de componentes web diseñado para experiencias móviles de usuarios finales B2C. Fue desarrollado por Google y ahora forma parte de la fundación OpenJS. A estas alturas, es más que probable que hayas experimentado AMP desde la perspectiva del usuario-tierra. Por ejemplo, cuando buscas en Google tu localidad o periódico favorito, es posible que experimentes AMP. La siguiente captura de pantalla muestra un resultado de búsqueda de este tipo. El símbolo del rayo en la esquina superior derecha indica que este contenido se sirve a través de AMP.

Puedes aprender más sobre AMP en general, así como sus escenarios de uso en el sitio del proyecto AMP. Sin embargo, para esta entrada del blog, veremos la posibilidad de utilizar AMP, y aquí el subconjunto AMP Email, dentro de tus correos electrónicos de Marketing Cloud.

Correos electrónicos interactivos con AMP

Veamos un ejemplo de correo electrónico interactivo en el siguiente GIF. Imagina que has pedido una bicicleta nueva y has recibido el habitual correo electrónico de confirmación. Con los componentes de AMP, este correo electrónico ya no es estático. El correo electrónico ofrece una experiencia interactiva para programar una cita de preparación. No tendrá que salir del correo electrónico para seleccionar la fecha, la hora, su ubicación más cercana, o para completar la reserva en sí.

Este es sólo un ejemplo de cómo se pueden aprovechar los componentes de AMP en el correo electrónico. Vea más ejemplos aquí. El siguiente GIF muestra otro ejemplo, en el que el usuario puede cambiar entre diferentes imágenes en un carrusel – directamente desde su correo electrónico.

Vamos a ver qué se necesita para construir una experiencia de carrusel de este tipo.

Implementación de frontales de correo electrónico interactivos

Como los componentes AMP son componentes web, se utilizan como el marcado HTML estándar. Los dos siguientes fragmentos de código muestran el marcado para proporcionar una experiencia de carrusel como la mostrada anteriormente.

Cuando observes el marcado head del primer bloque de código, verás que:

  • La primera acción es cargar el núcleo del framework.
  • Luego se carga el o los componentes de AMP de forma asíncrona. En nuestro caso, se trata de un componente, amp-carousel.
  • Dentro de la etiqueta style puedes entonces definir cualquier estilo personalizado para los componentes AMP utilizados.
<!doctype html>
<html amp4email data-css-strict lang="es">
<head> ... <meta charset="utf-8"> <script async src="https://cdn.ampproject.org/v0.js"></script> <script async custom-element="amp-carousel" src="https://cdn.ampproject.org/v0/amp-carousel-0.1.js"></script> <style amp4email-boilerplate>body{visibility:hidden}</style> <style amp-custom> ... amp-carousel .slide{ display:grid; transición: transformar 0.2s } ... </estilo>
</head>
<body> ...
</body>

En el segundo bloque de código, echaremos un vistazo al marcado para integrar un componente AMP en el body de HTML. Y no te preocupes, es sólo de marcado.

  • El amp-carousel se integra como cualquier otra etiqueta HTML. Los atributos de la etiqueta son específicos para el carrusel y variarán para otros componentes de AMP.
  • Dentro de la etiqueta amp-carousel puedes utilizar cualquier HTML, como el que hemos utilizado para implementar los enlaces y las imágenes. Ten en cuenta que las imágenes también son componentes AMP, ya que puedes identificarlas mediante la etiqueta amp-img. Sin embargo, no tienes que cargarlas por separado en la cabecera HTML, ya que se envían como parte del marco de trabajo AMP base.
!doctype html>
<html amp4email data-css-strict lang="es">
<head> ...
</head>
<body> ... <div class="main"> <amp-carousel width="700" height="450" layout="responsive" type="slides" autoplay loop> ... <a href="https://ntoretail.com/shop/mens" class="slide"> <h2><span>Mens</span></h2> <amp-img src="https://s3.amazonaws.com/nto/images/home-mens.png" width="450" height="300" layout="responsive" alt="Ropa de hombre"></amp-img> </a> <a href="https://ntoretail.com/shop/womens" class="slide"> <h2><span>Womens</span></h2> <amp-img src="https://s3.amazonaws.com/nto/images/home-womens.png" width="450" height="300" layout="responsive" alt="Ropa de mujer"></amp-img> </a> ... </amp-carrusel> </div> ...
</body>
</html>

Eso es prácticamente todo sobre cómo construir la experiencia del front-end para correos electrónicos interactivos usando AMP. Pero espera, ¿qué hay que hacer cuando se quiere impulsar una experiencia dinámica en el momento de la apertura del correo electrónico? Esto es lo que veremos a continuación.

Proporcionar datos dinámicos utilizando recursos de código CloudPage

Una de las capacidades principales de Marketing Cloud es proporcionar contenido de marketing programático utilizando JavaScript del lado del servidor mediante recursos de código. Y algunos componentes de AMP, concretamente amp-form y amp-list, proporcionan la capacidad de consumir datos sobre la apertura del correo electrónico desde una fuente de datos como un Code Resource. Esto es una ventaja para todos.

El siguiente ejemplo de código abreviado muestra lo que se necesita para construir un JSON Code Resource para componentes AMP. El requisito clave para sus datos es que los construya dentro de un único array, y devuelva ese array como el valor de la clave del objeto items.

<script runat=»server» language=»JavaScript»> .. // Para devolver los datos, AMP requiere que los datos sean devueltos en un objeto con un único array llamado items. var obj = {«items»: [ {«clave»: «valor» } ]}; // Para que el Recurso de Código renderice los valores de ese array debes Stringify y Write el valor para renderizarlo. Write(Stringify(obj)); …

Eso es todo. Bueno, no del todo. Hay un par de cosas más a tener en cuenta, como añadir medidas de seguridad a tu JavaScript del lado del servidor. Puedes encontrar un ejemplo exhaustivo en el repo de GitHub de AMP Demos.

Sus próximos pasos

El correo electrónico de AMP es una emocionante incorporación a Marketing Cloud. Se basa en los principios de desarrollo web estándar y proporciona interactividad inmediata para sus correos electrónicos. Para empezar, hemos preparado una nueva aplicación de demostración con mucho código fuente para usted – que puede encontrar aquí en la Galería de muestras.

Para llevar esto a producción, regístrese en un proveedor de correo electrónico compatible y envíe un formulario de verificación del remitente:

Pruébelo y experimente el cambio de experiencias de correo electrónico estáticas a atractivas.

Original: https://developer.salesforce.com/blogs/2021/03/create-interactive-emails-with-amp-and-marketing-cloud.html

Categories
Developers Enterprise Software Tutoriales de Salesforce

Programe su ruta en Salesforce Flow

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.

En Invierno ’20 introdujimos la posibilidad de programar un flujo, lo que permite ejecutar un determinado flujo a diario, por ejemplo. Con la primavera del 21, damos un paso más al introducir rutas programadas dentro de un flujo. Con Rutas programadas puede desencadenar ciertos tipos de eventos basados en campos de fecha en el objeto que desencadenó el flujo. Un gran ejemplo de una ruta programada sería crear una tarea Y programar el envío de una notificación a un usuario una hora antes de la fecha de vencimiento de la tarea. En el pasado, esto requeriría mucho más trabajo pesado.

¿Cómo funcionan?

También hay que tener en cuenta que la funcionalidad sólo aparece si se utiliza el diseño Freeform en Flow. No están disponibles en el constructor de diseño automático que actualmente está en beta. Cuando hayas cumplido las condiciones anteriores y luego elijas el objeto, la opción Ruta programada aparecerá automáticamente en el paso inicial del flujo.

La interfaz de usuario para configurar las rutas programadas es similar a la creación de un paso de Decisión, pero en lugar de especificar los resultados, ahora se especifican los distintos puntos en el tiempo para ejecutar esa ruta.Para cada ruta, debe especificar el campo de fecha/hora que se utiliza para calcular la hora de inicio y luego especificar cuántas horas o días más tarde debe ejecutarse esa ruta.

Programación de recorridos de prueba

Usando la Aplicación de ejemplo de eCars podemos echar un vistazo a cómo utilizar las rutas programadas. Pulsar Motors es un fabricante de coches eléctricos. En el pasado, un cliente sólo venía al concesionario para probar los coches. Desgraciadamente, con la actual crisis de Covid-19, todo esto ha cambiado y es necesario programar las pruebas de conducción para que se tomen todas las medidas de seguridad necesarias.

Para dar soporte a esto, Pulsar Motors ha creado el objeto personalizado Test Drive para gestionar la programación de las pruebas de conducción. En este objeto se guarda la información del contacto que quiere realizar el test drive, con qué modelo y para cuándo está programado. Ante esta nueva forma de trabajar, deciden que sería una gran idea enviar algunos recordatorios a los clientes para reducir el número de inasistencias. Así que usando Flow, deciden:

  • Enviar un correo electrónico de confirmación cuando se crea la prueba de conducción.
  • Enviar un correo electrónico de recordatorio un día antes de que se programe la prueba de conducción.
  • Enviar un SMS recordatorio una hora antes de que se programe la prueba de conducción.

Para empezar, podemos crear un flujo activado por el registro que se dispara al crear y actualizar que se ejecuta después de guardar el registro.

A continuación, debemos especificar el objeto que dispara el flujo. Aquí elegimos el objeto Test Drive y establecemos la condición de que la fecha/hora del test drive debe estar establecida.

Esto es importante porque programamos rutas que sólo estarán disponibles en este caso de uso cuando se seleccione ‘Sólo cuando se actualice un registro que cumpla los requisitos de la condición’. Una vez guardado esto, la opción Rutas programadas se hace ahora visible y podemos configurarlas.

Dos ejemplos de Rutas Programadas que podemos utilizar son:

  • Configurar un recordatorio por correo electrónico que se dispare un día antes de la prueba de conducción.
  • Por ejemplo, la prueba de conducción de un vehículo
  • Configurar un recordatorio por SMS una hora antes de la prueba de conducción.

Nótese que en ambos ejemplos se requiere que apunten a una Fuente de Tiempo, ésta define el campo que busca el horario – y luego define el número de días u horas antes de la fuente de tiempo que se dispara la ruta.

Cada ruta puede entonces ramificarse desde el inicio del flujo para que pueda ejecutar múltiples acciones desde el único flujo basado en la programación definida.

Depuración

Una vez que el Flujo está activo puede querer echar un vistazo a lo que está programado actualmente. Hemos creado un registro de prueba de conducción con una Hora de Recogida del 19/2/2021 a las 8:30am.

Basado en nuestra definición de flujo, esperamos que el recordatorio por correo electrónico se envíe el 18/2/2021 a las 8:30am (un día antes) y el recordatorio por SMS el 19/2/2021 a las 7:30am (una hora antes). Podemos comprobar que esto se ha programado navegando a Configuración → Entornos → Monitorización → Flujo de trabajo basado en el tiempo.

Ahí podemos ver las dos rutas que se están programando para el mismo registro:

Las citas tienen la costumbre de cambiar, así que ¿qué tenemos que hacer cuando la hora cambia en el disco? La persona que hace las pruebas de conducción decide que las 8:30 es muy temprano y se cambia la hora a las 12:30. Llegados a este punto, es posible que temamos que ahora acabemos con dobles recordatorios, pero cuando miramos los flujos de trabajo basados en la hora, vemos que éstos han sido sustituidos por los nuevos valores y los antiguos han desaparecido. Así que se ha adaptado automáticamente a la nueva hora de la cita establecida.

Conclusión

Las rutas programadas son una nueva y fantástica adición a Flow que abre un montón de posibilidades sin tener que escribir código. Sólo hay que tener en cuenta que existen requisitos para poder utilizarlas y seguir la documentación adecuadamente.

Recursos

Documentación de Salesforce Flow

Automatice sus procesos de negocio con Salesforce Flow

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2021/03/schedule-your-path-in-salesforce-flow.html

Disparo Tiempo Sin condición Existe una condición
Cada vez que se actualiza un registro y cumple los requisitos de la condición Sólo cuando un registro se actualiza y cumple los requisitos de la condición
Se crea un registro antes de guardar
después de guardar
Se actualiza un registro antes de guardar
después de guardar
Se crea o actualiza un registro antes de guardar
después de guardar
Se elimina un registro después de guardar
Categories
Developers Enterprise Software Tutoriales de Salesforce

Aprovechando las nuevas características de ESXX en LWC

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.

Cada año el Comité Técnico Internacional 39 (TC39), del que Salesforce es miembro, publica una nueva edición de ECMA-262, los estándares de especificación del lenguaje ECMAScript, en los que se basa JavaScript. La próxima edición es la ES2021 (ES12), que actualmente se encuentra en borrador y cuya publicación está prevista para junio. Los navegadores, compiladores (como Babel y Typescript) y tiempos de ejecución (como Node.js) trabajan duro para mantenerse al día con los estándares de ECMAScript mediante la implementación de soporte para las nuevas características añadidas. Continúe leyendo para conocer algunas de las características más nuevas y geniales de ECMAScript y cómo puede utilizarlas en Lightning Web Components.

Proceso de compilación de LWC

Para entender las implicaciones del uso de ciertas características de ES6+ JavaScript en LWC, es importante desplegar cómo funciona el proceso de compilación de LWC. Cuando se empujan o despliegan archivos LWC a la plataforma, se realizan varias tareas.

Primero, ejecutamos un linter que escanea tu código utilizando la configuración base de nuestro complemento LWC Eslint. Esto evita errores comunes con LWC, y hace cumplir otras restricciones de la plataforma Salesforce. Tenga en cuenta que esto es diferente a cuando el linter se ejecuta localmente en VSCode. En VSCode puedes elegir qué configuración de linting utilizar: más o menos restrictiva.

A continuación, compilamos el código que has escrito. El compilador de LWC utiliza Babel y Rollup para realizar esta tarea. Este proceso conlleva tres pasos: analizar, transformar y agrupar.

En primer lugar, el analizador sintáctico (Babel) lee tu código para entender qué estructuras sintácticas estás utilizando. Por ejemplo, identifica si estás usando una función, una clase (ES6), la sintaxis de extensión de objetos (ES9), o el operador de encadenamiento opcional (ES11). Actualizamos el analizador a menudo para que pueda analizar las nuevas estructuras sintácticas incluidas en las nuevas versiones de ES

Entonces, el código se transforma para generar dos salidas diferentes:

  • Salida ES6 – Este código se ejecuta en los navegadores modernos, que soportan la sintaxis ES6 de forma nativa y mejoran el rendimiento considerablemente. Para esta versión del código, transformamos un subconjunto de características de la sintaxis ES6+ – incluyendo ES7, ES8, Rest/Spread Properties, y Class Fields – a ES6.
  • Salida de ES5 – Este código se ejecuta en navegadores antiguos (los llamamos navegadores de compatibilidad), como Internet Explorer 11. Estos navegadores no soportan las características de sintaxis incluidas en versiones superiores a ES5, por lo que transformamos un subconjunto de características de sintaxis de ES5+ (las mismas que las enumeradas anteriormente, más las características de sintaxis de ES6) a ES5.
  • Salida de ES5

Ambas salidas también incluyen los archivos de plantilla y CSS compilados, que se agrupan utilizando Rollup. El archivo de plantilla se compila porque el DOM del componente se genera dinámicamente en JavaScript. El archivo CSS se transforma para dar alcance a los estilos del componente cuando se utiliza el Shadow DOM sintético.

¿Qué ocurre si se utiliza una característica sintáctica que no transformamos (por ejemplo, el operador de encadenamiento opcional de ES11)? Si el analizador sintáctico lo entiende (normalmente lo hace, ya que lo actualizamos a menudo), la característica se incluye en ambas versiones de código, y sólo funciona si tu navegador es capaz de entender la sintaxis (a menudo es el caso de los navegadores modernos).

Nota que este panorama es correcto en la fecha de publicación del blog. Sin embargo, puede cambiar pronto, ya que el equipo de LWC está trabajando en la adición de nuevas transformaciones para mantenerse al día con las sintaxis recién introducidas.

Ejecución en tiempo de ejecución y polyfills

Ahora hablemos de la ejecución en tiempo de ejecución. Cuando tu aplicación se ejecuta en un navegador, utilizamos el agente de usuario para detectar qué navegador. Dependiendo del navegador, se carga la versión ES5 o ES6 del código, junto con los polyfills necesarios en el caso de los navegadores de compatibilidad. Un polyfill es una característica que falta (normalmente un objeto o método de la API del navegador) que se añade al lenguaje en tiempo de ejecución. Tenga en cuenta que son diferentes de las características de sintaxis. Algunos ejemplos de características que pueden ser polyfilled son Promise (ES6), Object.entries() (ES8), y Promise.any() (ES12). LWC utiliza core-js polyfills.

  • Para los navegadores de compatibilidad, todas las funciones de ES6 están polifiladas.
  • Para los navegadores de compatibilidad, todas las funciones de ES6 están polifiladas
  • Para los navegadores modernos, no se cargan los polyfills de ES6, ya que no son necesarios.
  • Para los navegadores de compatibilidad, se cargan todos los polyfills de ES6

¿Qué ocurre si utilizas una API para la que no proporcionamos un polyfill (por ejemplo, Promise.any() de ES12)? Funciona si el navegador en el que ejecutas la app lo soporta, siempre y cuando Locker lo soporte también.

Nota: para LWC OSS sólo se genera por defecto la versión ES6. También linting y polyfilling no son parte de LWC OSS fuera de la caja.

Características de ESXX soportadas en LWC

Los nuevos estándares de ECMAScript incluyen características que te harán mucho más productivo, y tu código más eficiente y fácil de leer. Puedes utilizar la mayoría de ellas en LWC, dado que están soportadas por los navegadores en los que se ejecuta tu aplicación. Esto no es diferente de lo que ocurre con las aplicaciones JavaScript normales!

Estas son algunas de las características más recientes que puedes utilizar a día de hoy:

He creado una aplicación que facilita la comprensión de las características de ESXX que se pueden utilizar en LWC, dado que son soportadas por su navegador, y cómo. La aplicación contiene componentes con ejemplos de código que muestran las características incluidas en las versiones desde ES9 hasta ES12, aunque recuerda que las características de las versiones anteriores también están soportadas. Puedes mirar el código de cada ejemplo, y opcionalmente depurar cada ejemplo individualmente con las herramientas de desarrollo del navegador, para una comprensión más profunda.

También he creado una versión LWC OSS de la aplicación, porque cuando se crean aplicaciones con LWC OSS, no se ejecuta Locker y se relajan algunas restricciones para poder utilizar más funciones de ESXX que soporta la plataforma Salesforce. Te recomiendo que clones esta versión si sueles desarrollar LWC fuera de la plataforma.

¡Un gran poder conlleva una gran responsabilidad!

En esta entrada del blog, te expliqué cómo funciona el proceso de compilación de LWC, cómo proporcionamos una versión compatible con versiones anteriores de tu código y cómo rellenamos las características que faltan (ES6, y algunas de ES7 y ES8) para los navegadores más antiguos. También ha aprendido que puede utilizar la mayoría de las demás características de ESXX, siempre que utilice un navegador que las soporte.

Para ayudarte a saber qué características de ESXX entran en cada categoría, he compartido dos aplicaciones que te muestran las características soportadas y cómo usarlas. Clone la aplicación LWC o la aplicación LWC OSS y compruébelo. Y si quieres aprender más, que sepas que voy a hacer una serie de webinars en Trailhead Live sobre este tema empezandoel jueves 25 de febrero – asegúrate de añadirlo a tu calendario. Gracias por leer y ¡feliz codificación!

Recursos relacionados

Trail: Aprende a trabajar con JavaScript

Sobre el autor

Alba Rivas trabaja como Lead Developer Evangelist en Salesforce. Se centra en la estrategia de adopción de Lightning Web Components y Lightning. Puede seguirla en Twitter @AlbaSFDC.

Cada año el Comité Técnico Internacional 39 de Ecma (TC39), del que Salesforce es miembro, publica una nueva edición de ECMA-262, los estándares de especificación del lenguaje ECMAScript, en los que se basa JavaScript. La próxima edición es ES2021 (ES12), que se encuentra actualmente en fase de borrador y cuya publicación está prevista para junio. Navegadores, compiladores (como Babel y […]

El post Aprovechando las nuevas características de ESXX en LWC apareció primero en Blog de Desarrolladores de Salesforce.

Esta es una traducción realizada por EGA Futura, y este es el link a la publicación original: https://developer.salesforce.com/blogs/2021/02/leveraging-the-newest-esxx-features-in-lwc.html