Categorías
Desarrollo en Salesforce

Salesforce » Spring ’26: Todo lo que nadie te mostró [Masterclass]

Salesforce Spring ’26 no es solo el PDF de release notes: es lo que cambia de verdad cuando tu empresa despliega Apex, Lightning Web Components, integraciones y agentes en la misma Org.

En esta masterclass de Discover, Juan Manuel Garrido, Francisco Morales, Josué Mendoza y Esteban Morales abren la clase 2 del ciclo Spring ’26: el ángulo full developers, con flujos reales, límites, workarounds y decisiones de producción.

Abajo está el video completo. Después, el mapa editorial: Client Credentials, tags de tests, expresiones en LWC, Apex Cursors, Agent Script, Dark Mode, Error Console y PDFs desde Apex. Al final, preguntas frecuentes y un espacio para la transcripción.

Play

Por qué esta clase no es un replay del 5 de marzo?

Hace dos semanas el foco fue Flow-first: analíticas, Flow Tests, data tables y Connected Apps. El 19 de marzo bajaron a Setup y a patrones que los release notes entierran en letra chica.

Fran lo dijo de entrada. Hoy es full developers. Dark Mode y Agentforce se disfrutan desde varios roles; el resto es oficio de código, deploy y agentes con control.

Si tu empresa vive en el ecosistema Salesforce, esta sesión completa la anterior. Encaja con otras masterclass de Discover: Spring ’26 features, Seguridad y Gobernanza, Data Cloud desde cero y Facturas y Pedidos con Visualforce e IA.

También bajaron un marco mental. La línea admin versus developer se vuelve más fina cuando IA y Flow se mezclan con una clase Apex chica: hoy son más híbridos que nunca.

Consejo: abramos la Org de sandbox junto al video y anotemos qué feature tocamos primero. Priorizar gana a memorizar el PDF.

Client Credentials: el reminder que no conviene olvidar

Josu reforzó el cierre de la clase anterior. Spring ’26 ya no deja crear Connected Apps al estilo viejo: client id, client secret, más usuario, password y token de seguridad.

Salesforce empuja Client Credentials (en el vivo también apareció como Application Credentials). El sistema externo autentica sin guardar passwords de la Org.

Las apps viejas no caen mañana. El mensaje operativo fue el mismo: migremos antes de que el futuro las deje inseguras o rotas.

Si tu empresa integra MuleSoft, SAP o punto a punto, esto es higiene. Encaja con la lógica de seguridad y gobernanza y con cómo pensamos el acceso alrededor de la plataforma.

Consejo: inventariemos las Connected Apps de producción esta semana y marquemos cuáles todavía usan el flujo con password. Ese listado evita el susto del lunes.

Relevant Tests y TestFor: dejar de esperar una hora por un hotfix

Josu abrió el bloque técnico con un dolor real. Deploy a producción, cambio chico en una clase, y la Org se toma 40 minutos (a veces más de una hora) corriendo todos los tests.

En la comunidad se había debatido si «no correr tests» era tentador. La respuesta del equipo fue clara: es pecado; con IA armar tests es más barato que nunca.

Spring ’26 trae tags nuevos en clases de test. Marcamos tests como relevant (en código, la anotación con Critical en true) para que siempre corran en un deploy.

Con TestFor relacionamos el test a una o más clases Apex (por ejemplo OpportunityUtils). Al desplegar esa clase, Salesforce corre el lote relacionado, no los 400 tests de la Org.

Fran matizó la práctica. La buena costumbre sigue siendo clase más test; TestFor permite armar suites por funcionalidad, no solo unitarios uno a uno.

Limitación clara: está en beta. Hoy detecta dependencias directas. Un handler que usa otra subclase más abajo todavía puede quedar fuera del radar.

La regla operativa que dejaron: Run Local Tests versus Run Relevant Tests. Critical siempre; TestFor para no depender de que alguien recuerde qué poner en la cajita del deploy.

Josu dio el ejemplo de dinero real. Si esa función es core de la Org de tu empresa, Critical true y listo: ese test no se saltea.

Consejo: en sandbox marquemos Critical solo lo que no puede fallar (cobros, facturación, envíos masivos) y usemos TestFor en el resto para medir tiempo de deploy.

LWC con expresiones: menos getters, más HTML

El segundo favorito de Josu fue Lightning Web Components con expresiones complejas en el template.

Él aprendió Salesforce cuando Aura dejaba ternarios y cálculos fáciles. En LWC había que armar getters o métodos JS para multiplicar precio por cantidad o mostrar un campo.

Ahora podemos resolver multiplicaciones, concatenaciones y condicionales en el HTML del componente. Menos ida y vuelta al JavaScript para lógica trivial.

Ejemplo de la demo: imprimir cantidad por precio más impuestos sin getter dedicado. Badge verde o rojo según activo. Texto «sin nombre» si falta el Name.

Caso de negocio clásico. Si el descuento supera un umbral, renderizamos la cajita de comentarios sin un boolean getter aparte.

Esti lo leyó como salto moderno. Se siente más cerca de React, y de lo que Aura y Visualforce ya permitían. El chat lo celebró con un «al fin».

Otra vez: beta. No lo llevemos a producción solo porque el release notes sonríe. Probemos en sandbox y midamos bugs reales.

Consejo: elijamos un LWC con tres getters cosméticos y reescribamos uno en sandbox con expresiones. Si el resultado se lee igual, ganamos claridad.

Apex Cursors: volumen grande sin casarse solo con Batch

Esti y Fran retomaron Apex Cursors (ya mencionados el 5 de marzo) con el ángulo developer.

Idea central. Un cursor es un puntero sobre un set enorme; avanza (y puede volver) sin el molde rígido start, execute y finish de Batch.

Salesforce habla de techos del orden de 50 millones de registros. El patrón recomendado es combinar cursor con Queueable: encolar, procesar un lote, incrementar el cursor, reencolar.

Fran admite que todavía resiste abandonar Batch. Quiere verlo en acción antes de reescribir jobs que ya andan.

Josu lo ve útil también para LWC que necesitan paginar miles de registros sin matar el browser. Traemos de a poco; el cliente no se ahoga.

Disponible (no lo marcaron como beta en esta pasada). Sigue valiendo la regla de siempre: midamos governor limits y no inventemos magia.

Si el cursor no se incrementa bien, el riesgo es reprocesar o duplicar. Oficio: posicionemos el puntero con cuidado y logueemos avances.

Si tu empresa pelea con jobs eternos, cursors más Queueable es el experimento de sandbox de la semana. El mapa de automatización de un ERP en la nube potenciado por Salesforce se beneficia cuando el volumen deja de asustar.

Compara los planes y precios de EGA Futura cuando quieras aterrizar arquitectura y operación en un solo lugar.

Consejo: no reescribamos todos los Batch de un día. Tomemos un job satélite, midamos tiempo y límites, y comparemos con el patrón Queueable más cursor.

Agentforce y Agent Script: creatividad con cancha marcada

Fran bajó al cambio que más le movió el piso: la forma de construir agentes en Agentforce.

Antes: prompt general, tópicos, instrucciones en lenguaje natural y acciones. Flexible, sí. También impredecible: 9 de 10 veces cumplía; la décima inventaba otra cosa.

El chiste de la clase fue Josu y los lentes: a veces el agente elogiaba la barba sin que nadie lo pidiera. Esa aleatoriedad frustra en producción.

Ahora entra el razonamiento híbrido. Creatividad del LLM más lógica más determinística (entre comillas) para caminos que no se pueden saltear.

Agent Script es un seudolenguaje. Define reglas, referencias a acciones y condiciones que antes vivían solo en prosa ambigua.

Conviven dos vistas. Canvas (admin friendly, visual) y Script view (texto con formato que el motor entiende mejor).

En Settings aparece descripción del agente, system prompt, mensaje de welcome e idiomas configurables. Fran avisó: si rompemos el script, el agente puede quedar inutilizable hasta repararlo.

En tópicos podemos referenciar acciones de forma explícita y agregar filtros por input, consulta o campos de contexto. Así no cargamos una acción si no se cumple la condición.

Ejemplo de pedido. Si el status está retrasado, ir a disculpas y compensación; si no, informar estado. Siempre el mismo camino de negocio.

El topic selector ayuda a agentes grandes. Pedido retrasado va a un tópico; otro tema, a otro. Menos contradicción entre instrucciones que se pisan.

Respondieron qué es determinístico en este contexto. Si el status es delayed, ir por ese camino; no dejar que el modelo «interprete» si pide disculpas o no.

También mencionaron Agentforce Vibes con skills para manejar agentes. Fran especuló con generar Agent Script desde herramientas de desarrollo con un skill bien armado.

Si tu empresa diseña portales y experiencias con agentes, esta pieza encaja con la masterclass de Experience Cloud en acción. El mensaje fue de control: menos magia suelta, más reglas que siempre corran.

Consejo: en sandbox armemos un agente de un solo tópico con una regla dura (si status = delayed, disculpas). Midamos diez corridas antes de sumar más lógica.

Dark Mode, Error Console y PDFs sin Visualforce

Josu mostró Dark Mode en Lightning. Se habilita con Themes and Branding / SLDS2 y el permiso para que el usuario elija light, dark o sistema.

Matiz de sesión. A veces hace falta refrescar fuerte para ver el cambio. Setup puede seguir claro; la experiencia de apps es la que oscurece.

Para LWC, el consejo fue usar styling hooks (no colores hardcodeados). Si ya veníamos bien con SLDS, la migración duele menos.

Esti mostró la Error Console para Lightning Experience. Activamos el check en User Interface y los errores de LWC dejan de ocupar toda la pantalla con un pop-up agresivo.

Aparecen abajo, con filtros de customer errors y system errors. Para quien debuguea, es higiene de UX y de desarrollo.

