Beaucoup d’entre nous connaissent déjà l’importation de données dans monday.com par l’assistant d’importation, qui est excellent pour ajouter de nouveaux éléments. Cependant, dans ce guide, je vais plutôt vous montrer les étapes à suivre pour mettre à jour les éléments existants sur vos tableaux monday.com.
Si vous n’êtes pas familier avec l’app Advanced Formula Booster qui réinvente les formules de monday.com, je vous recommande de lire Les notions de base d’Advanced Formula Booster. Cet article vous guide à travers les étapes de création de votre première formule, puis de son automatisation à l’aide de copies d’écran et d’une vidéo.
Le processus
Voici le processus que nous allons suivre:
Étape 1: Importation
La première étape consiste à créer un tableau monday.com nommé Données importées pour importer vos données. Pour chaque colonne de votre source de données, créez une colonne dans le tableau. Ensuite, utilisez l’assistant d’importation de monday pour remplir le tableau.
Étape 2: Normalisation (1 formule – 0 automatisation)
Une fois vos données importées, vous pourriez avoir besoin de les normaliser pour assurer la cohérence. Par exemple, vous pourriez vouloir formater les noms avec seulement la première lettre en majuscule et vous assurer que toutes les adresses mail sont en minuscules. De plus, vous pourriez devoir ajouter des zéros non significatifs aux nombres pour maintenir une longueur fixe. Pour cela, créez une formule ‘Normalisation’ dans le tableau Données Importées. Utilisez le préfixe ‘BoardItems’ pour tous vos codes colonne. Cela garantira que tous les éléments sont modifiés par votre formule.
1: {BoardItems.Name}=FIRSTCASELOWER({BoardItems.Name})
2: {BoardItems.Email}=LOWER({BoardItems.Email})
3: {BoardItems.CaseNumber}=LEFTPAD({BoardItems.CaseNumber},6,0)
Comme toutes les colonnes sont préfixées par ‘BoardItems’, vous avez juste besoin d’exécuter la formule une fois. Utilisez simplement le bouton ‘Run’ directement depuis l’éditeur de syntaxe, et regardez vos données importées se formater comme par magie.
Étape 3: Filtrer
Pour les trois dernières étapes, créez une formule nommée ‘UpdateTarget’. Cette formule devra être exécutée sur chaque élément importé à l’étape 5 (contrairement à celle de l’étape 2 qui traitait tous les éléments en une seule fois).
Étant donné que vous lirez et mettrez à jour des éléments sur un tableau différent de celui où vous créez la formule, vous aurez besoin d’accéder à cet autre tableau. Pour cela, ouvrez le Sélecteur de colonnes et accédez à l’onglet ‘Board2’. Cliquez sur le bouton ‘Select’ et choisissez le tableau cible. Changez l’ alias de Board2 à Target.
Vous avez maintenant accès à tous les éléments du tableau Cible et à leurs valeurs grâce au préfixe ‘TargetItems’.
Pour pouvoir mettre à jour les enregistrements sur votre tableau Cible, vous devez identifier la clé de correspondance entre les deux tableaux. Cette clé pourrait être le nom de l’élément sur les deux tableaux, ou un identifiant unique, stocké dans le nom de l’enregistrement importé et dans une colonne de Nombres de l’enregistrement Cible. Le type spécifique de clé n’a pas d’importance. Vous pourriez même utiliser une clé combinant plusieurs colonnes.
Pour cet exemple, nous utiliserons les noms des éléments comme clé.
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”})
Il est important de bien comprendre ces lignes. La ligne 2 se lit comme suit : trouver la position du nom de l’élément (c’est-à-dire, le nom de l’élément importé) dans la liste de tous les noms des éléments cibles et la stocker dans [P]. La ligne 3 continue ainsi : si [P] est égal à 0 (c’est-à-dire, aucune correspondance trouvée), créer un nouvel élément dans le groupe ‘Nouveaux Éléments’ du tableau Cible et stocker sa position dans [P].
Ainsi, qu’une correspondance ait été trouvée ou non, nous avons maintenant un élément à mettre à jour avec nos données importées. Cet élément se trouve à la position [P] sur le tableau Cible.
La valeur de [P] est essentielle pour le reste de la formule.
Si vous ne souhaitez pas créer un nouvel élément lorsqu’aucune correspondance n’est trouvée, remplacez la ligne 3 par celle-ci :
3: [-]=IF([P]=”0″,STOP())
Maintenant, nous pouvons appliquer des filtres selon les besoins. Par exemple, imaginez que vous ne voulez pas mettre à jour un élément dont la date de début est passée.
4: –Filtrer les mises à jour
5: [-]=IF({TargetItems.StartDate#[P]}<=TODAY(),STOP())
Voyez comment nous utilisons l’indicateur de position #[P] pour lire la valeur correspondant sur le tableau Cible. Un indicateur de position est une valeur numérique précédée d’un ‘#’, ici la valuer numérique est stockée dans la variable P. Par exemple, alors que {TargetItems.StartDate} récupérerait la liste de toutes les Dates de Début sur le tableau, {TargetItems.StartDate#[P]} ne récupère que la date spécifique que vous souhaitez.
En d’autres termes, la ligne 5 fonctionne comme suit : Si la Date de début de l’élément correspondant est aujourd’hui ou est déjà passée, la formule cesse de s’exécuter.
Étape 4: Transformer
Avant d’exécuter la formule pour chaque élément importé, vous devrez peut-être transformer les données. Voici quelques exemples typiques de transformations.
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”))
- À la ligne 7, nous mettons simplement à jour la Date de Début Cible avec la Date de Début importée.
- La ligne 8 vérifie si le Taux Cible est déjà défini ; si c’est le cas, nous le stockons dans la variable [Rate]. Sinon, nous attribuons le Taux importé à [Rate]. Ensuite, à la ligne 9, nous mettons à jour la colonne Taux avec la variable [Rate].
- La ligne 10 ajoute les Heures Passées importées à la valeur existante dans la colonne des Heures.
- La ligne 11 définit la colonne de chronologie en utilisant les Dates de début et de fin importées.
- Les lignes 12 à 14 convertissent la priorité numérique importée en une valeur pour la colonne Priorité Cible.
- À la ligne 13, nous assignons John Doe à l’élément, mais seulement si la priorité est élevée.
Étape 5: Actualisation (1 formule – 0 automatisation)
Comme mentionné précédemment, cette formule doit être exécutée pour chaque élément importé. Peut-être vous demandez-vous si vous devez configurer une automatisation, ou même 50 automatisations si vous avez 50 enregistrements importés.
Pas du tout ! Vous pouvez l’exécuter en un seul clic, directement depuis l’Éditeur de formules.
Conclusion
Une fois de plus, nous espérons avoir démontré la puissance et la polyvalence du Advanced Formula Booster. Il peut être utilisé dans de nombreuses applications, jouant, par exemple, un rôle crucial dans la facilitation de l’importation de données sur votre tableau monday.com—un apport particulièrement précieux pour ceux qui ont besoin d’importer des données régulièrement.