Skip to main content

Guide de passage à la v16

Ce document liste les changements en v16 par rapport à la v12, à la fois les changements dans le fonctionnement d'Odoo "standard", et dans les flux spécifiques aux épiceries et supermarchés. 

Base d'Odoo

  • On peut maintenant configurer l'affichage de certaines vues liste en masquant/affichant des colonnes

  • Les imports ne peuvent plus utiliser l’ID interne pour matcher les enregistrements, il faut utiliser l'ID externe

  • Le style des rapports PDF par défaut change
  • Sur un écran large, le chatter s'affiche à droite du document. Sur un petit écran, il s'affiche en dessous du document.

    Si cela est gênant, on peut installer le module web_chatter_position pour que l'utilisateur puisse régler la position (dans ses Préférences). 

Les champs "Est un client" et "Est un fournisseur" n'existent plus. 

Les cases à cocher sur la fiche contact pour définir si c'est un client et/ou un fournisseur n'existent plus. À la place, Odoo calcul un "score client" et "score fournisseur", basé notamment sur le nombre de ventes et d'achat lié au contact. Selon ce score, le contact s'affichera plus ou moins haut dans les listes et menus déroulants.  (plus de détails techniques ici)

Tous les contacts peuvent être sélectionnés dans les différentes applications (Achat, Point de vente, Comptabilité...). En particulier, si vous aviez des doublons de contacts dans votre base de donnée, cela va devenir visible dans la liste des clients du point de vente. Si cela arrive, il faut fusionner les contacts

Comptabilité

  • Voir la doc Facturation et comptabilité en v16
  • notamment, la doc sur le nouveau module de réconciliation bancaire
  • On a accès aux écritures comptables directement depuis les factures

  • Le type de taxe affecte le domaine (on ne peut pas trouver une taxe de type None dans une facture fournisseur)

  • Changement dans la comptabilité analytique (la doc Odoo explique bien le nouveau fonctionnement)

Point de vente

  • Documentation du Point de vente en v16 (mis à jour à 80%)
  • On ferme directement la session de vente depuis l'interface de caisse, ce n'est plus possible de clôturer la session depuis le backend.
  • Il n'y a plus une écriture comptable par article vendu. Maintenant les écritures sont agrégées par la TVA appliquée, sauf s'il y a des comptes de revenus spécifiques encodés sur les fiches produits ou les catégories de produits. (voir 
Le rapport d'analyse des commandes montre les montants TVAC et plus HTVA, que faire ?

Pour voir les chiffres de ventes HTVA, il faut aller dans les rapports du module Ventes. Ventes>Analyse, et choisir la mesure Total HT. Ce rapport inclus aussi les ventes B2B facturées, on peut différencier les ventes PdV et backend via le champ "Équipe commerciale".  

En v16, il n'y a pas de relevé des paiement liés à une session de Point de vente ? 

À partir d’Odoo 13, les paiements de type cash ne créent plus d’enregistrement de type account.payment. C’est parce qu’à partir de cette version, Odoo fait la différence entre les méthodes de paiement liées à la comptabilité (account.payment.method) et celles liées au point de vente (pos.payment.method).

Les paiements faits dans le point de vente génèrent des enregistrements de type pos.payment. Les paiements en cash génèrent également des enregistrements de type account.bank.statement.line (pas accessibles directement, mais qui héritent d’account.move, les pièces comptables) et des enregistrements de type account.move.line (les écritures comptables). Les paiements de type "banque", quant à eux, génèrent bien des enregistrements de type account.payment en plus.

Flux épicerie/supermarchés

Achats

Voir le nouveau flux d'encodage de commande fournisseur en v16

Il n’y a plus de date de commande dans la liste des demandes de prix ?

En effet, la liste des demandes de prix n'affiche que les dates des demandes de prix (c'est-à-dire les commandes fournisseurs à l'état brouillon), en mettant une date relative. 
Pour voir les dates de manière plus claire et complète, vous pouvez utiliser la liste des bons de commande plutôt (Achat>>Achats>Bons de commande) 

Inventaire

E-Commerce

  • Ce n’est plus possible de publier/dépublier des produits rapidement depuis la boutique en ligne. Nous conseillons de le faire via une édition en lot dans la vue back-end des produits. 
  • Nouvelle disposition de l'e-commerce et nouvelle interface de customisation

Aspects techniques

Comment fonctionnent les traductions en v16 ?

Odoo 16 gère les traductions différemment des versions précédentes. Avant, il y avait un modèle ir.translation qui contenait toutes les traductions (langue, chaine source, chaine traduite). À présent, les traductions sont faites directement dans la valeur du champ : si celui-ci est traduisible, il est stocké en DB par un champ JSON qui contient les différentes valeurs par langue ({"en_US": "English value", "fr_BE": "Valeur en français"}).

Comme les vues (ir.ui.view) n’ont pas de champ pour chaque valeur traduisible, c’est l’entièreté de la vue (valeur du champ arch_db) qui est stockée dans chacune des langues dans ce champ, avec les valeurs traduisibles traduites. Ce champ est traité de manière à ce que cela fonctionne encore plus ou moins comme avant, c'est-à-dire que via l’interface, on puisse traduire uniquement les valeurs traduisibles.

La disparition du modèle ir.translation rend certaines choses qui étaient possibles avant impossibles à présent (ou plus compliquées). Il n’y a plus de vue centralisée pour gérer les traductions : ceci est géré dans chaque champ individuellement. Il n’est donc plus possible de faire une recherche parmi tous les modèles sur une valeur à traduire. De plus, les valeurs traduisibles venant directement du code (Python ou JavaScript) (un message d’erreur, par exemple) sont traduites en utilisant directement le contenu des fichiers .po, donc il n’est plus possible de les traduire sans passer par une mise à jour du code.

Pour modifier le contenu d’une vue, le mieux est d’en créer une nouvelle qui hérite de celle que tu veux modifier. Le contenu de cette vue doit modifier la vue héritée en utilisant des instructions xpath permettant d’ajouter des choses avant, après ou à l’intérieur d’un élément (ou de le remplacer, mais c’est déconseillé). La vue website_sale.product illustre bien cet exemple : dans l’onglet “Vues héritées”, il y a plusieurs vues qui modifient cette vue de cette manière.

Ces vues personnalisées survivront aux mises à jour. Nous conseillons de faire des essais sur la DB de test d’abord, parce que s’il y a une erreur dans une vue héritée, cela rend la vue d’origine indisponible.