Cierre técnico: PDFs desde Apex sin página Visualforce, vía el módulo Blob to PDF. Sirve para reportes sencillos y planos; no reemplaza layouts ricos ni mata Visualforce.

Fran lo resumió con humor. Al cliente quisquilloso con el UI, este PDF le va a chirriar. Como avance de plataforma, suma: menos dependencia de VF para documentos simples.

Si tu empresa todavía vive de PDFs de pedidos y facturas con maquetado fino, conviene mirar también la masterclass de Facturas y Pedidos y el catálogo de productos de EGA Futura.

Consejo: activemos Error Console en sandbox hoy y forzemos un LWC que falle a propósito. Comparemos la experiencia con y sin el check antes de tocarlo en producción.

Cómo preparar la Org de tu empresa para Spring ’26

La clase cerró con un mapa práctico. No todo se prende el mismo día. Ordenemos por riesgo e impacto.

Primero, inventario de integraciones y Connected Apps. Segundo, política de tests (Critical y TestFor) en un pipeline de sandbox. Tercero, un piloto de Agent Script con un solo proceso de negocio.

Después, Dark Mode y styling hooks en componentes propios. Error Console para el equipo de desarrollo. PDFs Apex solo donde el layout plano alcanza.

Cursors más Queueable donde Batch duele por volumen. Expresiones LWC donde los getters cosméticos ensucian el código. Todo medido en sandbox antes de producción.

En EGA Futura trabajamos todos los días sobre Salesforce: ERP nativo, AppExchange y operación real. Cuando Spring ’26 toca auth, tests y agentes, lo medimos como lo que es: trabajo de Org, no brochure.

Si tu empresa ya usa Salesforce, EGA Futura ERP se instala en la Org desde AppExchange. Si todavía no, el camino OEM entrega una Org con el ERP listo.

Consejo: armemos una checklist de cinco ítems (auth, tests, un LWC, un cursor, un agente) y tildemos uno por sprint. Ritmo chico, avance sostenido.

La mirada de EGA Futura

Lo que más valoramos de esta masterclass no es la lista de features. Es el criterio: qué está en beta, qué duele en orgs grandes, y qué conviene probar antes de prometer en producción.

Relevant Tests y TestFor hablan de tiempo de equipo. Agent Script habla de control sobre el LLM. Cursors hablan de volumen. Client Credentials hablan de noches tranquilas.

Ese mismo criterio guía cómo construimos producto sobre Salesforce: menos magia, más operación que tu empresa puede sostener. El detalle vive en el video; el mapa, en este editorial.

Agenda una demo con el equipo de EGA Futura: dura 30 a 45 minutos, es sin compromiso y la da una persona del equipo. Empieza cuando quieras en egafutura.com/erp/demo.

Preguntas frecuentes sobre Spring ’26 y esta masterclass

En qué se diferencia esta clase de la del 5 de marzo?

La del 5 fue Flow-first: analíticas, Flow Tests, data tables, Agentforce en Flow y Connected Apps. La del 19 baja a developers: test tags, LWC, Cursors, Agent Script, Dark Mode, Error Console y PDFs Apex.

Qué son Relevant Tests y TestFor?

Relevant o Critical marca tests que siempre deben correr en un deploy. TestFor relaciona un test a una o más clases Apex para correr solo lo vinculado al cambio. Hoy detecta dependencias directas y sigue en beta.

Agent Script reemplaza las instrucciones en lenguaje natural?

No las borra. Agrega un seudolenguaje y vistas canvas y script para reglas más determinísticas, referencias a acciones y filtros por contexto, encima del LLM.

Dark Mode se prende solo?

No. Habilitamos SLDS2 en Themes and Branding, permitimos que el usuario elija tema, y en LWC conviene usar styling hooks en lugar de colores fijos.

Los PDFs desde Apex matan Visualforce?

No. Generan PDFs sencillos sin página Visualforce. Para layouts ricos, Visualforce u otras vías siguen en juego.

Ver transcripción completa

speaker-0 (00:02)

Muy buenas tardes. Muy buenas tardes a todos. Qué lindo momento. Qué lindo momento vamos a tener en minutos cuando oficialmente comencemos esta nueva masterclass de Salesforce. Que es lo que vamos a estar viendo. Novedades muy picantes, muy potentes sobre la nueva versión de Salesforce. Ustedes saben que. tres veces al año, cada cuatro meses, Salesforce en toda su amplia oferta de productos libera nuevas versiones con innovaciones y hoy esta es la clase 2, es la continuación de la masterclass que hicimos hace 14 días atrás, en donde hicimos un hermoso y espectacular paso sobre todo lo nuevo. Se nos va a estar sumando. Francisco Esteban y Josu. Y acuérdense que todavía no comenzamos, todavía no comenzamos. Yo les voy a ir mostrando algunas de las cositas. Voy a ir abriendo un documento. Algunas de las cositas que vamos a ver en la clase de hoy. Mientras tanto, Mientras esperamos a que se suba el resto del equipo, yo te quiero decir algo. Todas las clases, lo que nosotros hacemos es compartir un código. Un código que vos lo tenés que coleccionar, juntar 14.

speaker-3 (01:53)

¡Fuá!

speaker-1 (02:02)

No quería interrumpir.

speaker-0 (02:03)

Una vez que tengas 14 de esos códigos vas a poder participar del sorteo de un voucher. Hablando de él, mira esto, Josu, mira. Los dos son nuevos. Mirá este diseño totalmente intelectual para obtener una certificación de Salesforce. Bien, un montón de gente conectada. Voy a hacer. Una saludada sobre algunos, Analía, Enzo, Ignacio, Jennifer, Diana, Max Bond de Chile, ¿verdad? Si sos el grosso de Chile, saludá en el chat.

speaker-1 (02:47)

De hecho, saludo Puzo. Buenas tardes desde Santiago. Así que saluda.

speaker-0 (02:50)

Vamos todavía, Max, vamos todavía. Bien, qué lindo, qué lindo. Francisco, muy bienvenido. Esteban, Linda, Carlos, Doberti, Guillermo, Natalia, Gonzalo, Daniel, Carlos, otro Daniel, Ana María, Estela, Kevin, Ivo. Son un montón, cuánta gente, un montón de gente. ¿Qué pasó? Escuchen, ya somos un montón de personas. Vamos a comenzar porque tenemos Muchísimo material para la clase de hoy. Entonces.

speaker-1 (03:28)

arranca

speaker-0 (04:22)

Bienvenidos, bienvenidos a otra Master Class de Salesforce en donde hoy vamos a ver todo lo nuevo que tenemos en esta espectacular versión de Salesforce. Josu, ¿de qué versión estamos hablando? Bienvenido, ¿cómo estás? Asumo que bien. Esteban Morales, muy bienvenido. Bien, bien, Supongo que era acá. Perdón, no si viste, pero no te escuché. Muy bien, muy bien. Angie, ¿qué hacés? Bueno, escuchen. Empecemos. La clase de hoy está en manos de Josue Francisco. Josue Francisco preparó un increíble con un montón de información técnica que todos ustedes van a disfrutar. Probablemente, Francisco, si ustedes se portan bien, les comparta este deck en el grupo de WhatsApp. Francisco, en tus manos estamos.

speaker-2 (05:25)

Dale, gracias. Bueno hasta todos. sé, Josu, queréis empezar presentando vos, lo presento yo y después cuando vos me pidas que comparta o descomparte.

speaker-0 (05:36)

No,

speaker-1 (05:37)

Dale dale, dame un sec. Están agarrando los sites todo el tiempo. vamos. Bien, vamos a compartir.

speaker-2 (05:48)

Bueno lentes, ¿estás estrenando lentes? ¿Estás estrenando los lentes?

speaker-1 (05:53)

No, no, la verdad que no, pero… Estoy usando protección de luz azul, se dice.

speaker-0 (06:01)

Sí, Josu, yo te voy a decir algo públicamente. Esa barba y ese corte es el que va.

speaker-1 (06:09)

Ok

speaker-0 (06:10)

es el que sirve,

speaker-1 (06:14)

Tengo la teoría que tengo de salir uno de los jugadores y mi psicóloga lo confirma, así que bueno, crisis de los 30. bien. Hablemos de Spring 26, si quieren. ¿Se ve bien ahí? Porque quizás estoy exagerando con el tema de resolución.

speaker-2 (06:30)

Capaz, un poquito chiquitito, pero capaz que es mi monitor. Una cosa a decir como modo de intro es que hoy es full developers. O sea, hoy está todo muy enfocado en developers. Por ahí la de Dark Mode y la de Agent Force se les puede sacar el juego de todos lados. Pero después hay una opción muy específica, así que vamos a tratar de darle una dinámica que no sea tan…

speaker-1 (06:52)

