Helpdesk CID ERP

Liaison avec la table ir.property

Mise à jour le

Afin de lier certaines données dans Tableau, comme les listes de prix des partenaires, les comptes financiers par défaut des partenaires, et ainsi de suite, il est nécessaire d'utiliser la table ir.property. Les liaisons avec cette dernière, étant relativement compliquées, nécessitent plusieurs étapes.

Cette table est nécessaire pour les champs commençant par "property_", comme sur l'image ci-dessous.

Utilité de la table ir.property

La table ir.property est une table très fournie et compliquée à comprendre. Elle se présente comme ci-dessous.

Cette table sert de liaison entre différentes données, notamment dans le cadre des informations qui sont reprises dans les bases multi-sociétés. Ceci permet d'avoir une information de base qui est reprise par les différentes sociétés, mais associées avec des valeurs différentes. 

Par exemple, vous pouvez avoir le partenaire Fair IT SA dans les trois sociétés, mais une liste de prix d'achat différente pour ce même partenaire dans chacune des sociétés.

Dans notre exemple, nous allons lier les partenaires à leur liste de prix de vente configurée par défaut. Cela donnera la liaison comme suit.

Première liaison avec ir.property

Pour la première liaison, celle entre les tables res_partner et ir_property, nous allons la configurer comme suit. 

Du côté de la table res_partner, nous allons prendre l'ID de res_partner. 

Par contre, du côté de ir_property, nous allons créer un calcul pour la liaison. Pour ce faire, nous cliquons sur "Modifier le calcul".

Le calcul de la relation sera le suivant :

int(split([Res ID],",",2))
Click to copy

Ce dernier se décompose de la manière suivante : 

  • int() : cela va renvoyer un nombre, ce qui nous permettra de lier cela avec l'ID de res_partner
  • split() : cette fonction nous permet de splitter les données selon un caractère spécifique
    • [Res ID] : cela exprime la colonne que nous voulons splitter. Nous voulons splitter celle-ci car il y a l'indication de l'ID du partenaire dedans.
    • "," : ceci indique que nous splittons sur la virgule
    • 2 : ceci indique que nous voulons la valeur après la première virgule

La première liaison est maintenant configurée.

Deuxième liaison avec ir.property

La deuxième liaison, celle entre ir_property et product_pricelist, va être configurée comme suit. 

Du côté de ir_property, nous allons créer un nouveau calcul pour la liaison. Ce calcul sera le suivant :

int(split([Value Reference],",",2))
Click to copy

Grâce à la colonne value_reference, nous allons pouvoir sortir l'ID de la liste de prix. 

Du côté de la table product_pricelist, nous allons simplement sélectionner la valeur l'ID de product_pricelist. 

La deuxième liaison est maintenant configurée.

Création de filtre pour alléger la source de donnée

Dans notre exemple, nous voulons afficher, dans Tableau, la liste de prix de vente liée au partenaire. De ce fait, nous allons filtrer, dans la table ir.property, uniquement les données en lien avec ce champ. 

Pour ce faire, nous allons voir sur CID ERP le nom exact du champ qui nous intéresse.

Nous voyons alors que le champ qui nous intéresse est property_product_pricelist. Et nous voyons que ce champ est indiqué dans la colonne "name" de la table ir.property. 

Nous allons donc créer un nouveau filtre pour ne conserver que cette valeur. Pour ce faire, nous allons cliquer sur ajouter un filtre.

Dans la fenêtre qui s'ouvre, nous allons cliquer sur "Ajouter...".

Dans la fenêtre qui s'ouvre, nous allons alors chercher le champ "name" de la table ir.property.

En double cliquant sur cette ligne, nous pourrons alors choisir de garder uniquement la valeur property_product_pricelist. Pour ce faire, vous pouvez utiliser le champ de recherche.

Nous pouvons ensuite cliquer sur "Ok" et le filtre est terminé. 

Nous avons alors notre liaison complète pour afficher les listes de prix par défaut des partenaires.

Previous Article Créer une application connectée
Vous avez encore besoin d'aide ? Contactez-nous