Muchos de nosotros ya conocemos la importación de datos en monday.com a través del asistente de importación, que es excelente para añadir nuevos elementos. Sin embargo, en esta guía, voy a mostrarle los pasos a seguir para actualizar los elementos existentes en sus tableros de monday.com.
Si no está familiarizado con la app Advanced Formula Booster que reinventa las formulas de monday.com, le recomiendo leer Las nociones básicas de Advanced Formula Booster. El artículo le guía a través de los pasos para crear su primera fórmula y luego automatizarla con la ayuda de capturas de pantalla y un video.
El processo
A continuación, el proceso que vamos a seguir:
Paso 1: Importación
El primer paso consiste en crear un tablero en monday.com llamado Datos Importados para importar sus datos. Para cada columna de su fuente de datos, cree una columna en el tablero. Luego, utilice el asistente de importación de monday para llenar el tablero.
Paso 2: Normalización (1 formula – 0 automatización)
Una vez importados sus datos, podría necesitar normalizarlos para asegurar la coherencia. Por ejemplo, podría querer formatear los nombres con solo la primera letra en mayúscula y asegurarse de que todas las direcciones de correo electrónico estén en minúsculas. Además, podría necesitar agregar ceros no significativos a los números para mantener una longitud fija. Para ello, cree una fórmula ‘Normalización’ en el tablero Datos Importados. Utilice el prefijo ‘BoardItems’ para todos sus códigos de columna. Esto garantizará que todos los elementos sean modificados por su fórmula.
1: {BoardItems.Name}=FIRSTCASELOWER({BoardItems.Name})
2: {BoardItems.Email}=LOWER({BoardItems.Email})
3: {BoardItems.CaseNumber}=LEFTPAD({BoardItems.CaseNumber},6,0)
Dado que todas las columnas están prefijadas por ‘BoardItems’, solo necesita ejecutar la fórmula una vez. Simplemente utilice el botón ‘Ejecutar’ directamente desde el editor de sintaxis, y observe cómo sus datos importados se formatean mágicamente.
Paso 3: Filtrar
Para los tres últimos pasos, cree una fórmula denominada ‘UpdateTarget’. Esta fórmula deberá ejecutarse en cada elemento importado en el paso 5 (a diferencia de la del paso 2, que trataba todos los elementos de una sola vez).
Dado que leerá y actualizará elementos en un tablero diferente al que crea la fórmula, necesitará acceder a ese otro tablero. Para ello, abra el Selector de columnas y vaya a la pestaña ‘Board2’. Haga clic en el botón ‘Seleccionar’ y elija el tablero objetivo. Cambie el alias de Board2 a Target.
Ahora tiene acceso a todos los elementos del tablero Target y a sus valores gracias al prefijo ‘TargetItems’.
Para poder actualizar los registros en su tablero Target, debe identificar la clave de correspondencia entre los dos tableros. Esta clave podría ser el nombre del elemento en ambos tableros, o un identificador único, almacenado en el nombre del registro importado y en una columna de Números del tablero Target . El tipo específico de clave no importa. Incluso podría usar una clave que combine varias columnas.
Para este ejemplo, utilizaremos los nombres de los elementos como clave.
1: —Récupérer la position de l’élément correspondant à l’élément importé
2: [P]=FINDPOSITION({Name},{TargetItems.Name})
3: [P]=IF([P]=”0″,CREATEITEM({Name},”New Items”,”Target”})
Es importante comprender bien estas líneas. La línea 2 se interpreta de la siguiente manera: encontrar la posición del nombre del elemento (es decir, el nombre del elemento importado) en la lista de todos los nombres de los elementos Target y almacenarla en [P]. La línea 3 continúa así: si [P] es igual a 0 (es decir, no se encontró ninguna coincidencia), crear un nuevo elemento en el grupo ‘Nuevos Elementos’ del tablero Target y almacenar su posición en [P].
De este modo, ya sea que se haya encontrado una coincidencia o no, ahora tenemos un elemento para actualizar con nuestros datos importados. Este elemento se encuentra en la posición [P] en el tablero Target.
El valor de [P] es crucial para el resto de la fórmula.
Si no desea crear un nuevo elemento cuando no se encuentre ninguna coincidencia, reemplace la línea 3 por esta:
3: [-]=IF([P]=”0″,STOP())
Ahora podemos aplicar filtros según sea necesario. Por ejemplo, imagine que no desea actualizar un elemento cuya fecha de inicio ya ha pasado.
4: –Filtrer les mises à jour
5: [-]=IF({TargetItems.StartDate#[P]}<=TODAY(),STOP())
Vea cómo utilizamos el indicador de posición #[P] para leer el valor correspondiente en el tablero Target. Un indicador de posición es un valor numérico precedido por un ‘#’, donde el valor numérico está almacenado en la variable P. Por ejemplo, mientras que {TargetItems.StartDate} recuperaría la lista de todas las Fechas de Inicio en el tablero, {TargetItems.StartDate#[P]} solo recupera la fecha específica que desea.
En otras palabras, la línea 5 funciona de la siguiente manera: Si la Fecha de inicio del elemento correspondiente es hoy o ya ha pasado, la fórmula deja de ejecutarse.
Paso 4: Transformar
Antes de ejecutar la fórmula para cada elemento importado, podría necesitar transformar los datos. Aquí algunos ejemplos típicos de transformaciones.
6: –Transformations
7: {TargetItems.StartDate#[P]}={StartDate}
8: [Rate]=IF({TargetItems.Rate#[P]}=””,{Hourly Rate},{TargetItems.Rate#[P]})
9: {TargetItems.Rate#[P]}=[Rate]
10: {TargetItems.Hours#[P]}=SUM({Hours Spent},{TargetItems.Hours#[P]})
11: {TargetItems.Timeline#[P]}=TIMELINE({StartDate},{EndDate})
12: {TargetItems.Priority#[P]}=IF({Priority}=1, “Low”)
13: {TargetItems.Priority#[P]}=IF({Priority}=2, “Medium”)
14: {TargetItems.Priority#[P]}=IF({Priority}=3, “High”)
15: {TargetItems.Priority#[P]}=IF({Priority}=3,GETPEOPLE(“John Doe”))
- En la línea 7, simplemente actualizamos la Fecha de Inicio Objetivo con la Fecha de Inicio importada.
- La línea 8 verifica si el Tasa Objetivo ya está definida; si es así, la almacenamos en la variable [Rate]. De lo contrario, asignamos la Tasa importada a [Rate]. Luego, en la línea 9, actualizamos la columna Tasa con la variable [Rate].
- La línea 10 suma las Horas Pasadas importadas al valor existente en la columna de Horas.
- La línea 11 establece la columna de cronología utilizando las Fechas de inicio y fin importadas.
- Las líneas 12 a 14 convierten la prioridad numérica importada en un valor para la columna Prioridad Target.
- En la línea 13, asignamos a John Doe al elemento, pero solo si la prioridad es alta.
Paso 5: Actualización (1 fórmula – 0 automatización)
Como se mencionó anteriormente, esta fórmula debe ejecutarse para cada elemento importado. Tal vez se pregunte si necesita configurar una automatización, o incluso 50 automatizaciones si tiene 50 registros importados.
¡Para nada! Puede ejecutarla con un solo clic, directamente desde el Editor de fórmulas.
Conclusión
Una vez más, esperamos haber demostrado la potencia y versatilidad del Advanced Formula Booster. Puede utilizarse en numerosas aplicaciones, desempeñando, por ejemplo, un papel crucial en la facilitación de la importación de datos en su tablero de monday.com—un aporte especialmente valioso para aquellos que necesitan importar datos regularmente.