Si, esperemos que no se vuelva tediosa, si si Yo de hecho quería arrancar con algo que cerramos hace dos jueves Que es el cambio de las Connected Apps No luego llegamos a poner en la PPT porque me acordé hace 15 o 20 minutos Que si bien lo mencionamos en la ultima clase, reforzarlo ahora también Que es dentro de estas nuevas features que esta sacando Salesforce Uno quizás de lo más importante o que más puede impactar a nuestras organizaciones es el cambio en las aplicaciones conectadas o connected apps Que básicamente son aplicaciones que generamos cuando estamos integrando con Salesforce Si integras con MuleSoft, si tenés una integración de punto a punto con no sé, SAP o con alguna base de datos o lo que sea Hoy lo que genera Salesforce es un client ID, un client secret, que esto ya se conoce y además al sistema que se integraba le pasábamos un usuario, una contraseña y un token de seguridad para que el sistema externo se autentica en Salesforce, obtenga el famoso token vr y después consuma los servicios y nos haga una app, ser una query, nos modifique data, lo que sea. Salesforce lo está cambiando básicamente porque dice que los sistemas que se integran con Salesforce justamente tengan almacenado usuarios o contraseñas. es este, inseguro. Entonces ahora están migrando a un formato que se llama… Esto era Client Credentials y ahora… Uy se me fue. Creo que era Application Credentials si no recuerdo mal. Ergo, ¿qué significa en algún momento las aplicaciones conectadas que tenemos? No es que ya las van a cortar y se van a caer las integraciones, pero a partir del Spring 26 ya no creas más aplicaciones conectadas con la vieja manera, creas la nueva. en algún momento en el futuro las que hoy tenemos creadas pueden llegar a caerse entonces hay que migrar a lo nuevo pequeño reminder de lo que fue el cierre de la clase pasada justamente porque esto es súper importante un día que te levantes y no andes en las integraciones te voy a ir a buscar a tu casa así que nada, protip Te consulta, deduce o sugerencia, se entiende, teoría, poca teoría, avísenme cualquier cosa Voy a mover la meeting a la otra pantalla, así lo sigo viendo Bueno, vamos con lo que es el jueves de… Perdón, con el contenido de jueves de hoy De hoy a jueves, bien Vamos a arrancar Quizá con… Lo decía Fran, que ver mucho con Development Esta masterclass Pero arrancamos hablando de un nuevo tag que vamos a encontrar en las clases test. Todos sabemos y creo que esta semana se estuvo debatiendo en el grupo de WhatsApp al que después les vamos a dar acceso, seguramente para los que todavía no forman parte de la comunidad. Se estuvo debatiendo, che, hay que subir una clase a producción y no quiero correr los test o no hice los test. No recuerdo bien cómo iba la charla y se abrió como un debate, che, no hay que hacer los test, bla.

speaker-2 (10:04)

Ejército artificial es un pecado no hacerlo porque es sencillo. No quiero oir a Agile como dice Eti, pero es hacérmelo usted de esta clase y te lo hace hasta en chino si querés.

speaker-1 (10:19)

si

speaker-2 (10:23)

Te pregunto si se podría poner un poquito más grande. Yo mientras más poniendo más grande, voy diciendo que hice la aclaración de lo de los devs y en realidad yo tengo que decir que yo nunca fui muy fanático de esa división que hace Salesforce entre admin y dev y el rol que se les ocurra. Para mí siempre era resolver problemas con la plataforma y creo que ahora también de la mano de la inteligencia artificial esa división que antes era a veces una línea muy fina está desapareciendo ya casi completamente. acá me van a saltar a la jugular, a decirme que no cualquiera puede desangullar, pero bueno, es una división que cada vez se hace más.

speaker-1 (11:03)

hecho, hace poco estuve hablando con un muchacho que me escribió justamente por unas búsquedas que publicamos en Bante y me dice, yo vengo mucho de la mano del QA, sé hacer parte de análisis, en desarrollo quizá no me animo tanto, lo que le decía es poco entre IA y quizá… ¿Cómo trabajas el Force? Es como que ya una cosa va de la mano con la otra y estás haciendo un flow, necesitas una pequeña clase que te resuelva algo y seguís con tu flow, entonces es como… Es más híbrido que nunca, creo.

speaker-2 (11:34)

Lo de los flows es tal cual, o sea, habilita demasiado a que ya esa línea sea casi imposible de distinguir porque vos vas desarrollando con flow y ¿qué sos ahí? ¿Un admin, un developer?

speaker-1 (11:47)

Chau.

speaker-2 (11:48)

¿Qué sos? O sea, sos alguien que está configurando la plataforma.

speaker-1 (11:52)

Totalmente. Totalmente.

speaker-0 (11:53)

un admeloper

speaker-4 (11:57)

Andrés.

speaker-1 (11:58)

Podríamos buscar un término mejor. Pensemoslo un poco más.

speaker-2 (12:01)

Pero vuelo,

speaker-0 (12:03)

Bueno, bueno…

speaker-2 (12:07)

no, no, no, no, no, no,

speaker-0 (12:11)

Estaba me dando mucha atención lo que decía nuestro buen amigo José.

speaker-1 (12:15)

No pasa nada. rebobinamos un poco y volvemos al tema. Hay nuevos tags para las clases test de Salesforce. Yo decía nuestra recomendación y la buena práctica es siempre hacer los tests. Y con el TDD la idea es hacer los tests antes de hacer tu clase. Hagan los tests. ¿Qué pasa ahora? Salesforce dice, bueno, puede ser que hayan deployments. De hecho me ha pasado que por ahí che modifique una clase porque… nada, te volvió un booleano y ahora lo cambié por un string, no sé por decir algo lo hice en dev, funciona, lo hago en qa, funciona, lo hago en tf, funciona, lo voy a pasar a producción y bueno tu ambiente es tan grande que tenés que esperar una hora y media a que corra todos los tests para que tu clase con ese mini cambio se pueda implementar en producción quizás eso era un dolor, de hecho en mi caso lo fue porque teníamos incluso tenía hotfix que quería sacar y bueno tenías que correr todos los tests de la org y literalmente tomaban entre 40 minutos en algún proyecto he tenido uno donde una hora 20 tardaban correr los tests vienen estos tags nuevos que les cuento que son para tratar de reducir eso y que los tiempos de implementación en producción se reduzcan no sé si a todo les ha pasado pero si en ambientes muy grandes correr todos los que hasta a veces se hace porque daba una embolia y no sabía si lo seguía corriendo o no porque no cambiaba nada de verde rojo Hola, ¿qué tal? ¿Qué tal? Tenés alguna funcionalidad, no sé, de envío de mails supermasivos, no sé Y eso que crees que tampoco se rompa, porque si no vas a spammear un montón de gente que no querés hacerlo Ok, esos test super importantes, vos los marcas como relevant test Y esos test se van a correr siempre que vos simplemente salgo en tu organización, Estás pasando, te decía yo un cambio chiquitito en una clase Ok, listo, Cell for igual va a correr los relevant test Para estar seguros de que la función core de tu ambiente no se rompa. Entonces, eso es. Relevant test es marco que es súper importante y siempre tiene que funcionar. Si tengo alguna función secundaria que por ahí, bueno… No necesito asepsionarme todo el tiempo que esté andando como reloj suizo, listo. Ese test puedo no marcarlo como relevant. Pero la idea es, lo que es super core para mi orc, lo marco como relevant test. Esto sería llevado al lenguaje código, a mi anotación de ist test que ya conocemos, marcarlo como Critical True. Entonces, Salesforce siempre corre este test cuando vos estés implementando algo en tu organización. Por ahí tenemos un pequeño reminder, este test corre siempre, por ejemplo, lo que yo le decía, acá manejo dinero real, entonces esto no puede fallar nunca, listo, Critical True. Después lo que tenemos es TestFor Esto es decir con qué está relacionado el test que está escrito y entonces, por ejemplo, acá está relacionado con una clase Apex que se llama OpportunityUtils Si yo despliego a producción la clase OpportunityUtils Se le va a decir, ok, entonces estos tests los tengo que correr porque están relacionados con el cambio que estoy haciendo Y con esto, lo que decía al principio, me evito correr los 40 minutos de test que tengo en mi organización, entonces solamente corro lo que está relacionado con el cambio que yo estoy subiendo. Creo que el resumen es ese.

speaker-2 (16:17)

Y también evitaría ese tema de que, a mí me pasa, que cuando te ployo algo y ponerte que es la clase de controllerX.cls, tengo el controllerX test cls. Pero a veces no necesariamente es que ejecutas esa clase y ya está. Como que a veces hay controllers y handlers y todo que está relacionado con varias funcionalidades. Con eso como lo que está diciendo es cada vez que hace un cambio en esto ejecutar este lote de test. Sí. Estaba bastante bueno eso.

speaker-1 (16:50)

que es importante mencionar que esto todavía está en beta y yo siempre hago el chiste que si self-reduce que está en beta es porque está en alfa todavía Pero básicamente es eso. Yo despliegue una clase chiquitita de una funcionalidad super satélite. Entonces Selforth decía, ok, en vez de correr mis 400 tests, tengo estos 5 que están relacionados con esta funcionalidad, ejecuté esos 5 tan verdes, puedo implementar en producción y me ahorré una hora de despliegue completa. Básicamente es eso. Les mencionaba lo de beta porque por lo que vi en la documentación, Selforth dice que después quiere como más allá de tu anotación poder detectar qué cambios relacionados hay, digamos, en el… ¿Qué test, perdón, tienen que correr por cambios relacionados a tu cambio específico? ¿Qué quiero decir? Decía Fran. Tienes Handler, tienes Controller, tienes Helper. Por ahora, solamente Selfort detecta dependencias directas. ¿Esta clase usa aquella? Listo, entonces voy a correr este suite de test. Si esa clase… usar una subclase más, ahí es donde todavía el celular no lo estaría detectando Todavía esta función ya yo no la probé, quiero probarla, pero bueno, promete ahorrar mucho tiempo en lo que son despliegues ¿Alguien quiere mencionar algo más sobre esto? Si no, avanzo

speaker-2 (18:20)

No, no sé si denuncias

speaker-0 (18:22)

No, no, no, no, no, no, no, no, Entonces la clave es

speaker-2 (18:27)

se

speaker-0 (18:28)

test run local test o run relevant test.

speaker-1 (18:35)

La regla se estaba tomando,

speaker-0 (18:38)

Ok, es lo que va a la audición.

speaker-1 (18:40)

