Importer des données pour vos démos Odoo

Avec l'aide de l'IA et de ChatGPT 4
10 mai 2024 par
Nexelans, Emmanuel Chaumery
| 1 Commentaire

Introduction

Avec Odoo, faire des démos peut se révéler assez simple. Il suffit de créer une base et d'importer les données de test en mode développeur (si vous ne savez pas comment faire, demandez nous)

Malheureusement, si on doit faire des démos un peu pointues, par exemple avec la localisation française, les données de test fournies par défaut ne sont pas pertinentes. Il est par exemple impossible de passer en Euro. On doit donc configurer la base pour qu'elle corresponde à l'environnement du projet puis créer des fichiers de test cohérents et les importer. Ce qui est une tâche de longue haleine.

Alors qu'il y a une solution rapide pour ça : ChatGPT.

L'IA est déjà dans Odoo

Oui, elle est présente dans le code mais aussi pour vous aider à rédiger des textes dans vos sites web Odoo. Mais pour vous accompagner dans vos démos, il va falloir utiliser un des outils d'IA externe. Chez Nexelans, nous utilisons ChatGPT 4 de OpenAI pour beaucoup de choses. Par exemple, l'image d'illustration de cet article est issue d'une demande au module Dall-E de ChatGPT 4.

C'est donc naturellement que nous avons demandé à ChatGPT comment il pourrait nous aider dans certaines tâches et notamment celle de générer des données pour nos tests ou nos démos.

Comment ChatGPT fonctionne ?

Il y a des dizaines de tutos ou de docs en ligne pour vous expliquer le fonctionnement des outils IA disponibles et nous ne sommes pas là pour les remplacer. On va cependant essayer de résumer en quelques mots :

  1. Je pose une question à ChatGPT
  2. Il me répond

Et c'est tout.

Mais la réponse pourrait ne pas correspondre à votre attente ou être un peu trop simple. La raison en est que ChatGPT a besoin d'un contexte pour comprendre votre question. Plus vous serez précis, plus la réponse sera adaptée

Question ChatGPTEt pourtant, même avec une question toute simple, ChatGPT va quand même essayer de vous accompagner, la question suivante va bien générer un fichier csv utilisable dans Odoo :

Demo chatgpt Odoo

Vous l'avez compris, avec un peu plus de détails dans votre contexte, le fichier sera, lui aussi, plus précis.

Procédure détaillée

Imaginons donc que nous devions faire une démo de Odoo pour une entreprise qui vend des batteries. Une fois paramétrée la base de test, il va nous falloir des données pour les contacts et les produits.

Commençons par les contacts. Il faut être assez précis mais on va voir que ChatGPT 4 est assez puissant pour comprendre notre demande.

Posons lui la question suivante :

j'ai besoin d'un fichier csv pour ma démo Odoo à une entreprise de batteries. Commençons par les contacts clients et fournisseurs. C'est un fichier csv d'une cinquantaine d'entreprises fictives qui comprendra les colonnes suivantes : - Nom entreprise - Rue - Code Postal (existant en France) - Ville (elle doit correspondre au code postal) - email - tel (commence par +33 en France) - Est une entreprise (booléen égal à vrai)

 Et voici sa réponse étonnamment correcte :

Pour un fichier de démo contenant les contacts de 50 entreprises fictives (clients et fournisseurs), voici ce que je vous propose :

  1. Structure des Colonnes
    • company_name: Nom de l'entreprise
    • street: Rue
    • zip: Code Postal (valide en France)
    • city: Ville (correspondant au code postal)
    • email: Email
    • phone: Téléphone (commençant par +33)
    • is_company: Indique si c'est une entreprise (toujours True)
  2. Données Fictives
    • Créer des noms d'entreprise uniques et réalistes.
    • Générer aléatoirement des adresses, codes postaux, villes et numéros de téléphone.
    • Tous les enregistrements auront is_company défini sur True.

Je vais générer ces données et les écrire dans un fichier CSV. Vous pourrez ensuite les télécharger pour votre démonstration Odoo.

Laissez-moi m'occuper de cela.

Le fichier de contacts clients et fournisseurs pour votre démo Odoo a été généré. Vous pouvez le télécharger en utilisant le lien ci-dessous :

Download odoo_demo_battery_company.csv

Et donc, voici à quoi ressemble notre fichier csv généré par l'IA :

csv contacts 1

C'est bien mais un peu limité sur certaines colonnes. Demandons lui d'améliorer le fichier :

Très bien mais peux tu mettre des noms inventés pour les noms de compagnie et être un peu plus varié dans les rues ?

 Et voici le nouveau fichier généré directement importable dans Odoo :

csv contacts 2

Vous voyez le principe ?

Essayez par vous-même et demandez lui de rajouter des N° aux noms de rue, c'est aussi simple que de l'écrire.

Par la suite, il suffira de faire la même chose avec un fichier de contacts individuels ou on lui précisera que is_company est faux et qu'il doit y avoir d'autres colonnes comme la société associée, la fonction du contact etc. De la même façon, la génération du fichier des produits devra comprendre un contexte expliquant que ces produits doivent avoir un rapport avec les composants ou les accessoires des batteries :

Peux tu maintenant générer un fichier de produits liés aux batteries (composants ou accessoires ou services) Avec les champs suivants : Nom du produit (nom aléatoire en fonction du type de produit en français) Type de produit : Consommable, service ou produit stockable Prix de vente (2 décimales) Prix d'achat (2 décimales) Taxes à la vente (soit "20% G" pour les marchandises soit "20% S" pour les services) Il faudrait une trentaine de produits de chaque type

 Voici le fichier prêt à être importé :

csv produits

On pourrait aussi lui demander de mettre la colonne coût en rapport avec la colonne prix de vente avec une marge en pourcentage par exemple. Les possibilités sont infinies.

Conclusion

Infinies sont les possibilités d'utilisation de l'IA et c'est bien pour cela que nous l'utilisons avec Odoo. N'hésitez pas à commenter cet article en parlant de vos expériences avec ChatGPT ou d'autres systèmes d'IA.

Précisons que ChatGPT 3.5, la version gratuite de cet outil ne vous fournira pas de résultats aussi facilement utilisables.

Bonus

Lorsque ChatGPT génère un fichier, il nous fournit aussi une analyse de celui-ci en Python accessible avec la petite flèche à droite du lien vers le fichier csv.

Analyse Python

Se connecter pour laisser un commentaire.