« Extraprice » : différence entre les versions

De Documentations Patas-monkey
Aller à la navigation Aller à la recherche
 
(4 versions intermédiaires par la même utilisatrice non affichées)
Ligne 19 : Ligne 19 :
Avant de lancer la création d'une formule '''d'Extraprice''' , il convient d'avoir des notions de langage php et de connaître la structuration des tables de Dolibarr. Si vous n'avez pas ce genre de compétence, vous pouvez nous contactez sur notre site ([www.patas-monkey.fr](http://www.patas-monkey.fr/)) afin que nous vous proposions une prestation d'intégration de ce module selon vos spécifications.
Avant de lancer la création d'une formule '''d'Extraprice''' , il convient d'avoir des notions de langage php et de connaître la structuration des tables de Dolibarr. Si vous n'avez pas ce genre de compétence, vous pouvez nous contactez sur notre site ([www.patas-monkey.fr](http://www.patas-monkey.fr/)) afin que nous vous proposions une prestation d'intégration de ce module selon vos spécifications.


== Configuration du module Extraprice de base ==
== Configuration du module Extraprice ==


La configuration du module '''Extraprice''' se fait à partir de l'écran d'administration accessible depuis la liste des modules.
La configuration du module '''Extraprice''' se fait à partir de l'écran d'administration accessible depuis la liste des modules.
Ligne 28 : Ligne 28 :
|- style="vertical-align:top;"  
|- style="vertical-align:top;"  
| [[File:Extraprice-setting.png]]
| [[File:Extraprice-setting.png]]
| Elle permet de saisir la formule de calcul qui sera utilisée pour déterminer les prix de vente unitaires.
| La première zone de saisie permet de paramétrer la formule de calcul qui sera utilisée pour déterminer les prix de vente unitaires.
Autre fonctionnalité du module, il est possible de définir un ou plusieurs produit/service pour saisir la TVA pour les société de transport
|}
|}


== Principe de fonctionnement ==
== Fonctionnement du calcul du prix dynamique ==


Il n'est pas possible dans Dolibarr d'avoir un prix conditionné par autre chose que la quantité du produit vendu.
Il n'est pas possible dans Dolibarr d'avoir un prix conditionné par autre chose que la quantité du produit vendu.
Ligne 43 : Ligne 44 :
- Une formule de calcul écrite en php dans le paramétrage du module.
- Une formule de calcul écrite en php dans le paramétrage du module.


== Remarque ==
=== Remarque ===


La version premium d'extraprice permet d'ajouter des variables aux formules de calculs selon la catégorie cliente ou produit.
La version premium d'extraprice permet d'ajouter des variables aux formules de calculs selon la catégorie cliente ou produit.
Ligne 49 : Ligne 50 :
Ex : il est possible de créer un coefficient de remise par catégorie client qui sera utilisé pour le calcul final du prix de vente unitaire. il faut pour cela créer des catégories produits, d'affecter sur l'onglet d'extraprice de la catégorie une valeur à une variable (ex $coef=0.55 ) et puis d'utiliser celle-ci dans le calcul final
Ex : il est possible de créer un coefficient de remise par catégorie client qui sera utilisé pour le calcul final du prix de vente unitaire. il faut pour cela créer des catégories produits, d'affecter sur l'onglet d'extraprice de la catégorie une valeur à une variable (ex $coef=0.55 ) et puis d'utiliser celle-ci dans le calcul final


== Saisie d'une formule de calcul ==
=== Saisie d'une formule de calcul ===


Définition des variables utilisables dans la formule, les variables en rouges ne sont accessibles que dans la version premium (payante) d'extraprice.
Définition des variables utilisables dans la formule d'extraprice.


{| class="wikitable"  
{| class="wikitable"  
Ligne 64 : Ligne 65 :
| '''$objectvalue'''  
| '''$objectvalue'''  
|  Objet contenant les champs supplémentaires associés à la ligne de la pièce
|  Objet contenant les champs supplémentaires associés à la ligne de la pièce
Ex : pour accéder à la valeur définie dans le champ 'longueur',
Ex : pour accéder à la valeur définie dans le champ 'longueur',
il faut utiliser la variable $objectvalue['options_longueur']  
il faut utiliser la variable $objectvalue['options_longueur']  
|- style="vertical-align:top;"  
|- style="vertical-align:top;"  
| '''$product'''  
| '''$product'''  
| Objet contenant les valeurs associées au produit (référence, description...)
| Objet contenant les valeurs associées au produit (référence, description...)
Exemple de valeurs :  
Exemple de valeurs :  
* $product['price_min'] (prix minimum) sera récupéré par la variable $product->price_min
* $product['price_min'] (prix minimum) sera récupéré par la variable $product->price_min
* $product['ref'] pour récupérer/tester la référence du produit|
* $product['ref'] pour récupérer/tester la référence du produit|
Attention : cette objet n'est présent que si il s'agit d'un prix défini à partir d'un produit (pas une saisie libre)
Attention : cette objet n'est présent que si il s'agit d'un prix défini à partir d'un produit (pas une saisie libre)
|- style="vertical-align:top;"  
|- style="vertical-align:top;"  
Ligne 88 : Ligne 89 :
| '''$societeextravalue'''  
| '''$societeextravalue'''  
| Objet contenant les champs supplémentaires associés à la société
| Objet contenant les champs supplémentaires associés à la société
Ex : pour accéder à une valeur définie dans le champ "coeff",
Ex : pour accéder à une valeur définie dans le champ "coeff", il faut utiliser la variable $societeextravalue['options_coeff']
il faut utiliser la variable $societeextravalue['options_coeff']
|- style="vertical-align:top;"  
|- style="vertical-align:top;"  
| '''$productextravalue'''  
| '''$productextravalue'''  
| Objet contenant les champs supplémentaires associés au produit
| Objet contenant les champs supplémentaires associés au produit
Ex : pour accéder à une valeur définie dans le champ "coeff",
Ex : pour accéder à une valeur définie dans le champ "coeff", il faut utiliser la variable $productextravalue['options_coeff']
il faut utiliser la variable $productextravalue['options_coeff']
|- style="vertical-align:top;"  
|- style="vertical-align:top;"  
| '''$categsocieteid'''  
| '''$categsocieteid'''  
Ligne 107 : Ligne 106 :
La valeur saisie peut être récupérée avec la $conf->global->LA_VARIABLE_DIVERSE
La valeur saisie peut être récupérée avec la $conf->global->LA_VARIABLE_DIVERSE


== Exemple d'utilisation ==
=== Exemple : Détermination du prix d'un produit selon la surface vendue ===
=== Détermination du prix d'un produit selon la surface vendue ===


Un produit a un prix fixé au mètre carré.
Un produit a un prix fixé au mètre carré.
Ligne 124 : Ligne 122 :
Pour un produit à 100 € le mètre carré, et une découpe à 20, si on vend une surface de 50 cm de long par 25 cm de large, le prix sera de 32,50 € l'unité (20 + 100 x 0,25 x 0,50)
Pour un produit à 100 € le mètre carré, et une découpe à 20, si on vend une surface de 50 cm de long par 25 cm de large, le prix sera de 32,50 € l'unité (20 + 100 x 0,25 x 0,50)


=== Utilisation du prix d'achat ===
== TVA transporteur sur facture fournisseur ==


[[File:Extraprice-exemple-cost-price.png|800px]]
[[File:Extraprice-tva-transport.png|800px]]

Dernière version du 7 octobre 2024 à 22:35

Ce module permet de définir une règle de calcul pour la détermination du prix de vente unitaire (par exemple en prenant des paramètres supplémentaires - extrafields), cette version premium ajoute le paramétrages de valeurs personnalisées par catégories (client et produit)

Présentation

Extraprice est un module permettant de calculer les prix d'un produit en fonction d'un ensemble de paramètres et d'une formule de calcul personnalisables

Pré-requis d'installation

Le module Extraprice fonctionne avec Dolibarr à partir de la version 3.5.x et une version de php minimum 5.3.

Il s'installe comme n'importe quel module Dolibarr en décompressant e zip dans le dossier /htdocs/custom.

Préambule – Avant de commencer

Avant de lancer la création d'une formule d'Extraprice , il convient d'avoir des notions de langage php et de connaître la structuration des tables de Dolibarr. Si vous n'avez pas ce genre de compétence, vous pouvez nous contactez sur notre site ([www.patas-monkey.fr](http://www.patas-monkey.fr/)) afin que nous vous proposions une prestation d'intégration de ce module selon vos spécifications.

Configuration du module Extraprice

La configuration du module Extraprice se fait à partir de l'écran d'administration accessible depuis la liste des modules.


La première zone de saisie permet de paramétrer la formule de calcul qui sera utilisée pour déterminer les prix de vente unitaires.

Autre fonctionnalité du module, il est possible de définir un ou plusieurs produit/service pour saisir la TVA pour les société de transport

Fonctionnement du calcul du prix dynamique

Il n'est pas possible dans Dolibarr d'avoir un prix conditionné par autre chose que la quantité du produit vendu.

Extraprice permet de modifier, lors de la création des lignes de pièces (commande, facture et proposition commerciale), le prix de vente unitaire.

Pour cela, Extraprice utilise :

- des valeurs présentes dans les différentes fiches (client, produit, pièces…) - des valeurs présentes dans des champs supplémentaires (« extrafields ») et en particulier ceux présents sur les lignes de pièces. - Une formule de calcul écrite en php dans le paramétrage du module.

Remarque

La version premium d'extraprice permet d'ajouter des variables aux formules de calculs selon la catégorie cliente ou produit.

Ex : il est possible de créer un coefficient de remise par catégorie client qui sera utilisé pour le calcul final du prix de vente unitaire. il faut pour cela créer des catégories produits, d'affecter sur l'onglet d'extraprice de la catégorie une valeur à une variable (ex $coef=0.55 ) et puis d'utiliser celle-ci dans le calcul final

Saisie d'une formule de calcul

Définition des variables utilisables dans la formule d'extraprice.

$newprice Prix calculé par la formule
$origineprice Prix d'origine du produit, ATTENTION si on est sur un produit ou service libre, cette valeur sera à zéro (il faudra saisir le prix de base pour le calcul ailleurs).
$objectvalue Objet contenant les champs supplémentaires associés à la ligne de la pièce

Ex : pour accéder à la valeur définie dans le champ 'longueur', il faut utiliser la variable $objectvalue['options_longueur']

$product Objet contenant les valeurs associées au produit (référence, description...)

Exemple de valeurs :

  • $product['price_min'] (prix minimum) sera récupéré par la variable $product->price_min
  • $product['ref'] pour récupérer/tester la référence du produit|

Attention : cette objet n'est présent que si il s'agit d'un prix défini à partir d'un produit (pas une saisie libre)

$mainelement Objet contenant les valeurs associées à la pièce (facture, commande, proposition commerciale)
$societe Objet contenant les valeurs associées à la société de la pièce (le destinataire de la facture)
$objet Objet contenant les valeurs associées à ligne de la pièce (facture, commande ou propale)
$elementextravalue Objet contenant les champs supplémentaire associé à la pièce (facture, commande, proposition commerciale)
$societeextravalue Objet contenant les champs supplémentaires associés à la société

Ex : pour accéder à une valeur définie dans le champ "coeff", il faut utiliser la variable $societeextravalue['options_coeff']

$productextravalue Objet contenant les champs supplémentaires associés au produit

Ex : pour accéder à une valeur définie dans le champ "coeff", il faut utiliser la variable $productextravalue['options_coeff']

$categsocieteid contient l'identifiant de la catégorie de société auquel appartient la société
$categproductid contient l'identifiant de la catégorie de produitauquel appartient le produit

il est possible d'avoir des constantes en passant par la configuration/Divers de Dolibarr il suffit pour cela de définir une variable et sa valeur La valeur saisie peut être récupérée avec la $conf->global->LA_VARIABLE_DIVERSE

Exemple : Détermination du prix d'un produit selon la surface vendue

Un produit a un prix fixé au mètre carré.

Nous ajoutons 2 champs supplémentaires (extrafields) nommés « longueur » et « largeur » correspondant aux dimensions de la surface vendue.

Dans ce cas, le prix de vente du produit correspond au prix au m² multiplié par la longueur et la largeur

Pour un produit à 100 € le mètre carré, si on vend une surface de 50 cm de long par 25 cm de large, le prix sera de 12,50 € l'unité (100 x 0,25 x 0,50)

Il est possible de rajouter un coût spécifique de découpe par produit selon, par exemple, sa matière : plastique, verre…

Dans ce cas, il sera nécessaire de rajouter un « extrafield » sur le produit pour stocker la donnée du coût unitaire de la découpe qui sera ajouté au prix de vente unitaire dans la formule.

Pour un produit à 100 € le mètre carré, et une découpe à 20, si on vend une surface de 50 cm de long par 25 cm de large, le prix sera de 32,50 € l'unité (20 + 100 x 0,25 x 0,50)

TVA transporteur sur facture fournisseur