Después lo otro que iba a mencionar… Bueno, ahí tiene que ir… Ya es demasiado irse a lo que es pipelines y esas cosas, pero hay un par de tags más para armar suites de test para que vos digas, ok, cada vez que se despliega algo creo que mínima se corran estos tests. Entonces te armas una suite y si lo tenés todo automatizado te vas a estar cerciorando todo el tiempo que los tests que a vos te importan siempre corran y… tu organización, digamos, tu org… Sí, tu org este… por lo menos con las funcionalidades críticas bien alineadas.

speaker-2 (19:14)

Tenemos una pregunta.

speaker-1 (19:16)

Dale.

speaker-2 (19:25)

Dice que, pero cuando uno pasa a producción normalmente debe decir cuál es mi clase T que corresponde a mi código nuevo o código modificado, qué diferencia tiene.

speaker-1 (19:35)

que en realidad cuando vos desplegás a producción deberías correr todos los o por lo menos hasta ahora esa era nuestra política vieron que cuando estás implementando bueno si todavía usan chainset es correr run local tests y la idea es digamos siempre correr todo y que todo te dé verde y no solo correr la…

speaker-2 (19:54)

Claro, que es lo que decía yo, que yo lo que hago es paso un controller y su test y abajo pongo el específico y yo corro esa clase. Lo que puedo decirle además, mira son estos los test que le apuntan a esa clase.

speaker-1 (20:09)

Claro, no necesariamente solamente esa clase, sino que tienes otros test que tienes que validar funcionalidad. además, digamos, vos estás atado, claro, además hacerlo como estás mencionando, estás atado a que yo me acuerde de los test que tengo que poner en la cajita de test que quiero correr. Es como automatizarlo un poco más en decir, bueno, esta clase que estoy modificando tiene relacionado a estos test.

speaker-2 (20:36)

y la otra es y estos son críticos o sea tienen que correr cualquier

speaker-1 (20:41)

No, claro, los que son críticos van a correr siempre. Y

speaker-2 (20:44)

Está buenísimo.

speaker-1 (20:44)

vos cambiaste una comparación y rompiste la funcionalidad core, con esto te vas a dar cuenta, más allá de que vos corras el test solo del controller, si eso adicionalmente está rompiendo algo más te vas a enterar. Y quizás de nuevo, no apelás a la buena voluntad de yo acordarme de poner todos los tests que tienen que correr en la caja.

speaker-2 (21:03)

Ahora sí.

speaker-1 (21:06)

Bien, espero no estar hablando mucho de Hagan preguntas, pronten cuando metin yo de nuevo el cabello, lo que quieran.

speaker-4 (21:13)

Le voy a hacer otra Fran, contestaste última?

speaker-2 (21:17)

Sí, sí, allí estamos en la clase de los jueves, la masterclass.

speaker-0 (21:21)

Sí.

speaker-4 (21:23)

Perdón.

speaker-2 (21:24)

pero

speaker-1 (21:25)

Muy bien, next one. Lining with components. Esta a mi me encantó. Yo aprendí Salesforce justo cuando sacaron Lightning con los componentes Aura. Y tenías muchas cosas fáciles cuando querías imprimir un valor, ejemplo. No sé, estás armando una oportunidad, estás agregando un ítem en un componente custom que armaste. Y dices, ok, tengo el precio y pongo una cantidad. Entonces quiero que se me calcule automáticamente el total precio por cantidad. Eso los Aura lo tenían y podías hacer ternarios super grandes para decir si esto se renderizaba o no. Line y Walk Components no lo tenían. Entonces era todo armar método Javascript que te vuelvan true o false o que te hagan la multiplicación y te lo devuelvan para que vos lo imprimas. Bueno, ahora los Line y Walk Components van a soportar expresiones complejas. Un poco bueno, que decía hasta ahora los lineal components solo permitían propiedades simples o getters. Dame el valor, dame el true, dame la multiplicación. Ahora directamente en el HTML del componente vamos a poder hacer alguno de estos cálculos y no meternos 100 % a JavaScript. El ejemplo que les decía, por ejemplo si yo quiero price por quantity necesito un getter que me devuelva precio por cantidad para yo poder mostrarlo en mi formulario. Y ahora lo puedo hacer directamente en el Html y luego tenés las dos variables Resolvéme la multiplicación y yo te lo imprime Menos código en el Javascript de tu componente Bueno, lógica condicional para ver si podías ser maternario, sí Mi descuento era mayor al 30 % Que aparezca una cajita de comentarios de por qué Quiero poner tanto descuento, es un ejemplo Podías ser… En los Auro podrías armar un ternario, en los Line Components no, ahora podrías también en tus Line Components decir si el descuento es mayor a 30, listo que aparezca y te renderice la caja de comentarios y no estás complejizando tanto tu JavaScript. A ver.

speaker-0 (23:33)

muy bueno ahí en el comentario tiraron al fin es verdad esto es algo súper pedido y además bien moderno porque ya parece react esto o sea casi que ni parece no sé la que me compone parece que estás desarrollando una app en react está muy bueno

speaker-1 (23:48)

Sí, sí, sí.

speaker-2 (23:52)

Si, hacían una pregunta con el tema anterior que la quisiera decir, por si alguien mira el video de YouTube después. Sí, va bien. Preguntan si lo de test-for-igual-apex-class-xx es para una o más de una clase y entiendo que es más de una por la respuesta que dio a IBT. Que se puede hacer como linkear a más de una clase.

speaker-1 (24:10)

Exactamente. Más allá de que la buena práctica es su clase, test, su clase, su test, vos ahí podés relacionar por funcionalidades completas. Entonces decís, ok, esto me lleva a testear todas estas clases. Para que no sean solo test unitario, sino también de funcionalidad. Bueno, volviendo con los ternarios, un poquito de ejemplo Acá yo estoy imprimiendo un número donde el valor no me lo da el Javascript, sino que yo acá estoy diciendo que este valor es la cantidad por el precio más uno por los… Uy se me fue la palabra, no es intereses, impuestos Entonces yo acá ya resuelvo imprimir esto en la pantalla sin tener que ir a hacer algo en Javascript Y lo mismo acá, si no tengo una cuenta sin nombre, perdón, ¿era así? No, reviso si tengo cuenta, si tengo nombre, si no imprimo sin nombre. Y después, si tengo algo que es activo, te pongo un badge green y si no, pongo algo rojo. Entonces, te armo un span, un texto que tiene fondo rojo. Y si está activo, te imprimo activo, y si no está activo, te imprimo inactivo. Entonces, esto esternario ya lo resuelvo, o toda esta expresión es compleja, perdón. La resuelvo directamente en mi HTML y no tengo que estar haciendo funcionalidad. No es en backend, pero es en JavaScript para alimentar esto. Y muchas veces te pasaba que tenías tus Lanybocompones con metoditos de tres líneas, solamente porque tenías que imprimir algunas cositas por acá. Me ha pasado bastante. ¿Impacto de esto? Bueno. Menos getters triviales, o sea, quizá voy a tener si más funcionalidad dura si se quiere en javascript y por ahí cositas triviales como estas las resuelvo en el HTML y me olvido de tener que estar viendo en dos lugares de donde viene cada cosa. Menos código, supuesto, menos bugs, acelerada la experiencia de la Analigment Components. Se apega a los framework modernos como RIA, que esto es lo que decía Esty. Recordemos, importante esto también, igual que el anterior, esto todavía está en beta, no usar en producción todavía. No vayan a verlo. Creo que este release trajo varias cosas en beta, La clase pasada creo que hablamos de un par que también estaban en beta. Si no Sí, da bien.

speaker-2 (26:55)

Pero no me suena porque no lo usé, ¿no? Porque no…

speaker-1 (26:59)

Tenías esas condiciones, sí, pero bueno, Visualforce era una tecnología bastante… Es una tecnología bastante…

speaker-0 (27:05)

hasta… o se inaugura lo que vas a hacer

speaker-2 (27:08)

Tal cual, sí,

speaker-0 (27:09)

y ahora no sé por qué nunca lo pusieron en el buen componen, sé por qué nunca lo pusieron

speaker-1 (27:13)

Es verdad, no me acordaba, en Visualforce se podía, en Aura se podía, en la New Components no se podía. Así que bueno, se pusieron en el día. No sé quién avanzará con AppScoursers, chicos.

speaker-2 (27:28)

Creo que vos, pero vamos a saltear y vamos a ir a…

speaker-1 (27:34)

Ya me acuerdo.

speaker-2 (27:35)

Puede ser que me has equivocado, dame un segundo.

speaker-1 (27:38)

No pasa nada.

speaker-4 (27:39)

TUUUU

speaker-1 (27:41)

Básicamente, lo que vas revisando, Apex Cursor es como una evolución de lo que antes trabajamos como batch. Era, che, tengo que mandar notificaciones de algo todas las noches, tengo que ejecutar algo en lotes para actualizar, recalcular valores. Siempre era, te das vueltas y no tenías la skill de codear, buscabas tu developer amigo y le decías, che, necesito un batch que corra todas las noches y que haga estos cálculos con estos registros. App Excursor es como una evolución de los batchs que utiliza punteros para decir a dónde está parado de la colección de registros que tiene que actualizar o que tiene que trabajar y de esa manera va avanzando. Por ahí en los batchs vos trabajabas de alotes que por default eran 200, acá te da un poquito más de control, aunque a mí personalmente me da la sensación de que si no lo haces bien podés caer en alguna especie, no de loop pero de errores de… como se dice

speaker-0 (28:44)

Si tu cursor no está bien incrementado, por así decirlo, o bien posicionado, sí, tener duplicado.

speaker-2 (28:52)

¿Y te vuelves a esto?

speaker-0 (28:55)

No, no llegué a usarlo.

speaker-2 (28:56)

lo

speaker-0 (28:59)

Hay un AOR que lo estaba usando para probarlo, pero nunca lo usé. Porque bastante me ha

