Utiliser les champs calculés sur Podio

16/07/2019

Aucun commentaire

On continue la série d’articles sur Podio avec une présentation rapide des champs calculés et des possibilités qu’ils offrent. 

A noter : si Podio est un mot inconnu pour vous, n’hésitez pas à consulter ce billet pour découvrir le potentiel de cet outil avant de poursuivre votre lecture

Qu’est-ce qu’un champ calculé ?

Sur Podio, si vous vous êtes un peu amusés à fouiller dans les modèles d’app, vous aurez remarqué qu’il existe un type de champ dit “calcul” qui se présente comme ceci :

Ou comme ceci si on le voit depuis le détail d’un item (et qu’il n’affiche aucune donnée) :

 

 

Comme son nom l’indique, ce champ “calcul” peut être utilisé pour des opérations mathématiques mais aussi pour concaténer et afficher des données contenues dans une autre app (sous certaines conditions toutefois).

Pour se faire, ce champ utilise des variables.
Ces variables correspondent aux valeurs des champs de l’app qui est en cours de modification ou aux apps liées à celle-ci via un champ “relation”. Pour faire appel à une variable en particulier il faut faire précéder le nom du champ par un @ comme ceci :

Les calculs produiront alors des données sous l’un des trois types suivants: nombre , date ou texte .

Attention : le type de données qui sera produit est défini lors de la première création du champ de calcul et ne peut être changé. Si vous effectuez un calcul sortant un autre type de données que celui pris en charge initialement par le champ calcul, vous obtiendrez un message d’erreur indiquant « Le type de résultat est passé de X à Y ». Mais pas de panique pour résoudre ce souci il suffit de supprimer le champ et de le recréer pour produire le type de données souhaitées.

Comment utiliser les champs calculés concrètement ?

Après cette rapide présentation venons aux plus important :  comment utiliser ce type de champ ?

Et bien prenons un exemple !

Chez TPZ nous avons une app Contacts qui centralise toutes les informations de contact des interlocuteurs des organisations (clients, fournisseurs, partenaires…) avec lesquelles nous sommes en relation. A côté, nous avons aussi une app Projets, nous permettant d’effectuer le suivi des projets et qui est liée à cette app Contacts. Nous pouvons, depuis une fiche projet, nous rendre sur la fiche du contact associé à ce projet pour consulter ses informations en un clic. Mais imaginons que c’est un clic de trop et que nous voulons maintenant rapatrier les informations du contact lié à un projet directement sur la fiche du projet en question. Comment allons nous procéder ?

  • Premièrement il faut identifier les données du contact qui devront remonter sur la fiche projet.
    Pour cet exemple j’ai choisi : le numéro de téléphone, le nom du contact et son adresse mail
  • Ensuite il faut s’assurer que la relation entre les deux applications Contacts et Projets part bien de l’app Projets pour aller vers l’app Contacts. En d’autre terme identifier à partir de quelle app vous créez la relation entre les deux.
    Dans cet exemple la relation entre ces deux apps part de l’app Projets pour aller vers l’app Contacts. C’est à dire que c’est depuis mon app Projets que je peux sélectionner un contact à lier au projet.
  • Puis il faut se rendre dans l’app Projets et cliquer sur le bouton “modifier le modèle”
  • Une fois devant l’écran de modification du modèle d’app il faut faire glisser un champ de type “calcul” dans le modèle à l’endroit où l’on souhaite le voir apparaître sur la fiche projet.
  • Maintenant, je peux appeler le champ qui contient le nom de mon contact depuis mon nouveau champ calculé (le type de données générées par le champ calcul sera donc au format texte), comme ceci : Quelques indications sur cette formule obscure :
    • Le @ sert à appeler le nom du champ dont je souhaite récupérer les données (comme vu dans les paragraphes ci-dessus)
    • Le “All of Nom” correspond à la variable utilisée pour appeler un champ situé dans une autre app
      Tip : si vous cherchez un champ de cette manière “@All of Nom-du-champ” et qu’il ne ressort pas dans la liste c’est surement parce qu’il n’existe pas encore de relation entre votre app et celle qui contient le champ que vous appelez
    • Le “[0]” permet d’indiquer que je veux récupérer les informations du premier contact lié à ma fiche projet et non pas toutes les informations de tous les potentiels contacts liés à cette fiche
  • Je peux ensuite créer autant de champs calcul que nécessaires pour récupérer le mail et le numéro de téléphone de mon contact grâce à ces formules respectives :
    Mail : @All of Nom-du-champ-email[0]
    Téléphone : @All of Nom-du-champ-téléphone[0]

 

  • Ou alors je peux décider de concaténer le nom, l’email et le téléphone de mon contact dans un seul champ comme ceci :
    Quelques indications sur cette formule encore plus obscure :

    • On retrouve les même variables que vues précédemment, qui permettent d’appeler les champs “nom”, “email” et “téléphone portable” de l’app Contacts
    • Le signe + permet d’indiquer au champ calcul que je souhaite intégrer plusieurs valeurs dans ce même champ calcul
    • Les “ – “ sont placés comme ceci pour des raisons purement esthétiques (séparateurs entre les données)
      Tip : si vous souhaitez intégrer un ou plusieurs mot, un espace ou un signe entre vos données il suffit de placer ce texte, ce signe ou cet espace entre guillemets. Cela indique au champ calcul que je vous n’êtes pas en train de saisir une variable mais du “texte libre
  • Et voici le résultat vu depuis la fiche projet :

 

Voilà on va s’arrêter là pour aujourd’hui avec les manipulations de champs calculés car j’ai bien conscience que toutes ces informations peuvent être complexes à intégrer.

Mais je vous assure qu’avec un peu de pratique (et l’aide de la communauté Podio) on saisit rapidement la logique de ce type de champ.

Un conseil pour finir !

Lors de vos premiers essais avec ce type de champ, ne cherchez pas à effectuer des calculs complexes qui font appel à des champs situés à deux ou trois niveau de relation de votre app en cours de modification. Vous devrez peut être maîtriser le langage Javascript pour se faire et si ce n’est pas votre cas pour le moment vous risquez juste de ne pas réussir votre coup et d’être déçu 🙁

Faites vous d’abord la main sur des petits calculs simples (comme des calculs sur des nombres, ou la récupération de données situées dans une app directement liée à celle en cours de modification) pour bien assimiler la syntaxe requise et les impératifs dictés par ce type de champ.

Et dans le cas où vous seriez vraiment bloqué avec votre calcul, il suffit de nous envoyer un petit message pour que volions à votre secours ! 🙂