Ce module est un complément au module standard 'Product & pricelist' d'OpenERP.
Il permet de simplifier la gestion des listes des prix, le système de tarification de notre ERP favori.
En effet, le module standard d'OpenERP permet de créer des règles de prix que l'on applique
à un produit et/ou une catégorie comme montré dans cette image.
Mais que se passe-t-il quand je dois appliquer cette règle (exemple : déduction de 10 € + remise de 10% arrondi à l'€ entier)
sur 5 produits qui sont potentiellement dans des catégories différentes ?
Je suis obligé de créer ma règle 5 fois (sans parler que la duplication de la règle n'est pas possible depuis l'interface).
Duplication => ennemi N°1 de la maîtrise de l'information
Le cas typique de ce scénario est une promotion spéciale qui cible quelques produits et qui change régulièrement dans l'année.
On imagine mal changer les produits de catégorie pour l'occasion.
Notre module présenté ici répond à cette problématique :
- créer la règle une seule fois
- l'appliquer à X produits et/ou Y catégories, et/ou pour les produits qui ont l'option Z
Note : Ce module a été créé à l'origine pour faciliter la synchronisation des listes de prix avec PrestaShop.
A ce jour il permet également de synchroniser également les 'Special price' de Magento.
Mais il peut fonctionner de manière autonome dans OpenERP.
La page principale du module est la suivante :
- En haut, la règle de prix et la 'pricelist version' concernée.
- Dans 'price elements' la règle de prix proprement dites avec des paramètres identiques aux listes de prix standards.
- Dans 'Involved product' les produits/catégories/options sur lesquelles la règle de prix s'applique :
ici la règle de prix s'applique à tous les produits de la catégorie Y, mais aussi à ceux
de la catégories Z qui ont l'option 'couleur blue' mais également au produit 'product in other categ'
Le bouton 'update pricelist' assure la cohérence avec les pricelist standard.
Il est toutefois d'usage optionnel puisqu'une tache planifiée assure cette même fonction
Le champ 'last update' indique le nombre de produits impacté par la mise à jour des règles (deleted, created, udpated) ou non (untouched)
En complément, le module 'pricelist_from_product_or_category' permet comme son nom l'indique,
d'appliquer une règle définie à une catégorie/produit directement depuis leur interface respective (ci-dessus avec le champ 'pricelist builder')
Consécutivement à la sélection de cette règle dans les catégories, on trouve les 'involved product' de notre pricelist builder modifiés en conséquence (la couleur 'Red' a été ajoutée entre temps par une autre action)
Nous voici revenu sur la page des versions de pricelist d'OpenERP.
Cette page est légèrement différente car on retrouve 2 listes à la place d'une seule
(toutes les données présentes sont malgré tout stocké dans la même table).
Celle qu'on avait à l'origine répond désormais au nom de 'Manual rules'. Son fonctionnement reste inchangé.
L'autre liste se nomme 'Automatically created rules' et on retrouve des données relatives aux écrans précédents.
Toutefois il n'y a plus de catégories ou d'options, on voit uniquement des produits qui appartiennent aux catégories et/ou options définies précédemment
En effet, même si OpenERP est plutôt modulaire comme projet Open Source (très modulaire comparativement aux ERP propriétaires),
du côté des pricelists c'est une bonne vieille (et performante) requête sql qui s'occupe de tout.
Difficile dans ce cas de "surcharger" les méthodes existantes pour altérer le comportement sans casser la compatibilité avec le fonctionnement natif.
La solution la plus simple est donc de ramener ces règles au niveau du produit comme illustré ci-dessus.
Côté performance si vous avez un nombre très élevé de produits avec beaucoup de listes de prix différentes, quelques points doivent être pris en compte :
- si la règle ne s'applique qu'à une seule catégorie, le plus simple est d'utiliser la méthode standard de règle de prix.
- en cas de problème de performance, une utilisation conjointe de ce module avec openerp-connector pourrait être envisagé :
cela permettrait de lisser la charge de mise à jour
Le module est pour l'instant traduit seulement en français.
Ce module se limite à la gestion des 'public price' (pas de ‘cost price’ ou de ‘supplier price’)
Akretion est à votre disposition pour développer des modules complémentaires, n'hésitez pas à nous contacter.
Modules pour la version 7 d'OpenERP:
- https://code.launchpad.net/~akretion-team/+junk/pricelist_advanced
moc.noiterka@laeb.divad