speaker-2 (29:04)

o sea,

speaker-0 (29:11)

No sé si lo saca pero es como para no tener que usar batch siempre, ir por proceso más simple puedes usar también un cursor y lo bueno que vi, que bueno hasta Seiford lo recomienda, es mezclarlo con, bueno ahí, los jugables.

speaker-2 (29:29)

Bueno, me diría un gaseo.

speaker-0 (29:33)

Entonces, es que es un nuevo patrón que está surgiendo ahora, Usar QEVL con cursors. Porque lo encolas y decís, bueno, este cursor que tengo de 200 registros, incrementalo, 200d, 200.000. Entonces, andaba haciéndolo en pedacitos chiquititos de 200 y el QEVL se ejecuta sobre sí mismo y va incrementando el cursor.

speaker-2 (29:56)

Te resuelve

speaker-0 (30:03)

que

speaker-4 (30:05)

No?

speaker-0 (30:07)

¡Se… se…

speaker-2 (30:08)

Siempre se te corta cuando empiezas a hablar.

speaker-0 (30:11)

No, no sé, igual te dijo a Ofra, pero… No, no, vos. Es para vos. a ver. ¿El qué? El QAV. El QAV, ok. Y esto te deja hasta 50 millones. O sea, el cursor puede tener 50 millones de registros. un montón.

speaker-1 (30:27)

Claro, esto supuestamente se lo banca. Y algo que tiene que, como el cursor, que veanlo como un puntero dentro de un lote de información grande, podés ir hacia adelante y hacia atrás con ese puntero. Es decir, che, tengo que volver un lote hacia atrás por algo, después sigo avanzando.

speaker-2 (30:42)

Salud.

speaker-1 (30:45)

Bueno, ya mencionamos los 50 millones de registros, ideal para procesamiento masivo con Qubable, navegación bidireccional hacia las anteriores atrás.

speaker-2 (30:54)

eeee

speaker-1 (30:55)

Es un poco más simple, si se acuerdan los batchs tienen su start, su execute, su finish, acá es directamente dentro del contexto del Qubable, puedes trabajar donde está para tu cursor en base a lo que te devolvería, por ejemplo, esta query. Entonces ya con eso te vas moviendo y vas este… moviendo tu cursor y reencolando tu trabajo para que continúe con el siguiente lote. Solamente sería el cursor queodable para que arranque y después bueno solamente te execute. Ya de todo modo un poco me recibe esta… Perdón, dale.

speaker-0 (31:35)

Toma, tomá, no te cuides.

speaker-1 (31:37)

pero resisto todavía a abandonar los batchs. Quiero ver esto en acción.

speaker-2 (31:50)

No me bardí, pero es lo que me imagino.

speaker-0 (31:53)

Pero fijate que ahí se encola a sí mismo, en cube, dis. sea, fijate que se encola a sí mismo. Y no necesitas crear otro batch, otro cube. Eso está súper bueno.

speaker-1 (32:05)

Bien, claro, y acá viene lo que discutimos recién, cuál es el impacto. Apex Curso reemplaza Batch para la mayoría de los casos. Puede ser que esté ahí el disclaimer. Todavía no veo claro dónde sí y dónde no. Te da más control, menos complejidad, mejor integración con QAble Chains. Dicho el corrijame. Batch Apex sigue siendo útil para escenarios muy específicos. Yo todavía no llego a ver la línea de lo que me separaría y lo que entraría en un QAble y un Batch. perdón en un cursor que en un batch de esto no mencionas que esté en beta así que me parece que

speaker-2 (32:45)

No, dice que está disponible.

speaker-1 (32:49)

Perfecto, no lo había visto.

speaker-0 (32:50)

Yo sabés para qué lo veo también útil para cuando tenés un Aliexpress Component y tenés miles y miles de registros y querés ir viendo los de a poquito. Entonces es capaz que haces un cursor, como que vas trayéndote registros de a poco y no sobrecargas el cliente, sea, el navegador de los usuarios. No sé.

speaker-1 (33:11)

Sí. Sí.

speaker-0 (33:12)

Es definido.

speaker-4 (33:15)

con

speaker-1 (33:19)

como adugueras. Entonces este

speaker-2 (33:24)

la demanda ya

speaker-1 (33:25)

se da la pantalla. Cualquier duda, como siempre, dejen su mensajita en el chat.

speaker-0 (33:34)

cerramos el bolso

speaker-2 (33:36)

Sí, ahí va. ¿Se ve ahí la pantalla? Estamos… Esta es la presentación, esto es que vimos recién, cursors. Vamos a Asian Force y Asian Script, que es como, por lo menos para mí, el gran cambio que nos metieron así de sopetón. No sé si les pasó a ustedes, pero a mí me pasó que me fue como entrar y… esto cambió todo! Básicamente, nos han cambiado la forma. para bien, no me estoy quejando, de hecho al contrario, me gusta muchísimo más esto en el que vamos a desarrollar a gentes. Ahora conviven las dos pero pareciera como que la otra la van a deprecar pero si se acuerdan la otra experiencia, anterior era muy de… definías los tópicos, vos definías como un prom general, después definías los tópicos y después cada tópico tenía sus acciones, primero tenían las instrucciones adentro y después tenían las acciones, ¿sí? Eso para todos los que se han chocado o han tenido que hacer cosas era muy… iba a decir poco flexible, pero realidad es como que era demasiado flexible, o las instrucciones podrían ser ambigüas, no había como demasiado control y hay una cuestión de todo esto que se está diciendo ahora de poder hacer que los agentes sean discretos versus esto, ¿no? Ambiguos, que no es del todo así, pero tiene como un mecanismo para hacer que parezca como que es discreto, que vos le estás poniendo una condición y esa condición no se la va poder saltear, eso está bastante bueno. Y entonces ahora tenemos algo que se llama como razonamiento híbrido, es toda la creatividad y la espontaneidad de un lm combinado con lógica esto, determinístico, que no necesariamente es determinístico, pero no importa, a los fines prácticos entiende que es, una cosa es capacidad de poder producir texto. la tormenta y la otra es decir bueno si vamos por este camino vamos por este camino y no nos salteamos y siempre tenemos que pedir a b y c vamos a pedir siempre a b y c que los que se han chocado con agentes sobre todo con la versión anterior de agent force han visto que ustedes le ponen la instrucción y le dicen siempre no sé si viene Josu y dice que lindos lentes y lo hace nueve de diez veces y hay una décima que no le dice a Josu que lindos lentes le dice Josu que bien que te queda la barba y vos decís por qué mierda hiciste eso

speaker-4 (36:07)

con el vocabulario de pan.

speaker-0 (36:12)

y la tincha de la teta

speaker-2 (36:15)

Pero bueno, te genera esa reacción de decir ¿por qué? La instrucción es clarísima, ¿por qué hiciste lo que no tenías que Y aparte de esto, que es muy aleatorio, o de 9 de 10 vos vas a decir que esto está andando bien y una décima que va a andar mal y eso realmente es frustrante.

speaker-4 (36:32)

Acá Fran hay una pregunta de Rogelio de Wyoming.

speaker-2 (36:36)

OK.

speaker-4 (36:38)

¿Qué es el Asian script?

speaker-2 (36:40)

Ahí lo vamos a ver. Ahora les voy a mostrar un poquito qué es agent script, pero básicamente lo voy a mostrar como si fuera una especie de lenguaje, es un pseudo lenguaje en verdad, con el que vamos a poder determinar esto que les digo de tener ciertas lógicas adentro, ya que no sean instrucciones de texto natural, que dicho sea, de paso es medio contradictorio porque al principio es como que lo que llamaba la atención, lo que ilumbraba de los agentes, que vos le podías dar instrucciones en lenguaje humano y te hacía caso y eso parecía increíble. De hecho lo es. Pero había como una falta de control que fue saliendo de la superficie cada vez más. Entonces, lo que hicieron ahora con esto es darle cierto orden. Entonces, vamos a tener dos visuales ahora que ahora las vamos a ver. a tener la canvas, que es la manera linda y no code admin friendly, podríamos decir, que ahí es donde entra el tema de los tópicos, de poder poner condicionales y demás. Y después el script view, que es básicamente como una especie de, me sale decir XML pero no es un XML pero es como un texto con un formato particular que entiendo que es lo que mejor entiende el agente y también eso atrás debe tener un motor de razonamiento para ese lenguaje en particular, para decirle al LLM cómo tendría que interpretar eso. Entonces, de nuevo acá vemos la versión agent script de algo, que es tipo definir un tópico, definir las instrucciones una bajo del otro de ese tópico. Por ejemplo, preguntas sobre órdenes, en este caso, ayuda al cliente y consulta sobre el pedido, sea amable y conciso, esta sería la instrucción. Y después abajo tenemos la famosa lógica determinística, que es como que no depende del LLM. Entonces, voy decir, bueno, si el estatus de la orden es retrasado, lo primero es, andá a esta acción que es pedir disculpas. Esto es el cuento, y después andaba la parte de compensación, que es otro tópico. Si no, informar el estado actual del pedido. Entonces, si alguien te pide el estado de un pedido, lo que va a hacer es va a tener en cuenta las instrucciones, y después, dependiendo del estado del pedido, te va a hacer cosas que las va a hacer siempre. Y está como el gran cambio de esto, porque antes vos con las instrucciones podías llegar a algo como esto. Pero es lo que te digo, 9 de 10 te los hacía, de hecho sigue pasando eso. Y una no te pedía disculpas por decir algo. Y vos decías, ¿por qué no lo estás haciendo? Entonces, bueno, acá ponemos, AgentScript resuelve el problema principal de Agent4 de la imprecibilidad del LLM. puedes garantizar que ciertas reglas de negocios se ejecutan siempre. Esto el tiempo nos lo dirá, porque no lo he probado tanto como para decirles, miren, esto sí realmente resuelve. Lo que yo imagino que esto hace por detrás, esto de nuevo lo imagino, es que no te carga todo el prompt, sino que lo que hace es que de acuerdo a ciertas circunstancias que vos le vas definiendo acá, te va cargando pedacitos de prompt. Entonces, eso es lo que yo me imagino que hace por detrás, Entonces, lo que me imagino que hace es que si tiene este status, le va a cargar los pedacitos de prompt de esto y nunca le va a cargar… esta instrucción por ejemplo, entonces como que nunca entraría en conflicto, pero de nuevo eso es lo que yo me estoy imaginando que hace por atrás, no lo sé. Si esto lo vamos a ver con una gente real y concreto, esta es la visual nueva, ¿sí? Donde tenemos la definición de la gente, que es básicamente darle como una descripción de qué es lo que hace. Los famosos tópicos, esto sigue igual, estábamos definiendo tópicos, pero ahora vamos a ver que también cambió. Y en la primer sección, que es la parte de Settings, vamos a ver Agent Details, que es nuevo esta descripción de qué es lo que hace la gente y el nombre. Como el prompt de sistemas, que acá es muy útil la que le pusimos, el mensaje de bienvenida, que es lo que vamos a decir siempre. Este es lo que responde siempre cuando uno lo despierta, como se dice ahora, despertás a la gente y lo primero que te va decir es esto.

