Importar bases de datos contemplando relaciones

David Castellanos shows how to import related databases into GIST from Excel or Google Sheets. You need to predefine your schema, match primary keys exactly, and set up relationships between tables so that when you import data, records link automatically. Once connected, filtered options in workflows show only related records, like branches for a selected client.
Chapters
Hola, ¿Qué tal? Bienvenido a otro vídeo tutorial de GIST. En este vídeo te voy a enseñar cómo importar bases de datos a través de un Excel, un CSV, pero que esas bases de datos estén relacionadas entre ellas. Y esto pasa, como sabes, en GIS puedes importar información, tú puedes subirle un CSV, un Excel y se sube toda tu información a la base de datos, pero si esa base de datos está relacionada con otra, tienes que hacer las relaciones manualmente, que de hecho es un tutorial que muy recientemente hemos lanzado, seguramente lo vas a encontrar arriba de este. Ahora, aquí viene una cuestión, y esto lo acabamos de lanzar nuevamente y estoy seguro que te va a encantar, es que puedes tener una base de datos de clientes, por ejemplo, y una de sucursales, y puedes desde tu Excel, mira Excel, voy a poner una columna de cliente, estos son los clientes relacionados, importas todas las de proyectos y en automático GIS ya lo relaciona directamente. Y esto funciona para cuando tienes diferentes entidades de datos, por ejemplo, un cliente que puede tener muchos contactos, un cliente que puede tener muchas sucursales, un cliente que puede tener muchos tickets de servicio, una sucursal que puede tener muchos proyectos, etcétera. Y esto nos permite tener muchas relaciones y además hacer una carga masiva mucho más rápida y práctica. Así que bueno, yo voy a partir del ejemplo de un caso que tengo una base de datos de clientes y una de sucursales, Por ejemplo, en la de clientes yo voy a agregarle una columna. Ojo, y esto es muy importante, si tú quieres importar información en las bases de datos de GIST, necesitas ya tener la estructura creada en tu base de datos, Es decir, si quieres aquí, por ejemplo, el nombre de la empresa, pues bueno, tienes que poner una columna en GIS, nombre de empresa, porque si no, no te va a dejar importar aunque sea un Excel, un CSV, o sea, ya tienes que tener una base de datos con una estructura. Entonces, bueno, aquí tú puedes percatarte de que el nombre de la empresa lo voy a poner como llave principal, eso es importantísimo y de hecho hoy es crucial este tema de la llave principal. La llave principal de tus bases de datos es a través de la cual se buscan los valores. Si tú, por ejemplo, le dices a una sucursal que le pertenece al cliente 1, ah, bueno, en la columna de nombre de empresa tiene que decir cliente 1 para que haga el match, ¿OK? Y ahorita, lo vamos a ver. Ahora en clientes, ¿Qué otra cosa puedes tener? A lo mejor un nombre de contacto, nombre de contacto principal y esto lo voy a poner como un texto y no sé, a lo mejor este, la. El RFC, el RFC o el root o el RUN que en diferentes países lo conocen, que es el número fiscal y listo, perfecto, ya tenemos nuestra base de datos clientes. Voy a hacer algo muy simple ahorita para cuestiones didácticas y tengo otra de sucursales. ¿Primero, la base de datos de sucursales va a tener un nombre de sucursal, oye, que la sucursal matriz, que la sucursal Juárez, que la sucursal tal, OK? Y además también una sucursal va a tener una ubicación o un domicilio. Y listo, con eso, así de simple lo vamos a dejar. El nombre de la sucursal es el que va a ser la llave principal y es aquí donde empieza la magia en las bases de datos de GIS. Yo voy a hacer una relación y le voy a decir vincúlame a otra base de datos. Cuando un registro de un cliente puede tener muchas sucursales y le doy vincular y listo. Aquí dice nombre empresa. Si yo agrego un registro de sucursal, puedo seleccionar a qué empresa le pertenece. Como ahorita no tengo empresas, pues está vacío. Vamos a crear una empresa para hacer el ejemplo. Imagínate que yo en clientes ya tengo un registro que se llama empresa, el contacto es David y el RFC es este dato. Listo, lo voy a guardar. Ahora, si yo me voy a la base de datos de sucursales, puedo crear un registro y decirle, mira, voy a crear el registro que le pertenece a la empresa 1, que es la sucursal matriz y este es su domicilio. Y lo guardas. Y si te fijas, ya está relacionada. Esto en los procesos es increíble la magia que te puede ayudar para hacer relaciones y decir, Gist, fíltrame todos los clientes, digo, todas las sucursales que le pertenezcan a este cliente, por ejemplo, o en automático, Gist, yo te voy a decir cuál es la sucursal y quiero que me digas cuál es el cliente. Bueno, todo ese tipo de cosas se pueden. De hecho, te voy a dejar un video aquí en la descripción de este tutorial, te voy a dejar un vídeo de otro tutorial que hice de cómo hacer esas relaciones y manejarlas perfecto. Entonces, bueno, ya tengo así mis bases de datos, ahora yo no quiero, imagínate que tengo mil contactos y mil clientes y mil bases y mil sucursales, pues no quiero estar una por una subiendolas así como lo hice ahorita, es por eso que nos vamos a nuestro queridísimo Google Sheets o Excel o un CSV, como tú quieras, yo ahorita lo voy a hacer en Google Sheets y luego exportar para que veas cómo funciona, donde vamos a poner todos nuestros datos y los puedes, Aquí lo importante es que hagas una estructura muy similar, de hecho igual a la que está en tu base de datos de GIS, por ejemplo la de clientes, necesitamos nombre de empresa, nombre de contacto y el RFC, obviamente solo necesitas crear las columnas en tu Excel de lo que quieres importar en Gist, pero en GIS ya deben existir las columnas para que puedas decirle Gist, mételo en esta columna, entonces nombre, empresa, contacto y aquí le vamos a poner su número fiscal, entonces bueno imagínate que aquí pongo empresa 1, empresa 2, no me quiero complicar demasiado la existencia, simplemente empresa 1, empria 2, etcétera, o sea tú te darías a la tarea con tu equipo de llenar este Excel con todos los contactos, con todos los contactos, con todos los datos de empresa, etcétera, ahí está, RFC, le voy a poner nada más para fines didácticos de este ejemplo. Listo, ya tengo mi base de datos de clientes, ojo, en tu caso pueden ser mil registros y funciona exactamente igual, entonces pones tú todos tus clientes, normalmente tenemos un Excel lleno con todo, ahora lo importante es que veas aquí, visualices por qué lo dividimos en varias bases de datos, ¿Por qué? Porque a fin de cuentas nos genera más orden, ¿Estás de acuerdo conmigo que un cliente puede tener muchas sucursales y si todo lo tienes en la misma base de datos, cuando selecciones un cliente te va a decir oye es la sucursal tal y no tiene sentido porque por ejemplo si quiero hacerle un servicio a ese cliente pero en otra sucursal, pues en los mismos datos del cliente están datos de otra sucursal que no tiene sentido, es por eso que las dividimos en uno, todo lo que tenga que ver con los datos del cliente y en otra que se llama sucursales todo lo que tenga que ver con la sucursal, le voy a poner nombre de sucursal, sucursal, en otra vamos a poner la ubicación y ya está, creo que es todo lo que tenía Si me voy acá en Gist, sucursales es sucursal y domicilio? Ahora, la relación, ¿Cómo la hacemos? Y es aquí donde empieza la magia. Primero vamos a empezar con la de clientes. Yo ya tengo mi base de datos de clientes, pues simplemente le voy a dar archivo, la voy a exportar aquí, la descargaré como un Excel. Listo, ya se descargó. Ahora voy a ir a Gist y le voy a decir, Gist, en la base de datos de clientes, quiero importar. Aquí le vamos a decir que nos seleccione ese archivo, yo le voy a decir, aquí está, de clientes. Y fíjate, en automático me detecta las columnas, mira, detecté que hay un nombre de empresa, ¿Donde lo ponemos? Ah, mira, importalo en nombre de empresa. Aquí estoy haciendo el match de la columna que existía en el Excel, a donde la mete en el Gist. El contacto, ¿Donde lo ponemos? En el nombre de contacto principal y el número fiscal en el que yo puse como RFC, root o run. Le digo que la primera fila no debe ser importada, o sea, no le doy check a esto, ¿Por qué? Porque la primera fila son nombres de la columna, no me interesa que se importe como un cliente a partir de la segunda. Y listo, le damos importar y puedes ver que ya están aquí todos los clientes, incluso hasta los folían automático, ¿Viste? Excelente, ya estamos, ya tenemos los clientes. Ahora, ¿Qué hacemos con la de sucursales para hacer una relación? Recuerda, tiene que estar la estructura y es aquí donde yo ya puse sucursal y domicilio. Si me voy acá, sucursales, ya puse sucursal y bueno, ubicación, domicilio es lo mismo, domicilio, le voy a poner domicilio. Ahora, cómo le digo, Gist, la sucursal matriz, matriz de la empresa 1 y luego la sucursal Juárez de la empresa 1, que están en Matamoros, Moros, Matamoros 25, en Monterrey. Igual aquí voy a poner domicilios, cualquiera, esta está en avenida Juárez, en Guadalajara, Jalisco, etcétera. Aquí yo voy dando, cómo le digo, oye, Gist, esta sucursal matriz de Matamoros 25, Monterrey, le pertenece a la empresa 1. ¿Cómo le digo desde aquí? Porque si yo importara esta base de datos, tendría que importarla. Y fíjate, lo vamos a hacer para que veas el trabajo que te voy a ahorrar con esta nueva cosa que acabamos de lanzar, ya descargué mis sucursales, ahora los vamos a importar como le hice ahorita con los clientes. OK, ¿Qué pasaría? Importo las sucursales, le digo Gist, aquí están mis sucursales, el nombre de la sucursal, importamelo aquí y el domicilio, aquí lo importamos. Oye, si se importaron las sucursales, qué maravilla, pero no se relacionaron las empresas que yo ya tengo en mi otra base de datos, o sea, tendría que irme una por una y decir, ah mira, esta le pertenece a la empresa 1, esta le pertenece a la empresa uno también, qué lata ¿No? Imagínate que tienes mil clientes, mil sucursales, ¿Lo vas a hacer a mano? No, es un hecho que no lo vas a hacer y yo tampoco lo haría, así que mejor vamos a automatizarlo con la importación. Entonces, ¿Qué vamos a hacer? Aquí en la base de datos de sucursales, que es la que está relacionada a la de clientes en mi ejemplo, puede ser cualquier otra relación, el chiste es la segunda, o sea, quien puede haber, en la que puede haber muchas sucursales de un cliente es en esta. ¿Entonces le vamos a agregar una columna y le vamos a decir, OK, mira, el cliente al que le perteneces, a quién es? Y ya puedes tener muchas sucursales, por ejemplo, está la sucursal San Fermín, que esta le pertenece a la empresa 2. Ahora, ¿Cómo le voy a ir diciendo al Excel, este le pertenece a tal cliente? Pues bueno, tenemos que copiar, y es aquí donde se vuelve súper importante la llave principal, asegúrate de que el nombre de empresa es el que tú le dices a Gist cuando haces la relación, por ejemplo aquí, matriz empresa uno, si yo me voy a la base de datos de clientes, ¿Cómo se llama la empresa 1? Ah, la copiamos exactamente igual, cópiala exactamente igual por favor, para que no haya discrepancias, le pertenece a la empresa 1, ah, mira, este también a la empresa 1. ¿Ahora, la de San Fermín a quién le pertenece? Pues le pertenece a la empresa 2. Perfecto, lo copias, lo pegas y esta es San Fermín en Venezuela, digo aquí haciendo un ejemplo burdo. Entonces de esta manera tú creas una columna adicional diciéndole a Gist cuando lo importes, que este será el cliente al que lo relacione. OK, Vamos a hacer el ejemplo con estos, con estos tres registros, voy a crear otra sucursal para que se vea el ejemplo, donde en clientes voy a traerme la empresa 5 y voy a decirle que la empresa 5 tiene una sucursal que se llama San Cristóbal. Y aquí le vamos a poner que esto está en Chiapas, México. Listo, Es un ejemplo. Con esto yo ya tengo mi base de datos de sucursales y la vamos a descargar como un Excel. Listo, se descargó como sucursales uno y ahora vamos a decir, Gist impórtanos esa base de Datos de sucursales 1. Si te fijas, ya me dice, a ver, ya se detectó que hay una columna de cliente dónde lo vas a meter y es aquí donde te dice nombre de empresa, clientes, y es ahí donde va a ser la relación. Y esto es súper importante, nombre de sucursal, domicilio, la primera no la importas, importar, aceptar. Y fíjate, en automático GIS detectó el nombre de la empresa y la relacionó con la empresa que está en la otra base de datos. Si, tú podrías poner un texto, pero pues el texto de la empresa no te genera la relación entre las bases de datos porque eso es un tema interno de Gist. Con esto que acabamos de meter, si tú pones el nombre de empresa correspondiente a la llave principal de acá, Gist va a detectar a la empresa 5. Si la ubico, ah, perfecto, pues mira, esta sucursal llamada San Cristóbal la vamos a vincular a la empresa 5. Y de esta manera puedes importar diferentes bases de datos simplemente siguiendo este concepto, que es la relación en sí misma, que la crees como una columna adicional y que el valor que exista aquí sea la llave principal de la otra base de datos y que sea exactamente igual escrito para que GIS lo detecte. Entonces, si tú vas a importar tu base de datos de sucursales, proyectos, lo que sea, puedes hacer esto mismo con tus sucursales. Es mucho más fácil estar en el Excel de que dices, ah, OK, estos son todos mis clientes, pues déjame pongo a qué clientes le pertenece cada sucursal. Ya está, pum, importas, ya están relacionadas. Y esto te permite hacer cosas como esta, donde ya le digas, oye, en un proceso, vamos a hacer que en un proceso de servicio, por ejemplo, en un proceso de servicio al inicio yo le diga en el disparador manual en sus campos que tengo dos importaciones de base de datos. ¿Primero la de clientes, que este es de nuestros clientes, vamos a jalar un cliente y de nuestra fila de base de datos, de hecho esto te lo voy a dejar en el vídeo más especificado en la descripción que te voy a dejar aquí abajo y le vamos a decir cuál es la sucursal, la sucursal y aquí fíjate que pasa una magia en cuanto yo le diga cuál es el cliente en automático GIS va a filtrar qué sucursales tiene ese cliente y es aquí donde le damos G, le decimos que hay una configuración avanzada donde nos diga que filtre las opciones del cliente, o sea, cuando el cliente se ha llenado las opciones de la sucursal se van a prefiltrar esto es que no me deje seleccionar sucursales de otros clientes cuando ya le dije que estoy en tal cliente esa relación que acabamos de hacer con la importación como te acabo de explicar te permite hacer esta clase de cosas, OK? Donde aquí yo puedo poner una tarea, lo voy a poner así muy simple, publicamos esto, te digo, te lo voy a explicar mejor en el vídeo que te voy a dejar aquí abajo y cuando yo inicio un servicio digo, ah oye, ¿Sabes qué es la empresa, fíjate, empresa 5 en automático ya sabe que la sucursal o es una nueva o es de San Cristóbal, ¿Ya viste? Ahora si yo le digo ¿Sabes que? No, la empresa no es la 5, es la 1 las sucursales que puedo seleccionar son las dos que están vinculadas a la empresa 1 esto es la magia de las relaciones y de manejarlas bien en tus bases de datos así que bueno, gózalo, importa tus bases de datos y te veo en el vídeo de aquí de la descripción para que veas cómo hacer relaciones y que sepas exactamente cómo tratar eso, te veo en el siguiente vídeo.
More from David

Configurar la sección de mi empresa Usuarios, roles, divisa, zona horaria, branding personalización

Condiciones comprender que es posible condicionar no sólo campos de tipo lista de opciones, varian








