https://www.youtube.com/watch?v=wHxqiVwQXBc
La nueva app Facturación en Salesforce
- Primero pulsamos el engranaje (gear), entramos en Setup y usamos App Manager para generar la app Facturación.
- Nombre de desarrollador claro y en singular.
- Descripción que ayude al usuario desde el App Launcher.
- Ícono y color de marca para una UX coherente.
Tip: marca la casilla desktop & mobile para que tu equipo facture desde cualquier lugar.
Navegación estándar vs. consola
Una buena UX parte de elegir la barra correcta. Josué explicó que la navegación estándar abre objetos en pestañas del navegador, mientras que la consola anida subtabs dentro de una sola ventana, ideal para Service Cloud 1clase de salesforce fa….
Nuestro objeto Factura
Definir el encabezado de la venta
Creamos el objeto personalizado Factura con un campo Autonumber FA‑00000001, activamos Chatter y hacemos track field history. Sencillo, potente.
El puente Producto de Factura
Modelo maestro‑detalle
Generamos el objeto Producto de Factura como junction object entre Factura y Product2 para almacenar cada línea:
Producto (lookup a Product2)
Cantidad (Number, 4 enteros + 2 decimales)
Factura (master‑detail)
Así replicamos el patrón Order / Order Product, pero centrado en facturación.
Ajustar la Lightning Record Page
Juan Manuel arrastró el componente Related List – Single a la zona superior y renombró la pestaña a Productos de Factura para que los usuarios vean sus líneas sin desplazarse. Una acción, gran impacto.
Flow con Repeater y Transform
Por qué un Repeater?
Permite que el usuario agregue N productos y cantidades en una pantalla, sin código ni recargas.
Truco con Transform
Francisco mostró que el lookup trae un objeto complejo; primero guardamos el Product2 Id en una variable auxiliar y luego usamos Transform para mapearlo al collection de OpportunityLineItem. 1clase de salesforce fa…1clase de salesforce fa…
Próximos pasos de automatización
- Calcular subtotal, impuestos y total dentro del Flow.
- Generar el PDF de la factura y enviarlo por correo.
- Conectar con la AFIP, DIAN o SAT mediante un Apex callout.
- Publicar el Flow como acción rápida en la página de Factura.
Preguntas frecuentes
Cuándo conviene usar navegación de consola?
Cuando un agente necesita atender varios registros relacionados (casos, oportunidades) sin abrir muchas pestañas.
Puedo numerar facturas según la AFIP?
Sí. Usa un servicio externo para obtener el CAE y guarda el número oficial como campo adicional.
El Flow reemplaza a APEX?
Para lógica declarativa y volúmenes moderados, sí. Si requieres integraciones complejas o millones de registros, combina ambas estrategias.
Cómo restringo quién ve las facturas?
Configura OWD privado en Factura y usa Sharing Rules o Permission Sets para abrir el acceso necesario.
Qué licencias necesito para este módulo?
Una Salesforce Platform u Enterprise es suficiente; los usuarios que solo cargan facturas pueden ir con Platform Starter.
[00:00:03.23] – Juan Manuel
Vamos por empezar. Y ahora sí, y ahora oficialmente arrancamos esta clase. Muy bienvenidos a todos hoy, jueves. Sé que muchos están descansando porque hoy es el feriado y los que vean esta grabación van a decir: ¿Qué me importa?. No, sí que importa, porque hoy es un jueves en donde vamos a aprender. Y hay un montón de gente conectada, más de la que nosotros pensábamos. Bienvenidos a todos. La clase de hoy la vamos a dar Francisco y yo. Josué, Bebé Corazón, Esti y María Cecilia van a estar agregando valor, incorporando cosas. Y la teacher Angie, al final nos va a dar una microclase de inglés para Salesforce. Al mismo tiempo, le decimos a la teacher que se ponga las pilas con las preguntas en el chat y que esté atenta a ver si tiene Una mejor performance que la clase que vimos la semana pasada para México, que estuvo buenísimo. Voy a compartir pantalla y vamos a comenzar desde el cero absoluto. Lo que estamos viendo en este momento es CEL. Celforce, en donde todos ustedes ya están familiarizados con esta interfaz de usuario, y lo que yo definitivamente quiero hacer es un sistema de facturación y stock.
[00:01:29.14] – Juan Manuel
Como Vamos a crear objetos, como al mismo tiempo, lo que vamos a hacer es sin utilizar código APEX, lo que vamos a hacer con Flows de manera superavanzada, tirar magia, hacer magia. Entonces, no quiero tener todo este ecosistema de pestañas o solapas acá y que sea un lío. Entonces, el primer paso que voy a hacer es crear una aplicación. ¿Cómo voy a crear la aplicación? Lo primero que voy a hacer es ir a esta tuerca y necesito que Josué me diga cuáles son las formas de mencionar a esta tuerca en España, México y Argentina. Escuchamos todo, Josué.
[00:02:19.13] – Josue
Lo escuché como engranaje de configuración o de setup, la ruedita de configuración, y me agarraste en los aires, creo que hasta ahí llegó.
[00:02:27.20] – Juan Manuel
Y ahora quiero que la teacher nos diga cómo se dice esto en Canadá y en los Estados Unidos, y vamos a ver si estaba atenta. Te escuchamos. Set up. Estamos volando y perfecto, set up. Pero la tuerca esa, ¿cómo se dice en inglés?
[00:02:41.15] – Maria Cecilia
Me dice menú controles. Control menu.
[00:02:44.21] – Juan Manuel
Okey, bien.
[00:02:46.20] – Maria Cecilia
Gracias, Cecilia.
[00:02:47.20] – Francisco
El gear angle, ¿no? También se le dice. ¿Cómo?
[00:02:50.15] – Juan Manuel
¿cómo?
[00:02:51.20] – Maria Cecilia
Gear. Ah, gear. Puede ser Gear. ¿Por qué? Porque es neumático. Viene de neumático.
[00:02:57.20] – Juan Manuel
Exactamente. La pegó. La pegó. No, a partir de este momento…
[00:03:02.17] – Maria Cecilia
Sí, Santiago Gear.
[00:03:04.00] – Juan Manuel
Okey. A partir de este momento no acepto respuestas que estén por un nivel por debajo de la que acaba de dar Francisco. Bien, entonces, ¿qué hago? Me voy a la tuerca. Me voy a la tuerca y dentro de la tuerca hago clic en Set up. Voy a Set up y ahí lo que voy a hacer, lo que voy a hacer es ir a apps, porque lo que vamos a crear es una lining app, una Mining App. Entonces, posteriormente, lo que yo quiero hacer es clic en el App Manager. Los que estén viendo por primera vez todo esto, no se abrumen. No se abrumen, todo esto puede ser un lío según la fecha de la Salesforce Org. Según la fecha de creación de la Salesforce Org, que ustedes tengan, van a haber cosas diferentes. En una Salesforce Org nueva, van a haber, dentro de todo, las cosas bastante pero lijas. Si ustedes tienen una Salesforce Org con más de una década de antigüedad, esto va a ser un lío, porque todas las aplicaciones antiguas de Classic se van como reconvirtiendo y heredando. No, nos importa nada. ¿Por qué no nos importa nada? Porque voy a hacer clic.
[00:04:17.02] – Juan Manuel
O sea, no me importa. El que haya mil cosas acá, a mí no me importa, porque voy a hacer clic acá en New Lining Up y tengo un mensaje. ¿Qué mensaje tengo? Que una vez que termine esta clase, todas las personas que estamos conectadas aquí en vivo. Mañana van a recibir un correo electrónico con la grabación. Y todos los que están viendo la grabación de esta clase en YouTube o en LinkedIn, atentos al chat, a los perfiles de LinkedIn, a todos los profes que estamos acá y los que están viendo el recording debajo de la descripción de este video están los perfiles de Josué, de Bebé Corazón, de Francisco, de Angie, de María Cecilia y el mío. Bien. ¿Cómo andamos de preguntas, teacher? ¿Tenemos algo? No.
[00:05:03.23] – Maria Cecilia
No.
[00:05:04.20] – Juan Manuel
. Bien. Okey. ¿Por qué esto de la grabación? Porque es ideal que vayan presionando pausas a medida de que Francisco y yo vayamos avanzando en la clase para poder reproducirlo en un entorno de prueba. Voy a hacer clic en New. Aquí, lo que yo voy a hacer es poner un nombre que va a ser facturación y stock. Bien, ¿cómo andamos Y stock. Bien. Facturación y stock, perfecto. Es muy largo. Le voy a poner facturación. Listo. Developer Name, facturación. Aquí voy a poner esta es la aplicación que utilizamos para facturar desde dentro de nuestra empresa. Les quiero aclarar que… Miren, ¿qué tal? Esta es la… Lo que les quiero aclarar es que podemos llegar a un nivel tan avanzado. Opa, ¿qué tenemos? No, yo dejo de compartir pantalla, ya. Dejo de compartir pantalla Y voy a volver a compartir en un rato, porque Francisco Morales nos está mostrando algo. Te escuchamos, Francisco, queremos ver lo que nos hizo. No, no te hagas el desentendido.
[00:06:09.22] – Francisco
Opa, eso es un pulacho, este es el de ahí, el con lo de…
[00:06:12.09] – Juan Manuel
Agitando los muñecos, agitando Agitando… No, se entendió mal. Agitando las muñecos.
[00:06:20.08] – Francisco
No lo dice en inglés, agitando los muñecos.
[00:06:21.23] – Juan Manuel
¿cómo se dice? Profesora, ¿cómo se dice agitando los muñecos? Prometo que continuamos con la clase, pero yo quiero decir una cosa. Es como que está metido adentro un freezer ese astro, lo veo como congelado, lo veo como muy frío y se sigue sumando gente. Ricardo, Felipe, Daniel, Frank, Felipe Pérez, otro Felipe, Luis, Ángel, miren este nombre, Paul, vamos, Paul, Lorena, Luis, Juliana, Gustavo, Gonzalo, Marcilo, sean todos bienvenidos. Voy a compartir pantalla, yo le voy a pedir a Francisco en lo posible que no me vuelva a distraer con el muñeco. Vamos aquí, perfecto. Esas risas, por favor. Entonces, tenemos la descripción del app name, la descripción el app name, el developer, el developer name. Esta descripción que es necesaria porque va a aparecer en el Waffle. Y ahora le vamos a meter un ícono loco, que es una imagen. En este caso, yo voy a agarrar la primera que tengo a mano y le vamos a meter un color. Yo tenía una de bebé corazón por acá, pero no tuve los derechos. ¿A qué estás, cómo era? Elegí naranja y no me dejó. Elegí naranja y no me dejó. A ver. Ahí está. Perfecto. Ahora, ¿qué es lo que voy a hacer ahora?
[00:07:50.03] – Juan Manuel
Le voy a hacer clic en Next. Escuchen, yo sé que muchos de todos ustedes ya saben esto. No me importa. No me importa porque hay muchos otros de ustedes que esto es la primera vez que lo están viendo y está buenísimo que puedan comprender todo el proceso. Vamos con Next. Okey. Pregunta para bebé corazón. Vas a explicar las diferencias entre la navegación estándar y la navegación de consola. No ahora, no ahora, pero está pronto. Acá, principalmente, voy a elegir el tipo de aplicación. En este caso, yo siempre recomiendo ir por el soporte para aplicación web o escritorio y la aplicación móvil de Salesforce. En relación a estos íconos, a estos checkboxes, sí puede ser superimportante, no creo en este caso, pero superimportante en algunas organizaciones grandes con muchísimos usuarios, decir: Loco, bajemos un cambio, no quiero que metan mucha mano dentro de todas las lapas o pestañas de la aplicación, porque me quiero asegurar que la coherencia del uso en 300 de usuarios sea la misma, se puede desactivar la capacidad de personalizarla. Yo acá la voy a dejar libre. Steve, ¿cuál es la diferencia entre una navegación estándar y una navegación de consola? Te escuchamos.
[00:09:25.19] – Josue
Si querés voy yo, porque mi amigo Steve está con un temita de conexión, me parece.
[00:09:29.23] – Juan Manuel
Perfecto.
[00:09:31.06] – Josue
Si no me preguntaron, meto la pata igual, no pasa nada. Navegación estándar es por ahí lo que estamos acostumbrados a utilizar en el navegador. Entro a Google, busco algo que necesito, cómo ser un angel Salesforce, abro una pestaña aparte y tengo este GPT, abro una pestaña aparte y entró en hacer una página de OLE para leer noticias deportivas. Eso es una navegación estándar. Lo que hace Salesforce con la navegación de consola es meter todas esas muchas pestaña, quizá en tabs, dentro de la misma pestaña. No tengo que tener una una serie de pestaña en el navegador, sino que el servidor me la va abriendo internamente. Después, va a ir un poquito más profundo. Por ejemplo, tienes una tab de la cuenta y te hace subtabs para ver las oportunidades, los casos. Pero es todo dentro de la misma pestaña.
[00:10:12.19] – Juan Manuel
A vos, cuál de las dos? ¿Cuál te parece más fácil de usar?
[00:10:16.02] – Josue
Depende de la implementación. Yo estoy más amigado con la estándar, pero hay algunas de cositas que puedes jugar con la programación cuando estás en consola.
[00:10:25.10] – Juan Manuel
Sí, sobre todo para servicio. Bueno, aquí, ¿qué es lo que voy a hacer? Gracias, capo. ¿Qué es lo que voy a hacer ahora? Le voy a dar clic a Next. Le voy a dar clic a Next. En la clase de hoy no nos vamos a meter con la barra de utilidades. Le mando un Next de una y acá Voy a elegir los objetos. Voy a elegir los objetos y por ahora, porque una de las cosas superinteresantes que vamos a aprender hoy es cómo yo puedo ir modificando esta aplicación. Entonces, ¿ahora qué hago? Solamente estos dos objetos y luego también voy a decir cuáles son los usuarios que van a tener acceso. Acabo de crear una landing app. Felicitaciones a aquellos que puedan hacerlo en sus máquinas. ¿Qué onda? Vengo acá. Vengo acá y lo que voy a hacer es refrescar y me voy a ir al Waffle del amor, me voy a ir al Waffle, que es este, y concretamente, yo quiero ver el Waffle grande. Entonces, voy a ir a View All y… ¿Qué es lo que tengo acá? Muy bien, lo que tengo acá es la aplicación que acabamos de crear. Y esta es la forma en la que la van a ver todos los usuarios de esa Salesforce Or.
[00:11:54.10] – Juan Manuel
Le hago clic y automáticamente, fíjense cómo tengo un menú mucho más claro, mucho más cómodo. Está… Si no estamos utilizando… Francisco, quiero que me des una mano. Si no estamos usando ningún tema, yo voy a ver el ícono de la aplicación, pero si tenemos un branding, Fran, ¿qué pasaría acá?
[00:12:17.10] – Francisco
Podés dar un branding a las aplicaciones para que se ve ahí el logo de tu empresa. Sí, en realidad, el logo de tu empresa ahí, podés también customizar el fondo, ese fondo azul de la de que se ve ahí también.
[00:12:29.13] – Juan Manuel
Exacto. Ahora, Si yo tengo un branding hecho, este ícono de la aplicación, ¿yo lo estaría viendo o no? Depende.
[00:12:36.18] – Francisco
Si le pusiste a la aplicación esa el branding o no, porque el branding lo podés poner a nivel aplicación.
[00:12:40.22] – Juan Manuel
Espectacularmente espectacular esta respuesta. Tenemos la aplicación creada. Acuérdense que este es el momento para ir tirando preguntas. Loco, pónganse las pilas, no hay preguntas en el chat. Estoy hablando de todos los que estamos aquí en vivo, que somos un montón. Ahora, ¿qué es lo que voy a hacer ahora? Me voy a ir al Object Manager, al Object Manager, y lo voy a hacer desde cero. Lo voy a hacer desde cero. Estoy aquí, me voy a la tuerca, me voy al setup. En el setup, me voy al Object Manager. Y vamos a empezar con el proceso de creación de objetos. Lo que van a ver ahora, principalmente, es la creación del objeto que va a contener la factura. Entonces, vamos acá y directamente le voy a poner el singular, factura y… Facturas. Bien, perfecto. No hace falta una descripción. Y aquí lo que yo voy a utilizar es un autonumber. Yo voy a utilizar un autonumber. Es más, hasta me puedo hacer el loco. Esto que ven acá de identity, olvídense, es un sistema de administración de claves que yo uso mi máquina, esto no forma parte de Salesforce, no se mareen por eso. Entonces, yo aquí, en lugar de factura_name, le voy a poner, miren, factura_id, porque va a ser un id esto, que va a ser en paralelo al número de factura y Y los voy a introducir mínimamente a facturación electrónica.
[00:14:19.07] – Juan Manuel
Facturación electrónica de México, Colombia, Chile, Uruguay, Argentina. Lo que todos tengan en la cabeza con facturación electrónica y Salesforce. Si ¿Puede enlazar, en el caso de Colombia, a la DIAN? Sí, se puede. No lo vamos a ver en la clase de hoy, porque es mucho contenido. En el caso de Argentina, ¿se puede enlazar a FIT? Claro que se puede. Y el número de factura puede proveer del web service que vayas a utilizar para la facturación. Vamos de a poco. Este va a ser un ID interno.
[00:14:52.17] – Maria Cecilia
Manuel, cuando se nombra un objeto, ¿se hace en plural o en singular?
[00:14:56.14] – Juan Manuel
En ambas. Vos tenés que singular, o sea, en toda la plataforma de Salesforce vos tenés que a un objeto asignarle el singular, el plural y según el idioma que vos vayas a utilizar, si es masculino o femenino, la mesa o el auto. Bien. Entonces, en el display format, lo que todos aquellos que quieran tirar algún truco para el display format de los campos autonumber, me avisan. Cualquiera de los profes que estén acá puede. Pero generalmente yo aquí haría factu, mayúsculas, a tu, y acá yo le mando por convención Vamos. 8. A ver, uno, dos, tres, cuatro, cinco, seis, ocho. Otra buena práctica, otra buena práctica que yo tengo. No sé si es buena práctica, es una práctica ilegal. Siempre el starter plan Starting number, ¿cómo es, profesora? ¿Cómo se dice?
[00:16:03.03] – Maria Cecilia
Sí, starting number.
[00:16:04.21] – Juan Manuel
No, lo escuchamos, de nuevo. Vamos. Starting number. ¿Así? Starting number.
[00:16:13.09] – Maria Cecilia
¿así? Más o menos así, más o menos. Acá pregunta también, es decir, ¿objito contacto u objeto contactos? Cuando uno habla.
[00:16:21.06] – Juan Manuel
Es bien. Es el objeto contacto y después Salesforce va a utilizar el plural para las vistas de lista y de la interfaz de usuario.
[00:16:33.23] – Maria Cecilia
Si tuviera varias aplicaciones y las asignara con su perfil, con sus perfiles, igualmente alguien podría ver datos por jerarquía. Pará.
[00:16:43.06] – Juan Manuel
A ver, esta la estoy viendo en el chat, es una pregunta de Juliana. Si tuvieras varias aplicaciones y las asignara con sus perfiles, igual alguien podría ver los datos, y más vale, sí. Sí, la respuesta es sí. Josué, si querés aportarme algo, pero sí, todo va…
[00:17:00.15] – Josue
Lo que pasa es que la parte de configurar la aplicación es más presentar de una forma elegante o cómoda a tus usuarios la data. Pero después el tema de sharing pasa directamente por otro lado. Si bien yo, no sé, en una aplicación de facturación, por ejemplo, que estamos creando ahora, tuviera una parte de órdenes internas para manufacturar los elementos que veo, quizá en mi aplicación de facturación no lo agrego, pero si yo soy una especie de supervisor o álivo de ese sector también, yo voy a ver las órdenes, pero no en esta aplicación en particular. O sea, son paths aparte. Por ahí, para mí, las aplicaciones es una forma elegante o cómoda de presentar la información que necesitas. Y fuera de gestionar pedidos, tengo otra aplicación Voy ahí y ahí voy a ver los pedidos. Por ese sería el ejemplo que estaba dando.
[00:17:48.02] – Francisco
Es más, vos con las aplicaciones gestionás los accesos y ordenar los accesos a los objetos y después a los datos o los registros, y ahí se usa la jerarquía, y ahí entra todo el tema de permisos que está mencionando Josué.
[00:18:01.09] – Juan Manuel
Ahora, me gustaría ir armando clases. Me gustaría ir armando clases a futuro. ¿Qué tenemos? Sharing rules. Tenemos roles. A ver, quiero que me ayuden todos los profes acá. ¿Qué tenemos para eso? Y los voy comprometiendo para futuras clases. Ya dije, Sharing rules. Dije roles. Permiso. ¿Cómo?
[00:18:19.15] – Francisco
Permission sets. Sí, grupo de permisos. Ahora salió una nueva que te restringe.
[00:18:25.03] – Josue
Permission sets de restricción.
[00:18:27.01] – Juan Manuel
Bueno, fue que también podemos hablar de perfiles versus lo nuevo de Permission sets con todo el juego.
[00:18:32.09] – Josue
Y por qué los permiso, que les van a morir.
[00:18:34.03] – Juan Manuel
Pará, pará, ya está. Tenemos una clase, después vamos a ver quién la da. Son todos los Permission sets, todos los conjuntos de permisos y toda esta nueva onda de administrar eso. Eso quiero Josué ¿Y José? Esa la podría dar Francisco.
[00:18:49.05] – Francisco
¿le preguntas a Josué? Esa es Josué. María Cecilia, ¿le puedo decir a Juanma que.?
[00:18:56.22] – Juan Manuel
No, pará, pará, escúchame. Y Josué y María Cecilia, van a dar Sharing Rules. Sharing Rules con Restriction Rules. Ya están ahí.
[00:19:06.19] – Maria Cecilia
Igual. Licencia, dice Juliana también.
[00:19:08.22] – Juan Manuel
Opa, opa.
[00:19:10.02] – Francisco
Licencia, ese es un tema delicado. Ese está bueno. Hay que ver si no, justo para esa fecha no cambian Todo el naming de la licencia.
[00:19:16.12] – Juan Manuel
Bueno, una de las cosas por las que se caracterizó… Yo le voy a contar una intimidad de Zelf. Le voy a contar una intimidad de Zelf.
[00:19:23.03] – Francisco
Me voy a mutear y voy a apagar la cámara por las dudas.
[00:19:25.06] – Juan Manuel
Ustedes saben que Salesforce tiene como práctica cambiarle el nombre. Ahora vuelvo a compartir. Cuando me pongo charlador, me gusta. Salesforce tiene como práctica cambiarle el nombre a las cosas, porque con Y de alguna onda, reinventan mucho la rueda. Por ejemplo, yo me acuerdo que allá por el año 2013, 2014, aparece Wave Analytics. Después de Wave Analytics, lo cambian a Einstein Analytics. Después compran Tableau y a Tableau lo dejan Tableau, pero a Einstein Analytics lo renombran a Tableau CRM. Y yo no sé si me perdí en el medio algún otro cambio. Hablando con empleados de Salesforce, la otra vez que estuvimos en la Salesforce Tower con Francisco tirando marcha, dando clases desde el piso Yo me acuerdo, estábamos en el piso 61 con Francisco y el resto se nos había unido… Creo que estaba Josué y Bebé Corazón, estaban desde vía internet desde Argentina y me contaban: Juan, nosotros tenemos un mapa de equivalencias para que cuando un cliente nos dice: Yo tengo web analytics contratado, sepamos que lo que nos está hablando es Tableau CRM. Okey, bueno, es la onda. Hay hipótesis, también no me voy a meter con ese tema de la hipótesis de por qué Salesforce cambia los nombres tan frecuentemente, eso no lo voy a decir ahora, pero voy a volver a compartir la pantalla porque quiero seguir con esto que tengo aquí.
[00:21:15.05] – Juan Manuel
Escuchen, como este es un objeto bastante pulenta, que es facturas, yo le voy a decir: Mirá, loco, registros, adentro. Actividades, adentro. Track field history, adentro. Te lo dejo ¿Le voy a utilizar con chatter? Claro que sí. El resto le voy a dar: Que sí, le voy a decir: Vamos con search. Claro que sí. Esto quedó… Yo conocí Salesforce en el año 2009. Quedó en el 2009. De hecho, ya están depreciados los attachments antiguos, ya están depreciados, fueron reemplazados por files.
[00:21:54.07] – Maria Cecilia
Acá dicen muchos que no habían nacido, entre ellos, Francisco y Esteban.
[00:21:59.11] – Juan Manuel
Para profesora, ¿puede repetir?
[00:22:01.18] – Maria Cecilia
Que muchos dijeron que no habían nacido cuando vos mencionaste 2013, 2009.
[00:22:08.12] – Francisco
Y ahí Felipe te acusa de algo a vos. No sé qué decir.
[00:22:13.04] – Maria Cecilia
Soleto, que sos un soleto.
[00:22:14.19] – Juan Manuel
¿me están tratando de hombre mayor?
[00:22:16.20] – Maria Cecilia
Dinosaurio.
[00:22:19.23] – Juan Manuel
Fíjate cómo me metá. Felipe Medina. Vamos con safe. Vamos con safe. Le voy a meter un poco de nafta a esto. Vamos con safe. Listo. ¿Y qué pasa? Acá yo digo: Bueno, mira, voy a elegir la factura, le elijo cualquier ícono, pongo Next. Esta la voy a hacer rápido, la hago rápido. Bien, perfecto. Porque ahora voy a crear un objeto de unión o change an object con el objeto de productos. Tranquilos. Ahora vamos. Tranquilos. Okey. Bien. Tengo perfecto. Tengo este objeto creado, no hay ningún problema, pero lo quiero ver en mi aplicación, lo quiero ver en mi aplicación. ¿En qué aplicación? En esta, en facturación. Okey, como lo quiero ver en facturación, donde Goma aparece mi facturación, le voy a hacer clic aquí y voy a hacer clic en Edit. Click en Edit. Muy bien. Y aquí me voy a ir a los ítems de navegación y lo que yo quiero meter ahora son facturas Ya lo tenés agregado.
[00:23:31.19] – Josue
Fíjate a la derecha.
[00:23:32.07] – Juan Manuel
Tenés razón. Tenés razón. Muy bien. Yo ya me di cuenta de por qué lo tengo agregado. Regalo algo a quien me diga por qué lo tengo agregado, pero que me lo diga técnicamente. Me lo explica.
[00:23:43.15] – Maria Cecilia
Manuel, ¿por qué dejaste seleccionado en la selección de apps?
[00:23:47.14] – Juan Manuel
¿qué dejé seleccionada la app?
[00:23:50.12] – Francisco
No sé si es una pregunta o una afirmación.
[00:23:52.11] – Juan Manuel
Claro, yo creo que es una afirmación.
[00:23:54.09] – Maria Cecilia
Donde te pide seleccionar la app en la cual querés dejar el tab.
[00:23:58.12] – Juan Manuel
Yo voy en público, media pila. Yo le pido al teacher que, por favor, trate de hacer un pequeño esfuerzo a interpretar. Si hay un signo de interrogación que ausente, usted lo tiene que detectar y pronunciar.
[00:24:12.03] – Maria Cecilia
Es que yo me lo como.
[00:24:14.02] – Juan Manuel
14 idiomas habla y se me come el símbolo. Me estresan. Me estresan. Bueno, lo elegí. Sí, porque lo elegí la creación del objeto. Perfecto. Entonces, yo voy acá. Se sigue sumando gente. Hay más gente, hay más gente. Bien. Creo que es Eduardo el que se sumó y acá tengo facturas. Obviamente, tengo un objeto pelado. Tengo un objeto pelado. Cuando yo tengo un objeto pelado, una de las cosas que ustedes tienen que tener en cuenta es las vistas de vista cualquiera. No tengo vistas de lista. Si yo voy a hacer clic en new, mira lo que hace. Está bien, no tengo ningún campo. Ni un problema, pero mira lo que es esto. Ahora lo que voy a hacer es tratar de replicar la estructura que tenemos con el objeto order, con el objeto order. Entonces, ¿qué onda? Yo vengo acá, le voy a hacer un clic en order y prestemos atención a esto. Yo tengo el objeto order, que es un standard object de Salesforce, y tengo order product, order product. ¿Quién me dice qué es este objeto?
[00:25:24.05] – Francisco
Es una orden de cada una de las órdenes. Vamos a tener el orden cabecera y después tener cada uno de los ítems representados por ese objeto. Exacto. Es decir, producto de la orden, la relación orden.
[00:25:36.15] – Juan Manuel
Si yo, por ejemplo, voy a Google y pongo factura, factura, ahí está, factura, en cualquier factura, lo que yo estoy viendo es el encabezado, el encabezado, que es encabezado, es encabezado, el total, los impuestos y la información, eso se va a almacenar en el objeto facturas, que acabamos de crear recién. Pero, esto es lo que dice Francisco, cada una de estas líneas, cada una de estas líneas son, en este caso el order_product. Entonces, ¿qué es lo que voy a hacer? Y lo que voy a hacer yo es crear otro objeto loco, que en este caso, en este caso, voy a ir a Create, Cast an Object, y lo voy a hacer rápido, porque Francisco va a crear un flow, va a crear un flow que nos va a ayudar a meter… Se están enterando de algo. Todo el proyecto de facturación lo vamos a hacer en más de una clase y lo vamos a hacer en TV y va a quedar espectacular. ¿Qué significa? Que todo lo que están viendo esta clase en vivo y en la buena noticia, y los que están viendo la grabación, y la buena noticia de saber que van a haber más clases en donde vamos a ir en todo el proceso hasta tener el PDF de la factura y que quede una cosa espectacular.
[00:27:05.22] – Juan Manuel
Acá lo que voy a hacer es: Producto de Factura. Producto de Factura. Yo, por buena práctica, cuando dice de, a lo que sería el happy name, se lo quito. En este caso, yo voy a: Productos, el plural, productos de factura. Bien, vamos. Acá, yo también voy con un autonumber, también con un autonumber, esto lo van a ver. Vengo rápido. Y acá, 0,1, acá vamos a mandarle varios cero, le digo que sí. Ahora vamos a ver lo de la aplicación, le digo que sí. Yo No debería ser este. Esto no debería hacer esto, esto no lo debería chequear, porque el objeto va a residir adentro, le voy a hacer clic en Save. Todo el otro proceso no apareció. Y esto es un junction object, que es un objeto de de unión, donde si yo opté aquí y voy a crear un lookup, voy a crear. Vamos a hacer lookup con el objeto producto. Vamos de aparte. Pero, ¿qué es el objeto? Product 2. Product 2. Bien. Y aquí voy a ir, lo voy a llamar producto, producto, producto. Bien. Producto. Vamos a ir. Next, next.
[00:28:30.00] – Maria Cecilia
Ojo, la etiqueta ahí que se te chisoteó. La última letra, creo.
[00:28:33.06] – Juan Manuel
Sí, a ver.
[00:28:34.06] – Josue
Le quieres hacer la guerra a Salesforce con su Product 2, y él tiene un product 0.
[00:28:37.01] – Juan Manuel
¿ustedes saben por qué él se llama product 2?
[00:28:39.05] – Francisco
No, pero contalo, eso está interesante.
[00:28:40.21] – Juan Manuel
Okey. Créanme que Salesforce quemó internamente el API name del objeto original, productos, y los chicos de desarrollo, cuando en una nueva versión de toda la funcionalidad de productos tuvieron que… O no sé creativos. Product 2. Ok, bien. Acá le voy a decir next. Vamos acá, vamos aquí. Perfecto. Ahora, un campo. Acá estoy seleccionando el producto. Ahora, la cantidad. La cantidad. La cantidad. Number. Number. Cantidad. Cantidad. Cada empresa, cada organización, puede determinar si de manera predeterminada ponemos 18 números o O si, por ejemplo, queremos hacer algo más acotado, cuatro. También, acá acabo con el 14. Acá yo voy a poner cuatro. Y sepan que también es posible utilizar decimales. Una de Y una de las cosas que voy a hacer ahora es otro campo más para poder asociar la factura. Y aquí vamos con factura. Factura es el objeto que acabo Voy a crear minutos atrás. Minutos atrás. Bien, bien. Vamos con esto. Vamos con esto. Y, okay. Ahora tenemos un lindo desafío. Es un lindo desafío, que es esto, que es un enchastre. Dejarlo más más o menos lindo. Entonces, voy a venir acá, voy a clic en Edit Page. Edit Page. Y en Edit Page, y en Edit Page lo que voy a buscar, lo que voy a buscar es Esto.
[00:30:30.23] – Juan Manuel
Productos de factura, ¿qué te pasa? Acaban de aparecer los productos de la factura. Me vuelvo loco. Esto va a ir tomando onda. Estamos construyendo todo un sistema. Escuchen, si esto parece difícil, no se estresen. Recuerden la grabación. Vuelven a ver todo de nuevo. Okey, yo haría esto. Mira, yo haría esto. Los productos de la factura yo los mando acá arriba. Y acá, a este related, lo voy a llamar activity. Lo voy a llamar activity. ¿Por qué lo quiero llamar activity? Porque esta activity la voy a pasar acá. A ver. Bien. Y acá me quedan los details. Perfecto. Este lo borro y acá hago clic en Save. Tengo que activar porque estoy creando una Lining Record Page de una. Para hacer las cuestiones fáciles de entender, le voy a decir: Mirá, esto es la org default. Y vamos. Estamos quedando, chicos, de tiempo. ¿Puede ser, Francisco?
[00:31:36.10] – Francisco
Sí, tenemos un plan B igual para seguir. Así que dale tranqui.
[00:31:39.09] – Juan Manuel
Con la mente me dice que sí. ¿Cuál sería el plan B?
[00:31:41.23] – Francisco
A ver. Tengo un flow hecho para mostrar lo del repiter y el transform y ver cómo se haría eso.
[00:31:48.02] – Juan Manuel
Ahora vamos a hacer una cosa. Vamos a hacer una cosa. Nos quedan 15 minutos de clase. Nos extendimos mucho. Nos quedan 15 minutos de clase. Quiero meter la microclase de inglés. Entonces, vamos a hacer algo. Todo este sistema de facturación y stock lo vamos a hacer en más de una clase. Yo voy a querer que Francisco me comparta pantalla y me haga una exploración de ese flow, porque en la próxima clase, en la próxima clase, vamos a meter productos con cantidad acá, pero no lo vamos a hacer manualmente de esta manera, sino que lo vamos a hacer con el flow de Francisco. Digamos, si Francisco Croso, lo del plan B, está siempre un paso más allá. O sea, yo trato de darme cuenta que la vida tiene un camino y salís vos metiendo la mano adentro de una galera y sacando un conejo. Me gusta.
[00:32:43.15] – Francisco
Antes de ir, la cámara se dejó de ver, ¿no? O sea, mi cámara se fue. Se alcanzó y se fue.
[00:32:48.19] – Juan Manuel
Pero estás mostrando algo extraño. Yo creo que como estás utilizando un Mac enlazada con tu iPhone, creo que tu iPhone está apuntando a algún lugar extraño.
[00:33:02.09] – Francisco
No, quedó bautilada.
[00:33:03.19] – Juan Manuel
Muy bien. Compartimos pantalla. Vemos el flow. Redondeamos la clase de inglés y en la próxima clase retomamos toda la construcción de las líneas de producto dentro de la factura. Vamos a aprender cómo sacar el total, cómo meter más información, cómo asociar eso a un cliente y el flow que Francisco nos va a mostrar ahora lo vamos a embeber en la Lightning Record page para que se pueda generar todo de una manera más cómoda. Vamos con vos, Francisco.
[00:33:38.05] – Francisco
Bien, vamos a ver rapidito dos cosas interesantes para hacer con esto. Después lo vamos a alejar y lo vamos a hacer con esos objetos que hizo ahí Juanma. Me avisan ahí si se ve poniendo un 6 en el chat. Lo poné, boludo. Muy bien.
[00:33:52.11] – Juan Manuel
Felipe, me encanta Felipe. O sea, poniendo un 6 en el chat, el chabón, se ve. Bien, bien.
[00:33:58.17] – Maria Cecilia
No, porque yo había Te he hecho una pregunta, si seis personas ponen sí, hago la clase, microclase, si no, no.
[00:34:05.12] – Juan Manuel
No, vos no zafás, profesora multilingüe. La clase la das o la da, no tenés alternativa.
[00:34:12.10] – Francisco
Bueno, a ver si está ahí el flow. Sí, se Muy bien. Entonces, lo que queremos hacer es usar el repiter y el transform, que son como nuestros elementos estrella, para ir creando todas esas líneas dentro de la factura de manera sencilla. Entonces, lo que vamos a hacer, esto ya está armado y antes de que que me digan algo, esto no funciona, pero lo que quiero hacer es mostrarles cómo haríamos usando flows, usando el elemento repiter y usando el elemento transform para poder crear muchas líneas en una sola pantalla. Entonces, imagínense, crean la cabecera de la factura y después abren este flow y van agregando las líneas. Para eso, lo que hice fue agregar un elemento de pantalla. Dentro de ese elemento de pantalla, agrégué el elemento repiter y dentro del elemento repiter, agrégué un lookup a producto para básicamente poder ir eligiendo los productos y una cantidad. Y lo primero que voy a hacer es mostrarles cómo se ve, porque va a ser más fácil de imaginar.
[00:35:05.01] – Maria Cecilia
Perdón, Víctor, acá dice: Me gustaría una capacitación para aprender el uso de los elementos de pausa en slow.
[00:35:11.14] – Francisco
Esa es otra. Esa es otra. Ahí yo le voy a preguntar a María Cecilia si la puede dar Josué. Entonces, si yo me paro…
[00:35:21.02] – Maria Cecilia
Josué aparte está refacha, muero porque ve una clase… Sí, total.
[00:35:27.14] – Juan Manuel
Si podés la inventar…
[00:35:28.16] – Maria Cecilia
Ese look hay Me voy a dar la de explotarro al máximo. Ese hopo loco de…
[00:35:32.18] – Juan Manuel
La va a dar Cecilia la de pausas, un jojo. Además de la Cecilia, tú como… Ahí está, vamos.
[00:35:38.22] – Maria Cecilia
El próximo es Felipe, que dice acá que se patea la pelota. El look de Sub-0, no sé cómo se dice, pero hielo total, espectáculo.
[00:35:48.11] – Juan Manuel
Potexio. ¿Potexio? No.
[00:35:50.13] – Francisco
Dale. Ahora, quiero mostrar esto rapidito. Entonces, lo que les quiero mostrar es cómo agregaría productos, diferentes productos y cantidades. Entonces, con el repeater puedo ir haciendo esto, ir agregando, eliminando, etcétera. Entonces, esto no lo voy a ejecutar porque esto no funciona. Pero para hacer esto, les digo, agregó un repeater, agregó un lookup a producto y esto me llevó un tiempito, entonces, se los voy a contar. Y cuando yo agrego un lookup al repeater, lo que me va a pedir es… No es tan intuitivo Un poco como, al menos yo lo había pensado inicialmente, que es: yo había pensado que acá uno ponía el ID en el API name del campo que te está pidiendo y después acá agregaba Product 2 en el objeto. Lo que te hace el lookup es pedirte el lookup de referencia de otro objeto. Entonces, por ejemplo, para agregar el del Product 2, lo que yo estoy haciendo es decir, yo necesito el campo Product 2 ID del objeto Opportunity Line Item. Es decir, en este objeto, en este Opportunity Line Item, yo tengo un campo que se llama Product 2 ID, que hace referencia a un Product 2. Yo lo que originalmente había hecho o había entendido, y esto por eso se los cuento, es que había puesto Product 2 acá y ID acá, porque yo me imaginaba que esto funcionaba de esa manera, decirle cuál es el objeto y cuál es el campo al que querés referenciar con este lookup.
[00:36:59.20] – Francisco
Pero No es así. Acá tengo que elegir product, brand, item, es opportunity. Y acá tengo que elegir el campo al que voy a hacer referencia. Esto se lo vamos a sacar porque no es una referencia a algo que esté dentro de nuestro flow. Y eso hace que vaya a buscar el lookup de este objeto y de este campo. Eso como primera cosa que me pareció poco intuitiva y que me parece que está bueno explicar acá. Y una vez que tenemos nuestro repeater loco que consigue los productos y las cantidades, tenemos que hacer un look, porque recuerden que todo lo que nosotros tenemos en el repeater no está formateado, no tiene un formato. Y acá hay otro truco que hay que hacer. ¿Por qué? Porque este lookup de Salesforce no nos da acceso directamente a una ID. No es que ya tenemos el product ID acá y después lo parciamos. Yo no puedo hacer, por ejemplo, el transform. Perdón si voy un poco rápido. Pero yo no puedo… El transform tengo como origen lo que está en el repeater, no puedo usar esto directamente. Lo que tengo Lo que voy a hacer, y este es otro truquito que hay acá adentro, es antes lo tengo que parciar, o sea, lo tengo que llevar a algo, a un tipo de dato primitivo, a un string.
[00:38:09.00] – Francisco
Y la forma en la que estoy haciendo eso es que estoy diciendo: llevame a una variable auxiliar que yo creé que que se llama Opportunity Line Item y cuyo campo, Product 2. Id, igualámero con, ahora sí, lo que tengo en el repeater y el record id. Esto, si quieren, lo vemos en una clase más… Lo que te quiero decir es, el campo que yo estoy agregando acá, el lookup que estoy agregando acá, tienes algo como un tipo complejo. No me puedo llevar una ID de acá. Entonces, lo que tengo que hacer antes es usar una variable auxiliar para bajar eso a un string, que en este caso es mi variable auxiliar, Product 2. Id. Y después, esto también es algo que no hay que No lo hice, pero lo hice solo para los fines prácticos, que es que el opportunity ID, yo me lo tendría que traer de algún lado un poco más elegante, me lo estoy seteando acá en una auxiliar también. ¿Por qué? Porque después en el transform, lo que voy a hacer es: me voy a llevar la cantidad…
[00:38:57.17] – Maria Cecilia
¿te puedo interrumpir, Frank, con una pregunta? Claro que sí. Puede ser que Salesforce modificó la forma de crear un free developer org. Antes, el form de sign up tenía el username y uno podía crear con el mismo email varias orgs. Ahora solo pide el email y no me deja crear otra org.
[00:39:13.18] – Juan Manuel
Vamos a averiguar.
[00:39:15.03] – Maria Cecilia
Y otro… No sería mejor hacer un… Get records. Sí, get records de product dos antes del screen para hacer referencia y no tener que poner el opportunity line item.
[00:39:24.22] – Francisco
Podrías hacerlo, pero igual tenés que hacer esto. Dentro del look, no podrías hacer la query, digamos. No podrías hacer el get record.
[00:39:32.17] – Juan Manuel
Sí, te harías rompiéndose. Bueno, Fran, esto, lo vamos a continuar en la próxima clase. Nos queda todo el encabezado de la factura, todos los productos de la factura y la profundización de este flow hermoso y maravilloso que acaba de hacer Francisco. Fran, ¿algo más que quieras decir? Y vamos con la micro clase loca del…
[00:39:57.06] – Francisco
No, vamos. La próxima lo hacemos bien con los de ahí, pero esta va a ser un poco la idea de lo que vamos a hacer en la próxima.
[00:40:03.20] – Juan Manuel
Conceptualmente va a ser esto. Exacto. Bien. Teacher, ¿de qué vamos a hablar hoy? Fui compartiendo pantalla porque…
[00:40:10.18] – Maria Cecilia
Hoy me acompaña.
[00:40:11.19] – Juan Manuel
¿qué es eso?
[00:40:12.20] – Maria Cecilia
¿qué es eso? Sting charts. Sí, mejor que te acompañe que ya está por fin. Sí, esta ya palmó. Esa ya palmó y el otro… Bueno, aquí estamos, me va a acompañar. Bueno, es complicadísimo en cinco minutos y sin soplar tratar de hacer algo copado en inglés, pero vamos, vamos por eso. Con miedo al éxito. Sí, vamos a: ¿Qué es lo que más quiero ver en el chat? Algo que sea tedioso en inglés, cosas que uno quiere decir, you want to say, but it’s completely different in Spanish. Por ejemplo, algo que uno quiere decir, pero lee y en español es completamente diferente. A ver qué me dice.
[00:40:57.14] – Juan Manuel
En español, si yo digo: Estoy muy contento, ¿cómo lo digo en inglés?
[00:41:02.02] – Maria Cecilia
Acá dice cancelar la meeting, muy bien. Uno puede decir cancel the meeting, pero hay otra forma más corta de decir cancel the meeting para sonar más profesional, sobre todo en un entorno profesional como Salesforce, que son los presentes hoy. A ver, I’m very happy. Bueno, Francisco se va. Poneme la primera imagen, por favor, Juan Manuel. ¿Esta? Sí, bueno, no era esta, pero No importa. A ver la que viene. O todas las que vos quieras. Bueno, no importa. Begin the meeting o cancel the meeting. Cancel the meeting, por ejemplo, podríamos decir con call y una preposición. A ver quién se anima. Puede ser a meeting, a call, a networking event. ¿Qué preposición va con eso? Call the meeting. Hay una preposición como off, a on in, para decir cancelar en inglés.
[00:41:59.21] – Francisco
De, sería yo.
[00:42:01.03] – Maria Cecilia
No, sería off. Por ejemplo, begin the meeting, podemos decir in the meeting, kick off the meeting, cancel the meeting, pull off the meeting. Muy bien, Felipe. Off. Lorena, off. Son formas más avanzadas que se llaman frayse and verse, que es lo que usan muchísimo los nativos y que en dos palabras uno puede decir cancelar, terminar. Es un inglés más pro, vendría a ser. Lo mismo que reject the offer, sign down the offer, approve the deal, approve the project, cut in the deal. ¿Kick off? Kick off es, start right now, como kick off the meeting, kick off the call, kick off. Es, start, Seguim. Discuss in detail es lo que van a hacer la próxima, ¿no? Discuss. Discuss, acuérdese que no es discutir. Discuss es hablar, to talk about something. ¿Sí? La diferencia entre discuss o debate y fight with your hands, ¿no? Ya ahí sería un problema, pero discuss in detail is go over the details y handle the problem. Handle es tratar el problema, tratar de resolver el problema. Deal with the concern. Son formas más avanzadas de poder decir lo mismo, ¿sí? Reject, sign down, approve, cutting, begin, kick off, discuss, go over, cualquier cosa, go over the details, go over the data, go over the information, and handle the problem is deal with the concern.
[00:43:37.19] – Maria Cecilia
Okey, kick off the class. Muy bien, okey. Ahora, si vamos a la próxima, un minutito, tenemos tiempo, ¿no? Y una más avanzada del tiempo que se llama Turn and hide under the carpet. Se la inventó Fran. What? What? What? What? What sería la correcta A, B, O, C? En Se abre el call, dice así. Los dígitos. Muy bien. Sí, lo acabamos de aprender, pero quería saber si estaban atentos. Skip over, go over o pass the details in the next call. B, C, number two.
[00:44:13.16] – Josue
I think go over.
[00:44:14.18] – Maria Cecilia
Go over the details. Muy bien. Pass es un false friend. En inglés, pass es aprobar. ¿Sí? Pasan exam, a chest. No digan: Let’s pass to the front. ¿Sí? Pass es un amigo falso del inglés al español. Muy bien. Y la última: there was a bag in the automation. Automation. A ver, Juan Manuel. Automation.
[00:44:39.10] – Juan Manuel
Yo ya pensé mucho.
[00:44:40.23] – Maria Cecilia
No, bueno, pero repetí, porque a veces decís: automation. ¿Cuál? Es automación.
[00:44:47.01] – Juan Manuel
Automation.
[00:44:48.05] – Maria Cecilia
Automation. Automation. But the support team managed to handle, avoid o deal with the problem quickly. Es lo que estamos haciendo ahora. A, B o C, number three. Felipe, A, handle the problem quickly o deal with the problem? Deal with. Deal with. Okey, muy bien. Deal with the problem. Excelente, muy bien. Entonces, acuérdense, kick off the meeting. Pueden empezar cualquier cosa que puedan reemplazar con begin o start, a partir de ahora usen kick off y van a quedar espectaculares. Lo mismo que go over the details, go over the data, the information, go over y deal with, deal with the problem, en vez de handle. Esos son tres slang, sling down the offer, esa me quedó. Muy bien, muy bien. Sing down, sing down.
[00:45:40.09] – Juan Manuel
Lo escribí al revés, lo escribí al revés.
[00:45:41.23] – Maria Cecilia
No te da el inglés para Salesforce, para los que quieran y les interese, me escriben por privado y vamos anotando un grupo considerable como para hacer tips, consejos y cosas útiles para Salesforce professionals.
[00:45:56.20] – Juan Manuel
Es hermosa, esa es hermosa, muy linda alternativa. Bien, muy contento. Perfecto. Muy contento en esta clase. Muy contento y muy contento y muy contento que todos estamos aprendiendo. Estamos aprendiendo y en la próxima vamos a continuar con el flow de Francisco, con la construcción de la factura. Y superagradecido por la presencia de todos ustedes en el día de hoy. Un saludo muy grande y nos vemos en la próxima clase en vivo, en la próxima Masterclass para Salesforce. Chao.