speaker-0 (40:50)

Te comento por qué quedó tan simple el urna-agent. Eso pasó porque yo lo estuve configurando en el script y se me borró esa parte. Entonces, sin eso no anda, se rompió todo el script. Y tuve que ponerle algo al menos para que ande.

speaker-4 (41:05)

No,

speaker-1 (41:06)

Tenía problemas existenciales de la gente y lo tenías que decir quien era.

speaker-2 (41:10)

No, no, no, no,

speaker-0 (41:10)

Eso es que… o sea para tener cuidado en los scripts, sea jodés algo que por ahí no le gusta y compila mal y chau y rompe todo. Eso es lo malo por ahí. Pero bueno, hay que tener cuidado nomás.

speaker-2 (41:23)

Después, tenemos la sección del idioma, que esto también hay como un tema de configurar los idiomas porque está siendo como un tema de los agentes de inteligencia artificial, el tema de que te responda bien en el idioma que tiene que responder. Aparentemente no es tan sencillo y acá lo tenemos configurable. Después tenemos la parte de nuevo de los tópicos. Y los tópicos tienen… sus instrucciones y sus acciones. Esto sigue igual que como estaba antes. De nuevo, vos vas a definir las instrucciones una bajo de otra en el lenguaje natural y después las acciones. Y acá es donde podemos tener todo el tema de condicionales. ver si tengo alguno, que tenga algún condicional. Tenemos alguno que tenga algún condicionado para mostrar esto. Pero ven, por ejemplo acá ya le estamos poniendo cosas que antes no se podían hacer, que es yo en una instrucción voy a meterle ya acciones y referencias a acciones. Esto antes se podía hacer pero era medio como ambiguo, vos le ponías el nombre, ahora las referencias directamente, entonces como que no deberías tener ambiguedades de nuevo. Y acá podés hacer condicionales. Por ejemplo, si yo quisiera que esto solamente lo use bajo cierta condición, como veíamos recién en el tema de un estado, un pedido. le podemos agregar filtros, ¿ven? Que tienen que ver con los inputs o con la consulta que te está haciendo o directamente con valores de campo que vos tengas en el contexto. Entonces, parece súper clave porque no te va a cargar una acción o no te va a dar una instrucción si no tenés tal o cual condición determinística, digamos, entre comillas. Lo que estábamos diciendo de los modos de las vistas, nosotros tenemos tenemos canvas y tenemos sino el script, que esto es para el amigo de… no me acuerdo dónde era, de Wisconsin, en donde tenemos como esta especie de pseudo-linguaje, que es todo lo que estábamos viendo recién, pero en un, de nuevo, un pseudo-linguaje hecho para… para Agent Force. Entonces acá tenemos todo el script de la gente, las instrucciones del system, diciéndole que no es una tostadora. Los mensajes, el mensaje de welcome y error. las configuraciones, los lenguajes y acá vamos de vuelta a todo lo que tiene que ver con los tópicos. otra cosa que está copada acá vamos con temas de tópicos, la visibilidad, etc. De hecho acá estamos diciendo para las variables y acá tenemos todo el tema de las instrucciones y las acciones. Y fíjense que tiene esto como un lenguaje tipo arrobatópics.generalfac, etc. Y una cosa importante es esto del topic selector. que te va a decir, o sea, esto lo que permite, en mi humilde opinión, es que vos puedas hacer a gente que tenga muchísima lógica y que esa lógica no necesariamente entre en contradicción o no se pise, porque en el tópico selectoro estás diciendo que como, bueno, si te hablan de estado de pedido, andate a tal tópico y ahí definís todo lo que hace ese tópico. Si te habla de, no sé, de los lentes del Josu, andate al tópico los lentes del Josu y ahí tenés todo tu… tus acciones y tus instrucciones en ese tópico. Entonces, por ejemplo, si yo tuviera que hacer un agente que va a reemplazar lo que era un chatbot tradicional, que tenía mil opciones y en esas mil opciones que te iba preguntando, por ejemplo, para registrar un caso en Haití, te decía, bueno, ¿qué problema tenés? Tengo un problema con una laptop. ¿Qué te pasa con esa laptop? Bueno, no me prende la pantalla. probaste conectarlo, conectarlo. Para hacer todo ese, como paso a paso, esto es clave porque vos podés tener en cada tópico cada uno de los tipos de incidentes, digamos. Y ahí le vas explicando qué es lo que pasaría en tal o cual cosa. Es realmente útil porque es como que combina los dos mundos, ¿no? El tema del LLM para entender el input del usuario y la parte más concreta, Así que, eso por la parte de Agent porque me parece que está buenísimo. De nuevo, mantienen los dos, pero creo que el otro lo van a precar pronto.

speaker-4 (45:51)

¿A qué hay

speaker-1 (45:54)

Por viendo una película en general.

speaker-4 (45:57)

Estaban

speaker-0 (45:58)

Si quieres, no pago ahí.

speaker-4 (46:00)

hablando de darme y darme comer.

speaker-0 (46:02)

cuando hable de peli…

speaker-4 (46:05)

Pregunta Marcelino, no sé de dónde, ¿qué es determinística?

speaker-2 (46:12)

muy bien. Determinística es como, en el contexto este en el lo estamos usando, es como que va a siempre por el mismo lugar y no va a interpretar a la gente, sino que si vos le decís, por ejemplo acá, si el orden de estatus es delay, andate por acá. No uses tu criterio para saber qué responder o por dónde ir. Pero bueno.

speaker-1 (46:30)

porque le estamos marcando un poco más la cancha a la gente porque antes estaba, no sé si decir libre pero se iba por las ramas a veces y no era lo que quería es que haga

speaker-0 (46:42)

Y me parece bueno el lenguaje, realmente me parece extremadamente bueno lo que hizo Self Force con el lenguaje de los agentes. sea, es algo que pienso que se podría implementar para otras tecnologías, O un agente de, no sé, lo que sea, de Amazon, no sé, lo que sea. Está súper bueno. Yo tengo una duda a los amantes de Anti-Gravity y de Coors. ¿En algún momento estas herramientas podrán generar Asian Script de una? Yo me vuelvo loco.

speaker-2 (47:12)

Yo creo que si vos le generas un skill podríamos hacer una prueba de

speaker-0 (47:15)

Hay justo novedades de eso, sea, Sefo también sacó ahora el Agent for Vibes y metió dentro de Vibes, le metió una skill para que maneje los agents, los agents. Así que por ahí es una utilidad buena el Vibes, por fin, quizás pueda ver.

speaker-2 (47:32)

Pero y la otra es, o ¿cómo haría yo eso para hacer como ingeniería inversa? Es agarrar muchos, crear muchos,

speaker-0 (47:38)

también

speaker-2 (47:39)

que tengan distintos escenarios, pasárselos a Antigravity y decirle, bueno, a partir de esto, créate un skill que te diga cómo usar cada uno de los topics, por ejemplo. Y ahí como que necesitarías Agent for Swipe. No sé por qué igual estamos viendo estrategias para evitar Agent for Swipe, pero digamos.

speaker-4 (47:57)

No

speaker-2 (47:58)

Y mi problema con el determinismo es que el determinismo no existe porque vivimos en antropía todo el tiempo. Vamos a la filosófica, ¿no? Las seis las vamos dejar, vamos a ir a las siete que es más interesante y que tenemos poco tiempo, que es la de Dark Mode. Entonces, si ustedes se fijan, acá estoy en Salesforce, pero se ve como oscuro.

speaker-4 (48:26)

Gracias.

speaker-0 (48:26)

No parece igual,

speaker-1 (48:28)

La película que estaba viendo Anxi, Darth Vader

speaker-4 (48:30)

¡Qué tal ves! ¡Qué me creían!

speaker-2 (48:34)

Entonces, Salesforce habilitó por fin también el Dark Mode. No me lo termino de acostumbrar, pero va.

speaker-1 (48:42)

¿Sabes lo que pienso? Que los componentes que hiciste en el pasado se pueden hacer… Poden seguir…

speaker-2 (48:49)

y ahí vamos a hablar sobre ese tema. Primero les voy a mostrar cómo se habilita esto porque no es que tiene su vuelta pero vamos a esta parte.

speaker-0 (49:00)

No

speaker-1 (49:01)

No, no me interesa.

speaker-2 (49:02)

¿Temps con branding?

