« Extraprice » : différence entre les versions
(6 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 | == 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. | ||
== | {| class="wikitable" | ||
|- style="vertical-align:top;" | |||
| [[File:Extraprice-setting.png]] | |||
| 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. | Il n'est pas possible dans Dolibarr d'avoir un prix conditionné par autre chose que la quantité du produit vendu. | ||
Ligne 38 : | 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 44 : | 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 | Définition des variables utilisables dans la formule d'extraprice. | ||
{| class="wikitable" | {| class="wikitable" | ||
Ligne 59 : | 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', | |||
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 : | |||
* $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) | 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 83 : | 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", 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", il faut utiliser la variable $productextravalue['options_coeff'] | |||
|- style="vertical-align:top;" | |- style="vertical-align:top;" | ||
| '''$categsocieteid''' | | '''$categsocieteid''' | ||
Ligne 102 : | 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 | === Exemple : 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 119 : | 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) | ||
== | == TVA transporteur sur facture fournisseur == | ||
[[File:Extraprice- | [[File:Extraprice-tva-transport.png|800px]] |
Dernière version du 7 octobre 2024 à 22:35
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.
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 :
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)