Salesforce Flow sigue evolucionando constantemente para convertirse en una herramienta esencial en la automatización de procesos dentro de la plataforma Salesforce.
Uno de los componentes más recientes y prometedores es el Transform Element, una verdadera revolución para administradores y desarrolladores.
Qué es exactamente el Transform Element en Salesforce Flow?
El Transform Element es una herramienta innovadora integrada recientemente en Salesforce Flow, diseñada para simplificar significativamente la duplicación y manipulación de objetos dentro de Salesforce.
Este componente permite copiar y transformar datos fácilmente, reduciendo el número de pasos que normalmente son necesarios para completar tareas repetitivas y complejas.
Recientemente, durante una microclase liderada por los expertos Santee y Lucas, se demostró en tiempo real cómo este nuevo elemento puede simplificar tareas que antes requerían procesos extensos y propensos a errores.
Ventajas Clave del Transform Element
A continuación te presentamos algunas de las ventajas principales que ofrece este elemento:
- Ahorro significativo de tiempo: Reduce la cantidad de pasos necesarios al duplicar objetos complejos.
- Mayor precisión en la transferencia de datos: Permite mapear campos individuales con exactitud, evitando errores humanos.
- Flexibilidad y personalización: Puedes aplicar fórmulas específicas para adaptar los datos transferidos según las necesidades del proceso.
- Optimización del rendimiento: Al reducir pasos intermedios, mejora la eficiencia general del flujo.
Cómo funciona el Transform Element en la práctica
Para comprender cómo este nuevo elemento puede beneficiar tu trabajo, examinemos un caso práctico: duplicar un ticket de servicio con múltiples productos relacionados.
Anteriormente, esta tarea implicaba:
- Crear múltiples acciones para copiar objetos.
- Manejar manualmente colecciones de datos.
- Mapeos complejos de campos entre registros.
Ahora, con el Transform Element, puedes lograr esto en menos pasos:
- Crear una colección de objetos de origen.
- Utilizar el Transform Element para mapear automáticamente los campos al objeto destino.
- Aplicar fórmulas directamente para personalizar datos, como añadir un sufijo que indique una copia.
Manejo eficiente de colecciones de datos
El Transform Element trabaja especialmente bien con colecciones de registros. Al manipular grandes cantidades de datos simultáneamente, proporciona una eficiencia operativa notable, esencial para administradores y desarrolladores avanzados.
Por ejemplo, si necesitas duplicar múltiples productos relacionados a un ticket de servicio, esta herramienta asegura que todos los objetos se transfieran correctamente y con precisión, manteniendo las relaciones y dependencias esenciales dentro de Salesforce.
Cómo configurar el Transform Element paso a paso
A continuación, detallamos los pasos críticos para configurar un flujo usando el Transform Element:
Define claramente variables de flujo: Esto incluye variables para IDs de registros, colecciones y objetos destino.
Configura el Transform Element:
- Selecciona la colección de origen.
- Establece el objeto de destino.
- Mapea cada campo, aplicando fórmulas cuando sea necesario.
Añade acciones finales que permitan la creación o actualización automática de registros duplicados.
Cada uno de estos pasos fue demostrado en detalle durante la microclase, enfatizando la importancia de verificar cuidadosamente la configuración para evitar errores.
Cómo Salesforce Flow y EGA Futura ERP en la nube potencian tu negocio
Salesforce Flow, complementado con soluciones integrales como el ERP en la nube de EGA Futura, permite automatizar procesos críticos, reduciendo errores y aumentando la productividad en todos los niveles operativos.
Al utilizar Salesforce como plataforma en la nube:
- Garantizas una alta disponibilidad y seguridad de los datos.
- Simplificas la colaboración entre diferentes áreas de tu empresa.
- Accedes en tiempo real a información crítica para tomar decisiones rápidas y bien informadas.
Puedes descubrir más acerca de cómo optimizar estos procesos visitando la página oficial de EGA Futura ERP en la nube.
Errores comunes y cómo evitarlos
Durante la configuración del Transform Element, presta atención a los siguientes puntos para evitar errores:
- Asegúrate de que todos los campos requeridos estén correctamente mapeados.
- Maneja adecuadamente las colecciones para evitar duplicaciones incorrectas.
- Utiliza validaciones para confirmar que los datos transformados son correctos antes de crear o actualizar registros.
Recursos adicionales para dominar el Transform Element
Salesforce y EGA Futura brindan diversos recursos para profundizar en esta potente funcionalidad:
Visita el centro de tutoriales de EGA Futura para acceder a material formativo adicional.
Participa en microclases y webinars para ver ejemplos prácticos de configuración.
Conclusión: Transform Element, una revolución en Salesforce Flow
El Transform Element de Salesforce Flow representa una evolución significativa en la manera en que las empresas manejan la automatización de procesos complejos. Al facilitar la manipulación precisa y eficiente de grandes volúmenes de datos, transforma radicalmente la productividad y la capacidad operativa de cualquier organización.
Con herramientas como esta y soluciones empresariales avanzadas como EGA Futura, los administradores y desarrolladores pueden llevar sus habilidades al siguiente nivel y generar un impacto significativo en la eficiencia empresarial.
Preguntas Frecuentes
¿Qué es exactamente el Transform Element en Salesforce Flow?
Es un componente que permite manipular y duplicar objetos en Salesforce Flow, simplificando procesos complejos.
¿Necesito conocimientos avanzados para usar el Transform Element?
Aunque es útil tener conocimientos básicos, cualquier usuario con experiencia intermedia en Salesforce Flow puede aprender fácilmente.
¿Qué tipo de objetos puedo duplicar con este elemento?
Puedes duplicar cualquier objeto estándar o personalizado en Salesforce, incluyendo relaciones y dependencias.
¿Cómo empiezo a utilizar el Transform Element?
Recomendamos comenzar con tutoriales específicos y practicar con casos simples antes de implementar procesos complejos.
¿El Transform Element requiere licencia adicional?
No, está incluido en Salesforce Flow y no requiere licencias adicionales.
¿Qué diferencia al Transform Element de otros elementos en Flow?
Su capacidad única para mapear campos y aplicar fórmulas directamente en la transformación de datos.
¿Puede EGA Futura ERP integrarse con Salesforce Flow?
Sí, EGA Futura ERP está diseñado para integrarse perfectamente con Salesforce, potenciando aún más la automatización.
Transcripcion
[00:00:00.10] – Juan Manuel
Me puse totalmente loco porque hace poco atrás, dimos una clase explicando como el nuevo elemento de Salesforce Flow, el transform element, tiene la capacidad de hacer una magia loca dentro de Flow, ahorrando a un montón de pasos. Hoy tenemos una microclase que va a estar buenísima para todas aquellas personas que están aprendiendo Flow, todas aquellas personas que están sufriendo viendo, dejen de sufrir para poder ver paso a paso cómo estar un objeto que tiene un montón de registros relacionados dentro. Es por eso que Santee y Lucas, muy bienvenidos. Primero voy a hacer un… Vamos con todo. Primero voy a hacer una introducción. Voy a compartir pantalla, voy a hacer una introducción y después ustedes dos van a compartir pantalla. Y nos van a mostrar un flow hermoso que tienen en una org y después van a crear ese mismo flow utilizando otros objetos en otra org. ¿Qué les parece?
[00:01:14.10] – Santiago
Perfecto. Eso es todo.
[00:01:16.14] – Lucas
Mejale. Mejale.
[00:01:17.18] – Juan Manuel
Voy a compartir pantalla en este mismo momento y lo que están viendo aquí es un objeto que se llama transferencia de stock. Este es un objeto que forma parte del RP de Ega Futura, pero tranquilamente esto podría ser un custom object. Este objeto, transferencia de stock, lo podrían pensar como al objeto oportunidades. ¿Por qué? Les voy a hablar de estructura. Porque dentro tiene un montón de productos y esos productos serían el equivalente a los productos de oportunidad. Lo que Lucas y Santee nos van a mostrar ahora es, primero, un flow. Un flow en donde ellos están duplicando un objeto que se llama ticket de servicio, que es similar a caso, con un montón de productos. Nos van a recorrer, a pegar una recorrida por todo ese flow, mostrándonos cómo está construido. Y después, lo más lindo, lo más hermoso de este video, es que van a construir paso a paso ese flow con estos objetos que yo estoy mostrando en este momento. Santee, empezá a tirar magia Compartimos pantalla.
[00:02:46.12] – Santiago
Perfecto. Comparto pantalla y muestro el flow que nosotros ya tenemos. Excelente. Ahí saben si se ve.
[00:02:52.13] – Lucas
Se ve divino. Perfecto. Vamos a contar un poco por encima cuál es la lógica este flow, cómo funciona, y después vamos a pasar a crearlo desde cero paso a paso, así se entiende bien. Este es un Screen Flow, que el primer elemento que decidimos poner, que son checkbox, que no lo vamos a duplicar, así que le pueden prestar bien atención ahora. Lo que hicimos fue crear Screen Elements de los campos más básicos que creímos que quizás está bueno decidir si lo querés duplicar o no y armar checkbox de descripción, comentario, contacto, producto, su ubicación. Y pusimos de default value que estén chequeados, que se dupliquen, ya que por lo general decidimos cuando duplicamos algo, queremos duplicar la mayoría de las cosas. Pero bueno, vamos al próximo elemento. Lo que primero pensamos que hay que hacer es agarrar el ticket, el ticket que tridentió el flow, digamos, usando la magia de Salesforce, que es recordid, con la I mayúscula, donde agarra el objeto en el que estás trabajando, donde vos tocas en el Screen Flow, y copia ese objeto. Entonces, ahí es donde agarramos el objeto para después pasarlo al transform. ¿Se entiende por ahí, Santee, y vamos bien.
[00:04:17.06] – Santiago
Excelente, yo estoy siguiéndote con el clic, pero…
[00:04:20.07] – Lucas
Perfecto. Listo. Bueno, y acá lo que hacemos es ese get ticket lo ponemos del lado izquierdo y vamos mapeando los campos. Pero se puede ver, eso es lógico, se puede ver las fórmulas, si querés andar una de las fórmulas o abajo.
[00:04:38.17] – Santiago
Cuesta primero.
[00:04:39.10] – Lucas
Ahí es donde pusimos los screen elements, los screen components. Si querés andar a la fórmula. Esa es la fórmula para que si está chequeado, que se pase, que se duplique y si no está chequeado, que no. Ahí se puede ver la fórmula. Es un IF con comentario, le pones el nombre del en el event y ya se selecciona solo. Entonces, ahí lo que hacemos es con el transform, agarramos todos los datos y los tenemos listos para crear el nuevo ticket de servicio. Si querés, podés ir ahí. Ahí lo que hicimos fue poner cada campo que queríamos pasar del transform, salvo productos, se puede notar en el transform que no pusimos productos, porque si lo querés pasar con una simple línea, no se pasa, por un tema logístico de Salesforce o lo que sea, pero no se pasa bien si simplemente pones la línea. Entonces, ahora vamos a contar cómo es que hicimos para poder pasarlo. Si querés andar al assignment. Acá lo que hicimos fue hacer un assignment para definirle a la variable newticketid, el nombre del ticket de servicio que creamos, para tenerlo a mano, para poder usarlo dentro del transform después. Es como tener el ticket nuevo dentro de una variable.
[00:06:02.07] – Santiago
Esta variable, escuchando, la creamos nosotros la variable, solo para que el valor del new ticket esté en algún lugar.
[00:06:10.19] – Lucas
Voy a usar lo más dinámico, digamos.
[00:06:13.16] – Juan Manuel
Hermoso, hermoso.
[00:06:15.02] – Lucas
¿sí se entiende? Juanma, ¿vos qué opinas por ahora?
[00:06:17.17] – Juan Manuel
Que va como pinia, que va como pinia. En el flow nuevo que van a crear, que lo van a hacer paso a paso. En ese caso, en particular, todo el tema de los checkboxes no lo vamos a necesitar. Lo que vamos a hacer es una duplicación del registro de transferencia de stock con todos los productos de esas transferencias relacionados de un plomazo.
[00:06:38.10] – Lucas
Excelente. Perfecto, listo. Entonces, esto es clase extra, nomás. Después, lo que hicimos fue, después de ya tener la variable del ticket de servicio nuevo, lo primero que hicimos fue, como no mapeamos los productos todavía dentro de ese ticket de servicio, lo que hacemos es recogerlos de vuelta con el el record ID, con la magia de Salesforce. Hicimos un get records de productos de ticket de servicio, poniendo al igual que cuando fuimos a buscar el ticket de servicio con el record ID. Eso ya te lo deja para poder transformarlo de vuelta. Vamos al transform element. Y acá lo que hicimos fue lo mismo que el transforma anterior, solo que toda esta es toda la información de productos de ticket de servicio. Y para poder relacionarlo, que ese es quizás el mayor problema que por lo general tenemos dentro de la plataforma de Salesforce, lo que hicimos fue poner la variable y mandarla a la futura ticket de servicio. Entonces, ahí se relacionan las dos. Y después Bueno, en productos, pusimos de vuelta el screen component, que lo relacionamos con… Eso no lo vamos a poner igual en la próxima instancia, pero para contarlos y decirles por qué lo hicimos, es porque los pusimos de producto a los dos, ya que por lo general general, cuando no querés duplicar un producto, tampoco querés duplicar la cantidad.
[00:08:05.23] – Lucas
Sería ilógico dejar solo la cantidad. Y que nada, decidimos ponerlos juntos. Si no, se puede separar. Es totalmente versátil el transform. Y bueno, ahí ya te quedarían los dos creados con el próximo elemento.
[00:08:19.23] – Santiago
Algo muy importante, Lucas, también, es que acá mapeamos la nueva variable del new ticket a este ticket de servicio. Si los productos nuevos tienen el ID del ticket creado nuevo. Eso es súper importante. Eso es clave. Eso es clave.
[00:08:35.05] – Juan Manuel
Si vos no hacés eso, la asociación con el campo lookup se pierde.
[00:08:41.11] – Lucas
Bueno, entonces, a eso es para que estén relacionados relacionado, que es el mayor desafío dentro de estos flujos, por lo general las relaciones son lo más complicado. Y bueno, al final ya creamos el record, con un Create Record, ya directamente con la información que sacamos con el transform. Creamamos el producto y se crea ya relacionado con el nuevo ticket de servicio.
[00:09:07.02] – Santiago
Excelente. Bueno, Lucas, ahora, si me permetís, te voy a mostrar cómo funciona acá.
[00:09:11.17] – Lucas
No, perdón. Okey, vas a ir al setup.
[00:09:15.14] – Santiago
No, como botón, como funciona el botón.
[00:09:18.05] – Lucas
Okey, pero falta cómo lo ponemos como botón para que aparezca dentro de la page.
[00:09:24.10] – Santiago
Okey, bueno.
[00:09:25.12] – Lucas
Parece si lo explicamos así medio rápido.
[00:09:27.22] – Juan Manuel
Eso es a través de un action.
[00:09:30.02] – Santiago
Claro, vamos a hacer un action.
[00:09:30.23] – Lucas
Vamos a setup. Si querés, lo voy contando mientras va yendo. Vamos a setup, vamos a object manager, ticket de servicio y de ahí vamos a buttons, links and actions, y creamos una nueva acción. Dentro de la nueva acción te va a aparecer el tipo de acción, que ahí ponemos que es un flujo o un flow, y buscamos el nombre del flow, que en este caso es… Bueno, relate products, si no me equivoco, exacto. Y label, el que queramos que aparezca en pantalla dentro de la page de la organización. No hace falta cancelarlo, si querés, ya que ya está creado. Así se explicó perfecto, ¿se entiende?
[00:10:10.17] – Santiago
El label es el nombre que aparece en el web. Y ahora vamos a entrar acá. Ahí vamos.
[00:10:16.19] – Lucas
De vuelta, tenés que ir a un ticket de servicio. Hay muchas personas que se equivocan y tocan la ruedita de setup antes de entrar al ticket de servicio. Siempre hay que entrar para editar la página, porque si no, no te va a dejar crear los botones.
[00:10:30.14] – Santiago
Perfecto. Vamos a la 8 Page. Pasar la parte de arriba ahora.
[00:10:34.07] – Lucas
Exactamente. Ahí bajamos. Y ahí ya parece que ya habíamos puesto, pero podemos crear una nueva, si querés, poner Add Action. Y ahí te debería aparecer ya la action que hayamos creado.
[00:10:47.19] – Juan Manuel
Esto es crítico, chicos, muy bueno.
[00:10:50.01] – Santiago
Acá la puedes mover donde vos quieras que esté. Acá se te va actualizando. Guardás. Esto me importa ahora.
[00:10:59.11] – Lucas
Ahí ya queda el botón funcionando.
[00:11:02.08] – Santiago
Esta página ya está activada, pero si no, la tenés que activar también, es importante. Y después para quién es, si es para solo FOM, solo dex, así que eso también es.
[00:11:15.05] – Lucas
Es importante tenerlo en cuenta.
[00:11:18.02] – Santiago
Perfecto.
[00:11:19.05] – Lucas
Si querés mostrar cómo funciona, así ya…
[00:11:21.13] – Santiago
Perfecto, ahora tengo clonar más productos. Sorprendeme. Elijo los campos, acá podés elegir, si querés, poner el que no. No entiendo. ¿Así es? Cualquiera, cualquiera. Perfecto.
[00:11:34.05] – Lucas
Perfecto.
[00:11:35.07] – Santiago
Perfecto. Y ahora nosotros vamos acá, todos los tickets de servicio.
[00:11:39.13] – Lucas
Ahora mostramos lo de que le pusimos una funcionalidad al nombre, una fórmula que es, dice Create con el mismo nombre, pero le agregamos duplicado para que se note que es el duplicado, para que no quede igual.
[00:11:53.06] – Santiago
Ahora acá debería tener todos los productos relacionados. Serén. Que es lo mismo Que es el producto que habíamos duplicado. Ese es el flow, funciona perfecto. Y ahora vamos a tener que crearlo.
[00:12:06.21] – Lucas
Exacto. ¿Alguna duda, Juan Manuel?
[00:12:09.04] – Juan Manuel
Qué hermosa la vida. Cuando uno sabe cómo hacer las cosas, ahora, El objetivo, chicos, de este video es iluminarle el cerebro y llenarle de luz la mente a un Salesforce developer o un Salesforce Admin que dice: Loco, necesito que mi vida esté un toque más arriba porque quiero usar transport element. Entonces, paso a paso, vamos a crear este flow desde cero en una org nueva. ¿Qué les parece?
[00:12:45.08] – Santiago
Excelente. Vamos a eso. Perfecto, perfecto.
[00:12:47.09] – Lucas
Vamos a eso.
[00:12:48.01] – Juan Manuel
Ahí, escucha. Okey, vamos por ahí. Quiero aclarar algo. Desde hace poco tiempo, Salesforce publicó una app de automation en donde Y los flows también se pueden crear desde el front-end. En este caso, vamos a ir por la tradicional, vamos a estar en el back-end, en el setup, y vamos a ir a flow, y vamos a crear un screen flow que es de cero.
[00:13:16.01] – Santiago
Excelente. Acá vamos a venir al producto de transferencia, que nos mandó el compañero con mano. Vamos a buscar flow para hacerlo en el back-end. Vamos a crear un nuevo flow. No nos va a preguntar qué tipo. Me debería preguntar qué tipo. Vamos a hacer de cero un screen flow, vamos a hacer para que puedas usarlo con un botón. Excelente. Y acá tenemos. Yo creo que nada, yo recomiendo siempre crear el recurso, la variable RECord ID, así esto ya se mape automáticamente.
[00:13:54.01] – Juan Manuel
Santee, ¿por qué no, alguno de los compañeros, por qué no mencionan y si te TIC en un checkbox en la variable RECord ID?
[00:14:03.18] – Santiago
Claro, hice TIC en el input para que Salesforce pueda cargar la información a este coso. Si vos no tenés eso, te dice que vos le vas a cargar después con un valor acá o poniéndolo en un campo. Esto lo que quiere decir es que puede entrarle data desde Salesforce directamente, automáticamente.
[00:14:23.22] – Juan Manuel
Exacto, sí. Si a una variable vos no le indicás que está disponible para input, esa variable nace y muere con la ejecución del flow, el flow de manera aclada. Entonces, la forma de entrar información hacia flow es con este tipo de variable. Y la forma de sacar información de flow, que es con la opción de ahora. Excelente. En este caso, solamente input. Vamos.
[00:14:55.04] – Santiago
Esto, así como está, esto es universal, funciona para cualquier stream flow y es la clave de que te consiga el record ID.
[00:15:04.22] – Lucas
Magia. Una machieta.
[00:15:06.17] – Santiago
Magia pura. Ahora, como teníamos acá en el flow anterior, vamos a empezar con un get porque no queremos la screen en este momento. Relacionar el objeto que quiero agarrar. Transferencia de stock, effect. Acá entonces lo que quiero para elegir exacto el que es el que triere el flow, le voy a decir que en el ID, ves el record ID ¿Ves? El recorded_de_de_de de la transferencia de stock, quiero que sea igual a la variable record de ID que creé yo. Excelente. Y acá, esto así como está, me agarra el record que triggere el flow en un screen flow, que si no, no se podría hacer. Perfecto. Ahora, como estaba acá en este flow, vamos a crear un transform para que tire todos los datos del que triggere el flow a un nuevo objeto de transferencia de stock. From source data, lo que voy a elegir es el que acabo de agarrar, el get_records, y target_data, le voy a decir que le tire la data en un record que sea igual al que quiero tirarle, que va a ser un transferencia de stock. De vuelta. Quiero este checkbox, lo que me Y la pregunta es: ¿Quiere que sea una collection?
[00:16:31.17] – Santiago
¿Voy a tirarle muchos records o solo uno? En este caso, como voy a duplicar uno, va a ser solo uno, entonces no lo pongo. Excelente. Y acá, la idea es decir uno por uno, va a creando todo, menos las unidades y los productos, ya que eso no lo quiero duplicar. Entonces, vamos así, credit by, perfecto.
[00:16:57.10] – Juan Manuel
Para cómo los productos no querés duplicar?
[00:16:59.21] – Santiago
Los productos, como todavía no los agarré, esto si lo pongo así, esto no funciona. Lo que quiero hacer es agarrar uno por uno y después los productos los voy a agarrar, como dicen el flow de antes, excelente, y ahora después los voy a tirar en un nuevo producto.
[00:17:18.23] – Juan Manuel
Yo lo que les quiero decir es que todo el amor que se está gestando alrededor de este flow canvas está llegando directamente realmente a mi corazón. Quiero que lo sepa.
[00:17:31.21] – Santiago
Excelente. Es la idea.
[00:17:34.15] – Lucas
Porque también, Santee, mientras querés seguir, eso también lo hacemos, porque uno creería que quizás si ponés multiple records o collection, si vos querés agarrar productos, tenés que poner que sea multiple records, pero en este caso, si vos pones multiple records y mapeás productos, por alguna razón Salesforce no te lo permite y no se terminan de mapear bien. Por eso es que lo hacemos en dos transforms diferentes, desde dos objetos diferentes, porque los transforms no son los dos de ticket de servicio o de transferencia de stock, sino que uno es de transferencia de stock y el otro es del producto de transferencia de stock. Entonces, ahí es donde lo podemos, en vez de pasar producto a transferencia de stock, y empezamos transferencia de stock a producto.
[00:18:18.19] – Santiago
Excelente. Vamos a ir pasando uno por uno todo.
[00:19:00.11] – Juan Manuel
Y otra particularidad muy linda que tiene transform es, como Lucas, vos mencionabas hace un rato atrás cuando veíamos el otro flow. Vos podés directamente decir: Mirá, por ejemplo, ahí donde estás Santee mostrando, vamos del campo name al campo name, o me hago el loco, le clavo una fórmula abajo. Vamos con esa y se la mapeo.
[00:19:30.07] – Santiago
Perfecto, sí, total. Yo si acá lo borro…
[00:19:34.11] – Juan Manuel
Escúchame, pará, pará. Hagámonos los locos. ¿Qué te parece si al name, al campo name, lo modificás con una fórmula y le pones.?
[00:19:44.04] – Santiago
Perfecto, como hice con el dupe. Perfecto, vamos a ver. Entonces, acá lo mapeás y tocas acá como si fuese para borrar y te va a dar fórmula. Y acá, te metés en la fórmula y acá le decís… No sé por qué lo veo rano. Excelente. Y acá le decís que al get_stock_transferencia_nombre le sumás. Esto lo podés hacer con un operator que sea… Acá, add, es lo mismo. Le sumás. Acá esto va a ser un texto y acá le decís duplicado. Obvio, siempre, como es una fórmula, check syntax, excelente. Ahí queda válido. Entonces, ahora…
[00:20:27.23] – Juan Manuel
Más hermoso que ver las flores, florecer en la primavera.
[00:20:32.14] – Santiago
Excelente. Las fórmulas vuelan. Efecto. El ID no lo voy a mapear porque no quiero que tenga el mismo ID que el anterior. Lo que quiero es que se crea un ID cuando crea un ticket. Eso es superimportante.
[00:20:44.09] – Juan Manuel
Sí, más allá de eso, creo que si lo mapeases, te daría un mensaje de error la plataforma, porque por cada registro nuevo, la plataforma genera un record ID que es único e irrepetible.
[00:21:00.07] – Santiago
Excelente. Esto, last modified date, todos estos.
[00:21:04.01] – Juan Manuel
Tampoco, eso queda sin mapear.
[00:21:06.00] – Santiago
Claro, perfecto. Esto ya es lógica, pero lo hacemos igual. Y acá, como teníamos en el anterior, después del transform, vamos a crear el ticket con toda la información que acabamos de poner. Entonces, vamos a hacer así. Ya. Credit records. Acá lo que queremos que sea… Esto es algo que yo me di cuenta que si pongo a record variable y pongo acá el transform, funcionaría perfecto. Lo único es que no me da el resultado del ID en una variable. Entonces, por eso yo mapeo todos los campos así uno por uno. Okey. Porque después yo necesito usar ese ID nuevo que creé. Y si lo creo automático, no lo puedo agarrar. Entonces, acá, ves, hacés…
[00:21:54.17] – Juan Manuel
¿qué pasó? ¿Tomaste vitamina, Santee?
[00:21:58.03] – Santiago
No, lo que pasa es que lo hago de esta manera porque me parece más rápido. Ahora… No, está bien, va de toque, muy bien. Directamente solo me quedan más hacer estos. Claramente es más lento que hacerlo automático, pero como necesito la variable, o sea, como necesito la ID en una variable, lo tengo que hacer de esta manera.
[00:22:16.21] – Juan Manuel
Sí, no solamente en un plato de la balanza, okey, es un poco más lento, pero en el otro plato de la balanza te permite determinar de dónde vas a sacar el valor que vas a inyectar en cada uno de los campos.
[00:22:32.07] – Santiago
Claro, sí.
[00:22:33.07] – Juan Manuel
Lo cual, el nivel de flexibilidad es infinito.
[00:22:36.12] – Lucas
Sí, y es hacerlo una vez y después tener un flow más modificable.
[00:22:41.03] – Juan Manuel
Absolutamente.
[00:22:41.17] – Santiago
Más prolijo, también.
[00:22:42.23] – Lucas
La velocidad del señor Albertal es impresionante.
[00:22:47.21] – Santiago
Bastante imprescindible.
[00:22:48.13] – Lucas
Nunca había tenido que trabajar tan rápido.
[00:22:50.05] – Juan Manuel
Está volando.
[00:22:51.19] – Santiago
Está volando. Excelente. Acá tengo todos los campos mapeados uno por uno. Y ahora que se crea el ticket, acá Voy a tener… Perfecto, ¿ves? Tengo acá creado el ID, lo voy a tener acá para poder usar más adelante. Ahora vamos a seguir como hacíamos antes, un assignment, que este lo que hacía es agarrar el nuevo ticket ID. Ahora me voy a mostrar cómo conseguimos esto, pero lo igualo al ticket de servicio ID. Este, si lo fijamos, Perfecto, es el create records anterior. Pero acá, creo un new resource, que sea una variable de happy name, le puedes poner lo que quieras. Costumbre, un tip también para la vida, la ID, la I, ponerla siempre en mayúscula, que te queda mejor y nunca te olvidás de fifiarle al record de ID, al principio, que es la clave, si no, nunca te va a andar.
[00:23:55.22] – Lucas
Está bueno, está bueno.
[00:23:57.03] – Santiago
En data type… Para no te alegar. Claro, sí, por eso. Data type, pones text, que esto es importantísimo, available for input, como explicamos antes, bien. Excelente. Y acá, bueno, value as… Level as assignment, vamos a poner new brand. Excelente. Ahora que creé la variable, voy a decir que agarre la info de el Create Records. Excelente. Acá Es… Gracias por avisarnos. Ahora vamos a hacer un Get Records que agarre los productos relacionados. Sería agarra este producto, producto de transferencia. Estaba acordado. Get records.
[00:24:53.11] – Lucas
Porque va la variable creada en el anterior, en el assignment. Perfecto.
[00:24:56.21] – Santiago
Gracias por avisar. Me va a aparecer un error. Gracias.
[00:25:03.10] – Lucas
Que le decís que el episodio ya la desarrollé.
[00:25:08.12] – Santiago
Perfecto. Acá vamos a buscar producto de transferencia. Acá si agarro un ticket de servicio o el flow de antes. Perfecto. Y acá lo que quiero agarrar es todos los productos de transferencia que tengan relación que el récord… No, esto sería un error común también, que el ID tenga relación con el ID de… Pero el récord de ID sería del producto. Lo que queremos es que acá, cuando esté relacionado con una transferencia stock, que la transferencia stock tenga el mismo ID que la variable que queríamos, record ID.
[00:25:48.22] – Juan Manuel
O sea, ¿vos necesitás hacer eso para que te queden enlazados los productos?
[00:25:53.03] – Santiago
Perfecto, esa es la manera de relacionar, claro, esa es la manera de relacionar el producto con la transferencia stock excelente. Y acá lo que le dice es básicamente agarrar los productos, que la transferencia stock sea esta, y esta es la que triage al flow. Eso es clave también, porque si no, nunca lo vas a agarrar de ningún lado. Acá, como vimos, una vez que tengo los productos relacionados, lo voy a pasar al nuevo producto para duplicarlos y asignarlos a esta transferencia. Un transform nuevo, excelente. Acá le pongo… Y acá lo voy a agarrar, lo voy a hacer. Voy a agarrar los productos de transferencia from get products, excelente, y lo voy a mandar a un record que sea productos de transferencia. Y acá, como pueden ser varios productos, esto es clave también, porque si no, le va a decir que no puede porque esto es una colección. Perdón, acá esto es un error que es clave, ya me di cuenta. Si no, no lo iba a descubrir más. En el get products es clave que acá le dije que solo agarra el primer récord. Bien, claro. Como pueden ser varios. Totalmente. Como pueden ser varios productos, tengo que decirle que agarra all records.
[00:27:18.00] – Santiago
Excelente. Acá, mirá, fíjate cómo acá a la izquierda cambia de ser una variable de única, acá a una variable de colección. Excelente. Esto es clave también.
[00:27:30.14] – Lucas
Entonces, ahora… Muy bueno.
[00:27:32.18] – Santiago
Ahora, fíjate acá, me dice que es una collection. Excelente. Los productos de transferencia son una colección. Entonces, acá cuando lo mapeo a un record que sea producto de Por la diferencia, lo que voy a hacer es que sea una collection también. Excelente. Y acá lo creo. Perfecto. Y acá es lo mismo que antes, es mapear uno por uno, salvo el ID, que voy a querer que sea el del ticket que creamos, la correcta. Que lo veamos. Perfecto. Dating Date, lo voy a dejar en blanco, así se crea una nueva. El ID, tampoco lo quiero mapear.
[00:28:17.08] – Juan Manuel
Bien.
[00:28:19.02] – Santiago
Va todo bien. El nombre, sí queremos que sea igual. El producto, sí queremos que sea igual. La fórmula, sí queremos que sea igual. La referencia stock, no queremos que sea igual porque esa es la que vamos a mapear ahora. Esto no hace falta tampoco. Y el transferido, vamos a ponerlo, que es un bulea, quiere decir un sí o un no. Y el UniqueNombre también se vamos a poner. Excelente. Y ahora lo que vamos a agarrar es este CreateTransferencia, lo vamos a poner. Así agarramos el ID, que es este que crea acá, newtransferenciaid. Id. Excelente. Vamos a ver cómo se viene completando todo. Y agarramos el NewTransferenciaId a el de transferencia ID a la transferencia de stock.
[00:29:10.11] – Lucas
Premendo. Excelente. Muy bueno.
[00:29:12.15] – Santiago
Esto ya está todo unido ahora. Excelente. Ahora, lo último que falta es un create records que sea…
[00:29:25.06] – Juan Manuel
Cuál es la recomendación? Número uno. La digo siempre, que este video lo vean al menos dos veces. Número dos, que le vayan poniendo pausa a medida que van avanzando y van replicando esta funcionalidad.
[00:29:41.19] – Lucas
Sí, aparte con lo rápido que vas antes, está bueno frenar un poco y razonar hacerlo, porque si uno copia como si fuese el trailhead, después no lo termina adquiriendo el reconocimiento y después tenés que ponerte a ver el video de vuelta. Está bueno frenar, hacerlo tranquilo.
[00:29:55.17] – Juan Manuel
Está bien lo de vida, también lo hago porque esto ya lo hice bastante veces.
[00:30:00.07] – Santiago
Este flow ya lo tengo… Tengo pesadilla con el flow este. Pero ahora, claro, esto hay que revisar.
[00:30:08.06] – Lucas
No sería que todo nuestro conocimiento, la mayoría, nació de un videito de Juanma también, con el transform. Nos hizo conocer el transform.
[00:30:16.02] – Santiago
Sí, una clase de Juanma, lo vimos.
[00:30:19.22] – Juan Manuel
Excelente.
[00:30:21.03] – Santiago
Acá querés que cree muchos, porque son una collection, acuérdense de eso. Y lo agarrás acá. Producto de transferencia asignados. Excelente. Ahora vamos a guardarlo y vamos a decir flow master. Vamos a hacer flow, potencia de stop on pro. Perfecto. Ahora lo vamos a guardar. Esto es muy clave también, porque pasa mucho que si no lo activás, no me vas a poder buscar en ningún botón porque no existe. Y una vez que está activado, vas a poder ir a acá, vas a ir a Object Manager. Excelente. Vas a buscar acá y vas a buscar transferencia de stock. Perfecto. Acá la transferencia de stock, vamos a crear una acción que sea un botón en realidad, pero como es un flow, se tiene que crear desde una acción. Y acá le decís qué tipo de acción querés. Y yo quiero que sea un flow. Excelente. ¿Qué flow? Acá Juan Manuel tiene creado 700, pero vamos a elegir referencia stock, productos.
[00:31:33.08] – Lucas
Voy a buscar en el arbolito.
[00:31:36.00] – Santiago
Y acá el nombre del botón, creo que sea… Du, vas a parar a duplicar. Du, más, duplicar más… D implicar más productos. Excelente. Vamos a guardar. Vamos a venir… Acá. Vamos a venir acá. Vamos a venir acá, Producto de Diva la transferencia de stock. Vamos a ir a editar la página. Acuérdense, para activar el botón, para ponerlo. Si no está activado, van a tener que activar los botones dinámicos. Vamos a fijarnos. Está activado porque acá se ve que ya metieron alguno. Perfecto. Vamos a crear una acción que sea nuestro botón recheque de dado, duplicar más productos. Done. Ahí, como decía, podés agregar un filter para que lo pueda ver cierta persona en este caso no. En este caso, queremos que lo vean todos. Vamos a ponerlo bastante adelante, que sea duplicar más productos. Excelente. Vamos a guardar. Esto no lo quiero ver más. Perfecto. Y acá vamos a ver cómo queda, igual lo van viendo. Una que está guardado. Salimos, venimos a la página y acá, como arte de magia, está duplicar más productos. Excelente, lo tocas. Te dice que hay un error. Esto es clave, porque si funciona bien, no es un flow. Así que vamos a ver dónde pincheamos.
[00:33:08.17] – Juan Manuel
¿tenés idea en dónde pinchó o querés que te de una mano?
[00:33:12.10] – Santiago
Te acepto una mano. No, tendría que ir a ver con el DBAG.
[00:33:17.08] – Juan Manuel
Ya te digo…
[00:33:18.03] – Lucas
Y tirar un DBAG, sino a ver qué nos dice.
[00:33:22.19] – Juan Manuel
Sí, de todas maneras, cada vez que ejecutás un flow con error, te envía un correo electrónico y estoy mirando el error. Estamos un toque… Hay un campo que se llama transferencia directa recibida y ese campo tiene un valor incorrecto.
[00:33:40.23] – Santiago
Transferencia directa recibida está vacío. Lo pongo. ¿Qué es? No había mapeado. Claro, faltó de mapear uno. Hay campos que son requeridos. Esto también es importante para los que están mirando. Hay campos requeridos que si vos no los ponés, te salte un error en flow porque no se puede crear una transferencia de stock, en este caso, sin cierto campo. Un poco. Eso es muy importante. Vamos a guardarlo, vamos a activarlo. Ya está conectado al botón, así que ahora, una vez que está activado, vamos a poder probarlo. Ir acá, vamos a mandarlo de vuelta. La que actualice. Vamos a fijarnos si funciona. A poco mejor. Vamos a ver qué pasa. Vamos a fijarnos si hay alguno… Puede ser que sea ese el que falte. Ahora lo estoy mirando.
[00:34:30.06] – Juan Manuel
Pero pará, mapega cantidad.
[00:34:32.14] – Santiago
Mapega cantidad. Sí. Puede ser que sea requerido y que ese sea el problema. Vamos a probar de vuelta, y para eso estamos. Duplicar más productos, no era ese el problema. Está recién querés la pestaña, así que le di la gran de vuelta. Y vamos a mirar de vuelta esto. ¿Le parece, Juan Manuel, si le mando un divag a ver qué me dice.
[00:34:59.04] – Juan Manuel
Sí, para el divag le vas a tener que pasar como parámetro el record ID. Te lo sacás de ahí arriba, claro.
[00:35:10.12] – Santiago
No creo que sea. Ahora igual me di cuenta que tengo que apagar el input de este variable, porque como está dentro del flow, lo cargo con la info que está dentro del flow, puede ser que sea ese problema. Me dice…
[00:35:24.03] – Juan Manuel
Escúchame, ya sé cuál es el error. Hay una validation rule, hay una validation rule que te impide que un registro de este objeto sea grabado cuando el estado está en recibida. Entonces, lo que vos vas a hacer es a la transferencia de stocks de prueba, afuera del flow, cambiá la de estado. La voy a cambiar yo. Da un minuto, da un minuto, yo voy a cambiar de estado.
[00:35:58.14] – Santiago
Te espero, te espero. Si no, lo que puedo hacer es poner una fórmula que cambia de estado.
[00:36:05.16] – Juan Manuel
Pará, vamos en esa. La vas a poner… Escúchame, me gustó. La vas a poner en borrador. En el transform, la vas a poner en borrador.
[00:36:16.20] – Santiago
Estos más. Estos más, lo ver, acá. Me pide, vamos a ver. Y acá, decir que le ponga un… Entre comillas, Y le saco esto. No sé si me… Claro, no.
[00:36:35.12] – Juan Manuel
No, lo que pasa es que… Esperá. Quiero… Quiero…
[00:36:42.01] – Santiago
Sí.
[00:36:43.00] – Juan Manuel
Que hagamos un ejercicio. Yes. Que habras ChatGPT y le digas que estás con un set por flow y que tenés que crear una fórmula dentro de flow para poner el valor borrador en un campo tipo picklist.
[00:37:07.03] – Santiago
Vamos a hacer algo que me enseñó mi amigo Juan Manuel también. Le voy a decir Perfect. Ahí está formuna. Le voy a decir que el campo está postado. Vamos a cambiarlo para tenerlo de vuelta. Okey, era más simple de lo que pensábamos. Vamos a probar. El error que había antes es que decía, como dicen estos, que dice… No sé porque en el otro decía text y yo lo puse con el text. Perfect, vamos a guardarlo.
[00:37:43.07] – Juan Manuel
Tirar magia.
[00:37:44.14] – Santiago
Vamos a activarlo. Lo hago desde el debug o confiamos y lo hago desde el botón.
[00:37:49.15] – Juan Manuel
No, tirale fuego de una.
[00:37:51.19] – Santiago
Vamos de una y confiamos. Vamos, vamos los pibes. Vamos a ver ahora. Es importante, es que los productos se están relacionados y si los productos. ¿Cómo le había puesto ese nombre? Vamos a hacer así. ¿Qué quiero ver? Reviso para ver. Igual acá me dice. Agarra la última. Me ofrece esto. Todo el botón del transfer. Ser… Porque también quiero ver si la fórmula esta está bien. Puede ser más duplicado, debería aparecer. Nombre más duplicado. ¿Y por qué no aparece el anterior tampoco? Como que se rompe. Acá. Y podemos ver que el código, ¿cuál? El de… De hecho, escúchame, yo ya la encontré de este lado.
[00:38:35.16] – Juan Manuel
Yo ya la encontré de este lado. Te la voy a… No, no lo tienes. Ando. Te explico que no la estás encontrando y es por qué hay una automatización que le cambia el nombre. Le cambia el nombre. Yo te voy a pasar por chat el registro para que vos lo puedas ver ahí.
[00:38:56.04] – Santiago
Claro, puede ser.
[00:38:57.19] – Juan Manuel
Ahí te lo acabo de pasar.
[00:38:59.22] – Santiago
¿en el chat de dónde?
[00:39:01.21] – Juan Manuel
Whatsapp. A ver.
[00:39:03.16] – Santiago
Todo bien, pero no me llegó nada todavía. Ahí estoy, ya lo tengo, perfecto. Como se escuchen.
[00:39:10.10] – Juan Manuel
A un tipo de 50 años le tienen que tener paciencia.
[00:39:13.10] – Santiago
Pero aún no se le manda a Luca, por eso yo le mando un mensaje. Para los que no está mirando mi WhatsApp, le mando un mensaje al Juan Manuel y le digo: Acá estoy yo. Excelente. Perfecto. Bueno, este es el duplicado, entonces. Pero…
[00:39:27.13] – Juan Manuel
Ahora, funciona.
[00:39:28.18] – Santiago
Funciona. Sí, funciona. No, estamos muy contentos. Esto es una locura.
[00:39:33.14] – Juan Manuel
Me pongo loco del amor. Entonces, quiero que vayas al flow nuevo y hagas un repaso espectacular. Y en la descripción de abajo, este video también, os estar colgando otros links con tutoriales del Transform Element para que quien esté rompiéndose la cabeza para poder aprender a utilizar esto, ve a todos los videos juntos y salga andando para adelante, hacia el futuro, lleno de felicidad. Vamos, Santee, con la exploración. Escuchá, qué flow simple y tan potente, porque esto se puede utilizar para: pedidos, facturas, casos, tickets de servicios, oportunidades, si bien tiene una función nativa acá, se puede avanzar con un nivel de personalización extremo. Y cualquier y cualquier objeto que tenga otro objeto enlazado a través de un campo local. Vamos, Santee. Faltacular. Lucas, demos el repaso final.
[00:40:48.11] – Santiago
Vamos a hacer un repaso. Las partes claves vamos a mostrar. Primero, siempre acuérdense de empezar recordadid, creas uno, a ver por input, así lo puede cargar el sistema. Excelente. Ahora acá, empezás un Screen Flow, que cuando alguien toca el botón, eso después lo configuramos, pero ya está hecho. Cuando alguien toca…
[00:41:10.06] – Juan Manuel
Claro. Exacto, porque vos necesitás meter un botón en la página de registro para que parándote en el registro que quieras duplicar, le puedas hacer clic a ese botón y que viaje como parámetro, el RECord ID lo reciba el flow y sepa qué es lo que tiene que duplicar.
[00:41:32.17] – Santiago
Es espectacular. Esta variable es la clave para el Screen flow. Te digo ya. Primer.
[00:41:40.04] – Juan Manuel
Les voy a contar algo. Hay algo que no le conté ni a Lucas ni a Santee, y es que estamos haciendo streaming en directo con YouTube y hay gente que está mirando. Así que a los que están mirando en vivo los queremos y les mandamos un beso gigante. Eso no se los conté para que no se pongan nerviosos, pero lo están sabiendo. Okey, vamos, Guerrero. Y… Me da la sonrisa que tiene. Dejen de compartir. ¡Estaban en vivo! Bien, bien. Y prolijo con postproducción este video paso a paso, para que viendo nuevamente este video y haciendo clic en el botón pausar, puedas replicar lo que Lucas y lo que Santee nos acaban de enseñar. Y si te gustó esto, te queremos ver en el próximo video. Abrazo.