speaker-0 (49:04)

No es tan dark, porque ahí estás viendo todo el fondo blanco.

speaker-2 (49:06)

Pero porque no, Ale le voy a mostrar por qué estoy haciendo eso. Vamos acá para habilitarlo, tenemos un branding, elegimos este que dice Cosmos, que dice SLS2, que ahora los muchachos que son más técnicos nos van a explicar qué es SLS2. Pero vengo acá, me la tengo. Primero nos va aparecer para activar, entonces eso es lo primero, activarlo, que yo ya lo hice. Y una vez que lo activamos, nos va a tirar un montón de advertencias, no sugerencias, diciendo, che, vas a activar SLDS2, ¿está seguro?, si, si, Y después me vengo acá a editar y le tengo que habilitar esto. Si yo no le habilito esto, va a poder usar el usuario, no va a poder habilitarlo. Que es básicamente decirle que lo puedan habilitar los usuarios, clica ahí, save y va. Y para habilitarlo después, vos como usuario te venís ahí y le decís que elija light, que elija dark o que…

speaker-0 (50:07)

No, ¡repican!

speaker-2 (50:09)

Pero, si vos ya iniciaste esa sesión y no hiciste un control-shift-r o algo que te borre los cookies, seguís navegando por más que lo pongas a andar como me pasa acá. Por eso es que esto estoy navegándolo así, pero si yo tirara un control-shift-r en teoría… Bueno, no, no funciona. Pero en este, como pueden ver…

speaker-0 (50:30)

Me parece que el setup queda blanco sí o sí. O sea, que es solo para esto.

speaker-2 (50:35)

Y en la navegación ya lo vemos así. Y después, para leer en Web Component, tenés una forma.

speaker-0 (50:43)

blancos.

speaker-2 (50:45)

Claro, que te dice bueno, esto lo que decía Josu, ¿no? Antes estaban los colores arcodeados y ahora deberías usar estos styling hooks que se adaptan

speaker-1 (50:56)

Pero igual si usabas lo de SLDS 1, igual vas a tener que venir a tocarlos para usarlos de SLDS 2.

speaker-0 (51:06)

No, no, Josu, porque es agnóstico. Fíjate que dice SLS, no le dice si es 1 2.

speaker-2 (51:09)

Acá dice uno, mire.

speaker-0 (51:11)

No, no, pero ese es el color, O sea, ese es el hook del color. 1, 2.

speaker-1 (51:17)

Bueno, digamos que entonces si usaste SLDS quizás es fácil.

speaker-0 (51:22)

Si hiciste las cosas bien, sí, es afájone esto. Si no, cargueate un color ahí rojo.

speaker-2 (51:28)

Y si no, agarras a Antigravity o Curso y le decís, che, adaptámenlo a SLS.

speaker-1 (51:36)

Hay dos preguntas en el chat, no sé si las podemos meter José creo que está relacionado al… al… al… al… al… al… al… al… al… al… Me dice, ¿es más fácil entonces conectar igual otra gente que no sea de Salesforce?

speaker-2 (52:00)

No lo he entendido nunca.

speaker-1 (52:02)

Te lo leo completo por las dudas y se perdon, me estoy conectando a mundo perfecto. Entonces es más fácil conectar igual a otro agente que no sea Self Force. No estoy seguro por qué llegó a esa conclusión.

speaker-2 (52:12)

No, no entendí. Darmo, ¿cuál es la ventaja? Me parece que no quedarse ciego, pero no sé. No, pero hablando de ti, está demostrado que es como…

speaker-1 (52:26)

Lástima menos la vista.

speaker-2 (52:27)

y cansa menos, cansa, no se si lastima, cansa menos.

speaker-1 (52:30)

y esta bien

speaker-2 (52:35)

Pero eso va en gusto porque al mismo tiempo Salesforce y todo el software corporativo hizo mucha marca siempre con estar en modo claro, entonces como… qué sé yo… Y esta es la forma de preparar tu org, después le vamos a compartir la presentación. Y vamos con lo último de lo último que lo va a mostrar, Baby Hair.

speaker-4 (53:03)

No dieron la primicia, Juan Manuel, de qué iba a pasar en TDX.

speaker-0 (53:07)

Ojo. Tenemos ahí una pregunta de Federica, no sé si alguien la quiere leer.

speaker-1 (53:14)

Desde Prada

speaker-2 (53:16)

van guardando,

speaker-0 (53:20)

Ok, comparto, termino de compartir esto y…

speaker-2 (53:24)

vamos contigo

speaker-0 (53:26)

Para, y alguien que me tenga la presentación de Tidi, que la voy a… Le voy a bomboniar.

speaker-2 (53:37)

vamos

speaker-0 (53:40)

Bueno, hay comparto, ropin. Ahí habéis… Bueno, íbamos a hablar del siguiente tema era los errores de también, esta clase era medio orientada, Debs, pero a veces cuando se hace un álbum de compone y algo falla, o sea, un error fatal,

speaker-1 (54:04)

viendo que es la linda

speaker-2 (54:12)

la

speaker-0 (54:20)

Ahí se ve. Este era el siguiente tema. Y era lo que decía de errores fatales del Ganymede Components o errores del navegador. Que bueno, lo que pasaba antes es que, no sé si alguno ya los hizo o está acostumbrado a trabajar con Ganymede Components, es que aparece un error gigante en la pantalla que te hace un pop-up que no te deja sacarlo o te deja sacarlo pero te ocupa toda la pantalla y no sabe bien qué es lo que pasa. Sabe esto de lo que pasaba antes. Y ahora, bueno, ahora sacaron una actualización que vos podés como meter ese log en una consola que es la que te crean por defecto, que ahora si quieren la muestro. Pero si quieren, vamos a la consola. Perdón, acá. Vamos a mostrar cómo activar eso y ahora les muestro cómo se vería. Pero teníamos que ir a User Interface acá.

speaker-1 (55:13)

Esto no lo había visto. Y… Esto me pasa.

speaker-0 (55:16)

Sí, sí, está comprado. Y esto, a la, Use Error Console for Reporting in Lighting Experience. esto por él. ¿Puedes agrandar? Sí, sí, sí. Ahí se ve. Este es el check. Entonces este check es más para devavear el de Components y nos crea por detrás una consola que ahora si quieren hagamos el ejemplo. Yo acá creé un botón que falla, o sea que cuando lo apretas falla. Y se habilita esta opción de acá. Sigo en modo dark, no me gusta, pero bueno. Es esta nueva opción que dice Error Console. Entonces me doy click. Bueno acá ya aparecieron algunos errores pero yo si le doy click acá, ven me van apareciendo los errores acá abajo. Y esto es lo que aparece antes, esto si no tenía esto activado me aparece esto cuando falla el blanífero. Como que te ocupa toda la pantalla. Para el usuario, para experiencia usuario es horrible, la verdad. Y más, si sos desarrollador y estás devaleando, sí que lo hay que tener en el historial. Y bueno, tenés algunos filtros. Bueno, Customer Errors y System Errors, que en este caso son todos systems. bueno, así que eso es por ese lado. Después el otro tema, también lo digo medio rápido, es esto de los PDFs.

speaker-1 (56:38)

también

speaker-0 (56:40)

Ahí se ve.

speaker-1 (56:42)

Sí, señor.

speaker-0 (56:43)

Es lo de los PDFs, sea, eso, lo anterior es sencillo de usar y yo creo fácil de entender. Esto es para generar PDFs automáticamente que también nos sacaron ahora desde Apex, Sin Visual Force, que también está bueno, está bastante copado. No sé si es lo mejor porque no le podés meter estilos, así que no lo veo, no lo veo mucha utilidad, pero bueno, nada, lo veo bien como un avance de que se pueda generar todo Sin Visual Force. Exacto, sí, tal cual. Es un avance, es un avance. Mucha gente se volvió loco y como no, ahora no va a existir más Visualforce. Es como no. O Selforce, si anuncia algo que no va a reemplazar Visualforce lo anunciaría con bombos, con, no sé, lo que sea. O sea, no lo anunciaría así nomás. Como esto. Pero acá yo tengo un ejemplo, si tienen el muestro. De esta, bueno, acá es cómo ejecutar esto. Esto por detrás llama a esto. O sea, a este módulo Blow2PDF. Y si lo chamo… A ver… Fíjense que solo debuté Kodio, no debuté ninguna Visual Force ni nada. Y me voy a… acá, acá ya me generó. A ver… ¿Cómo lo generó? Bueno, me generó como una especie de reporte, bueno yo le pedí, obviamente hice una especie de reporte de las oportunidades de la cuenta, de la info de la cuenta, pero fíjense que está como medio plano, no sé, no está tan bueno, pero bueno, sirve, algo sirve, para al menos PDF sencillos creo que podrá servir. Y todo sin pilopor, eso también, suma.

speaker-2 (58:21)

a ese cliente que se pone jiquilloso con el UI.

speaker-0 (58:24)

Sí, sí, sí, acá te putas de todos lados, pero bueno, es como un ejemplo para mostrar.

speaker-1 (58:31)

supongo que le van a evolucionar

speaker-2 (58:33)

Se puede poner dar un mouse? Pregunta acá, Pedro de las redes.

speaker-0 (58:39)

¿O su voz tenéis algo para mostrar?

speaker-1 (58:42)

Te encontré la peli ¿Cómo? Bien, bueno, les voy a mostrar un QR para la gente que todavía no forma parte de la comunidad. Preparé en la cámara del cellulo, les voy a mostrar. QR no ven el fondo de mi cocina, está un poco desordenado. Así que nada, son bienvenidos a sumarse a la comunidad. Debatimos de cosas de Salesforce, compartimos material de certificaciones, celebramos certificaciones, tiramos tips como los que estamos mostrando en la masterclass. respondemos dudas puntuales de lo que le pasa en sus proyectos.

speaker-0 (59:24)

Y tienen que saber que es un grupo de WhatsApp, no es un canal. Por lo tanto, pueden preguntar. Y Meta le impone un límite a los grupos. Cuando ese límite se alcance, no vas a poder entrar. Por lo tanto, este es el momento, esta es tu oportunidad para poder sumarte a este grupo y tener acceso directamente a todos nosotros.

speaker-4 (59:51)

El código, el código para qué es Josu? No, gato no, el gato no.

speaker-2 (59:58)

¡Eso es gato de Josué!

speaker-4 (1:00:01)

Acá preguntan para qué es el código.

speaker-2 (1:00:04)

No, el código, supongo que dicen el de la certificación.

speaker-4 (1:00:08)

es suyo.

speaker-0 (1:00:10)

lo voy a compartir ahora en este momento en el chat si estás viendo la grabación de

speaker-1 (1:00:16)

Gracias Diana por recordarlo.

speaker-0 (1:00:18)

Si estás viendo esta clase en YouTube o en LinkedIn, tenés que saber que tenés que estar en vivo para poder. Y es espacio

speaker-2 (1:00:26)

Eso tiene un

speaker-0 (1:00:29)

que si no el chat lo convierte en un URL raro. Entonces, es un espacio a propósito.

speaker-2 (1:00:35)

ok.

speaker-1 (1:00:35)

Estamos aprendiendo.

speaker-0 (1:00:37)

estamos aprendiendo. bueno, tenemos de Prada una consulta.

speaker-2 (1:00:44)

y les muestro

speaker-1 (1:00:44)

Bango a la…

speaker-4 (1:00:48)

Van, que en realidad sería Van Guard, ¿no?

speaker-0 (1:00:52)

sí.

speaker-1 (1:00:54)

Yo prefiero retirarme en este momento.

speaker-4 (1:00:55)

O guardiar, igual.

speaker-2 (1:00:58)

Voy a convertir la pantalla. La Bella está viendo la cicha. ¿Y se ve?

speaker-0 (1:01:07)

Sí papá, qué cosa linda

speaker-2 (1:01:11)

Entonces, bienvenido a tu… Este es un portal que estamos armando. Hace rato que lo estamos armando.

speaker-4 (1:01:16)

¿Quién es ese perrito? ¿El perrito de abajo quién es?

speaker-2 (1:01:19)

El perrito es una mascota que se nos ocurrió.

speaker-0 (1:01:22)

Es hermoso.

speaker-4 (1:01:24)

y huele a la tuya es

speaker-2 (1:01:25)

Es igual, ¿viste? Vamos a empezar con esto. Estamos ya haciendo las pruebas finales. La idea, se lo recuerdo para que no lo sepa, es hacer un portal tipo el famoso Focus on Force, pero propio, nuestro, que va a tener contenido actualizado y va a estar empujado en básicamente tres ejes. Contenido teórico, ejercicios prácticos y preguntas de certificación, para que puedan agarrar un tema de los de Salesforce. y salir lo más preparado para una certificación posible. Lo que vamos a hacer es empezar a distribuir unos códigos que vamos a ir distribuyendo a medida que lo vayamos cubriendo y sacando en estas clases principalmente que es el código de acceso con el que van a poder empezar a entrar, se van a poder registrar. Si sin ese código de acceso no se va a poder ingresar entonces vamos a empezar como…

speaker-1 (1:02:20)

son uso único a las codicas son de uso único a las codicas

speaker-2 (1:02:24)

es de uso único, entonces va a ser el mate si quien pueda lo vamos pegar acá y el primero que llegue se va a registrar. Entonces voy a logear un poco para que vean cómo es rapidito y en breve estaremos saliendo con esto, si Dios quiere. Como pueden ver ahora tenemos un solo curso que el que estamos probando que es el de desarrollador de MuleSoft. Entonces si yo me vengo acá van a ver que esto tiene de nuevo contenido teórico que te va a ir explicando y te va guiar paso a paso. más contenido teórico y al final de cada unidad vamos a tener un quiz, que yo este lo hice, donde vamos a tener preguntas.

speaker-1 (1:03:07)

Llevo a pasar al siguiente módulo,

speaker-2 (1:03:10)

Claro. No, si apretas mal el botón no te entiende. Entonces, te vamos a ir haciendo preguntas para que vos vayas probando el conocimiento que tenés. Y al final, que eso todavía no está en este módulo, va a estar la parte de preguntas de la certificación, que van a ser muchas preguntas presentadas de manera aleatoria y con un porcentaje de calificación similar de la certificación, para que vos puedas probarte y ver en qué nivel estás. Así que bueno, eso lo vamos a estar sacando en breve. Sé que venimos diciendo esto hace rato, pero ahora realmente estamos muy cerca de las últimas pruebas y salir. Y vamos a ir paulatinamente, de nuevo, con estos códigos de acceso y con diferentes módulos que vamos a ir sumando a la plataforma. Cada vez la idea es que tenga más módulos.

speaker-0 (1:03:54)

Felicitaciones, realmente, felicitaciones, Francisco. Yo quiero que sepan que esto es algo impulsado por Francisco y que está haciendo con chicos de Bantegrade y de Ventix. Esto realmente es abrumadoramente hermoso y la capacidad que ustedes van a tener de poder certificar sin tener que pagar plata en Focus on Force y sin tener que sufrir con cosas desactualizadas realmente agrega muchísimo valor. Muy bien Francisco, la verdad te estás luciendo.

speaker-2 (1:04:27)

Muchas gracias.

speaker-0 (1:04:28)

Fírenlo al chabón. así. Bien, qué clases se mandaron, un lujo. Tenemos un anuncio más. Sí, tenemos un anuncio más que es bueno.

speaker-1 (1:04:40)

Gracias.

speaker-0 (1:04:41)

Si querés lo muestro. Antes que lo muestres, antes que lo muestres. ¿Puedo hacer como una microprevia? Obviamente, obviamente Rey. El año pasado, en Dreamforce, los colosales de Bebé Corazón y Tijoso estuvieron partiéndola toda partida, toda rota en Moscone Center, en medio de Dreamforce, dando unas charlas magistrales, porque una fueron dos, en la que no solamente la gente sacaba fotos, hacía preguntas, sino que los propios empleados de Selforce se acercaban a hacerle preguntas de Selforce. Una locura. Una locura. Y como si eso fuese poco, ahora, en TDX, ustedes saben que Salesforce tiene varios eventos a lo largo del año. Dreamforce es el evento insignia en donde es como una pajarera, ¿no? Porque meten de todo. Y TDX, pajarera con buena onda. Y TDX es el evento más teledirigido a developers. y este año tenemos el inmenso honor de que Francisco y Esteban van a ser speakers en TDX compartiéndonos toda su experiencia y todo el conocimiento para que podamos aprender más. Contanos de qué van a hablar. Sí, muy, muy, muy emocionante y sí, vamos a hablar de, bueno, ahí compartí, vamos a hablar de Slack, como pueden ver en el título, y Asian Force, así que son dos productos que nada, está poniendo muchas fichas y bueno, es un honor que nos hayan elegido a nosotros para poder hablar de esto, así que es algo bastante bueno, estamos muy contentos. Y vamos a tener recording.

speaker-1 (1:06:34)

Un producto muy core de ellos y nos confía en ustedes, a nosotros como grupo, hablar de esto en DX.

speaker-0 (1:06:45)

es una locura realmente un honor chicos un honor tenerlos acá bien algo más que nos ha quedado pendiente un montón de novedades

speaker-1 (1:06:57)

Si hay gente de España, pide al padre

speaker-4 (1:06:59)

cuándo

speaker-0 (1:07:02)

Que me freude.

speaker-2 (1:07:04)

No,

speaker-1 (1:07:05)

No podemos decir que no.

speaker-0 (1:07:08)

No, no, Linda pregunta, linda pregunta. Bueno, ¡tamos!

speaker-2 (1:07:15)

¡Tamos!

speaker-0 (1:07:16)

Muchas gracias. Muy buenos mensajes que están poniendo, sí, son muy buenos. Vamos a compartir mucho de esto con ustedes internamente antes de llevarlo a TX, obviamente. Sí, señores. Sí, señor. Una pequeña aclaración para todos los que están pendientes. El próximo jueves, la semana que viene, no vamos a tener inglés para Salesforce porque vamos a estar en las oficinas de Salesforce. Por lo tanto, nos vamos a ver en 14 días con otra nueva masterclass. para Salesforce y a partir de ahí retomamos nuestro esquema un jueves, una sarcás para Salesforce, otro jueves inglés para Salesforce. Los queremos mucho. Muchas gracias chicos por esta, nuevamente esta hermosa clase que compartieron. Nos vemos con música. Nos vemos nuevamente, jueves siempre, el mismo horario y vamos a elegir la música. Chao.

speaker-1 (1:08:12)

Un beso.

speaker-0 (1:08:14)

Chau chau

speaker-3 (1:08:15)

y

Por Juan Manuel Garrido

Fundador de EGA Futura, empresa que desde 1994 desarrolla software de gestión empresarial. Creó el ERP nativo para Salesforce, que elimina los problemas de sincronización, falta de visibilidad y doble administración que aparecen al integrar un ERP externo con el CRM, y EGA Futura ERP en la nube para empresas medianas que todavía dependen de sistemas rígidos. Es cofundador de Vantegrate, nacida en 2024 de la fusión entre Ventix Solutions y EGA Futura, que desarrolla una suite de agentes de inteligencia artificial llave en mano para empresas medianas y grandes de Latinoamérica. Escribe sobre gestión empresarial, la plataforma Salesforce y estrategia comercial.