[{"data":1,"prerenderedAt":441},["ShallowReactive",2],{"\u002Fnext\u002Fdokos\u002Fchantiers\u002Fediteur-ensembles-produits":3,"section:\u002Fnext\u002Fdokos\u002Fchantiers\u002Fediteur-ensembles-produits":440},{"id":4,"title":5,"body":6,"description":419,"extension":420,"meta":421,"navigation":422,"path":436,"seo":437,"stem":438,"__hash__":439},"docs\u002F2.next\u002F1.dokos\u002F15.chantiers\u002F4.editeur-ensembles-produits.md","Éditeur d'ensembles de produits",{"type":7,"value":8,"toc":403},"minimark",[9,13,33,38,63,67,134,137,141,144,153,161,175,182,187,193,203,215,219,250,257,268,272,294,298,308,323,326,330,385,388,392],[10,11,5],"h1",{"id":12},"éditeur-densembles-de-produits",[14,15,16,17,21,22,27,28,32],"p",{},"L'application ",[18,19,20],"strong",{},"Construction"," ajoute à la ",[23,24,26],"a",{"href":25},"\u002Fnext\u002Fdokos\u002Fchantiers\u002Fvue-chantiers","vue Chantiers"," un éditeur d'",[23,29,31],{"href":30},"\u002Fnext\u002Fdokos\u002Fstocks\u002Fensembles-de-produits","ensembles de produits",". Vous composez un ouvrage (par exemple « Cloison placo 72 mm ») à partir de ses fournitures et de sa main-d'œuvre, sans quitter le devis. Dokos calcule le prix de vente, le prix de revient et la marge de l'ouvrage à partir de ses lignes.",[34,35,37],"h2",{"id":36},"prérequis","Prérequis",[39,40,41,50,53,56],"ul",{},[42,43,16,44,46,47,49],"li",{},[18,45,20],{}," installée et la ",[23,48,26],{"href":25}," activée pour les documents de vente.",[42,51,52],{},"Un document qui gère les ensembles de produits : devis, commande client, facture de vente ou bon de livraison. Les documents d'achat n'ont pas l'éditeur.",[42,54,55],{},"Un article parent non géré en stock pour l'ouvrage. C'est une règle des ensembles de produits.",[42,57,58,59,62],{},"Pour modifier le document : un brouillon. Sur un document validé, l'éditeur s'ouvre en lecture seule, avec le bouton ",[18,60,61],{},"Fermer",".",[34,64,66],{"id":65},"ajouter-un-ensemble-dans-le-document","Ajouter un ensemble dans le document",[68,69,70,85,96,102,109,128],"ol",{},[42,71,72,73,76,77,80,81,84],{},"Dans la vue Chantiers, cliquez sur ",[18,74,75],{},"Bundle"," (libellé non traduit) à côté de ",[18,78,79],{},"Ajouter un article",". Pour insérer l'ensemble à un endroit précis, utilisez ",[18,82,83],{},"Insert Bundle"," (non traduit) dans les actions d'une ligne : l'ensemble est inséré sous cette ligne.",[42,86,87,88,91,92,95],{},"La fenêtre ",[18,89,90],{},"Ajouter un ensemble de produits"," s'ouvre. Pour partir d'un modèle, choisissez-le dans ",[18,93,94],{},"Créer depuis un modèle d'Ensemble de produits",". Dokos reprend sa description et ses lignes. Pour les lignes du modèle sans prix, il lit les prix dans la liste de prix du document.",[42,97,98,99,62],{},"Choisissez l'article parent dans le champ ",[18,100,101],{},"Item",[42,103,104,105,108],{},"Saisissez la ",[18,106,107],{},"Description"," de l'ouvrage.",[42,110,111,112,115,116,119,120,123,124,127],{},"Dans le tableau, ajoutez les lignes avec le bouton ",[18,113,114],{},"Article"," : code article, description, quantité, unité, prix de revient (",[18,117,118],{},"Prix unitaire par unité de base","), ",[18,121,122],{},"Pourcentage de marque"," et ",[18,125,126],{},"Prix unitaire",". Le montant de la ligne est calculé.",[42,129,130,131,62],{},"Cliquez sur ",[18,132,133],{},"Ajouter dans la table",[14,135,136],{},"Dokos enregistre et valide un nouvel ensemble de produits, puis ajoute une ligne au document avec l'article parent, l'ensemble, la description, une quantité de 1, le prix unitaire et le prix de revient calculés.",[34,138,140],{"id":139},"calcul-des-prix","Calcul des prix",[14,142,143],{},"Pour chaque ligne, quand vous saisissez un article sans quantité ni unité, Dokos lit ses informations dans la liste de prix du document, pour le client ou le fournisseur du document.",[14,145,146,147,149,150,152],{},"Sur une ligne, le ",[18,148,122],{}," et le ",[18,151,126],{}," se calculent l'un l'autre :",[39,154,155,158],{},[42,156,157],{},"marque = (prix unitaire − prix de revient) \u002F prix unitaire × 100 ;",[42,159,160],{},"si vous saisissez la marque, le prix unitaire = prix de revient \u002F (1 − marque \u002F 100).",[14,162,163,164,166,167,169,170,123,172,62],{},"En bas de la fenêtre, Dokos affiche les totaux de l'ouvrage : ",[18,165,118],{}," (somme des prix de revient × quantités), ",[18,168,126],{}," (somme des prix × quantités), ",[18,171,122],{},[18,173,174],{},"Poids par unité",[14,176,177,178,181],{},"Le bouton ",[18,179,180],{},"Mettre à jour les prix"," relit les prix de toutes les lignes dans la liste de prix du document. Si des lignes ont déjà un prix, Dokos demande confirmation : « Remplacer les prix existants par ceux de la liste de prix ? ». Les lignes construites avec un configurateur gardent leur prix.",[183,184,186],"h3",{"id":185},"forcer-les-prix","Forcer les prix",[14,188,189,190,62],{},"Par défaut, le prix de l'ouvrage est le total calculé et ne se modifie pas. Le bouton de validation s'appelle alors ",[18,191,192],{},"Enregistrer avec le prix calculé",[14,194,195,196,198,199,202],{},"Cochez ",[18,197,186],{}," pour saisir vous-même le prix unitaire et le prix de revient de l'ouvrage. Sous chaque champ, le lien ",[18,200,201],{},"Prendre le prix calculé : …"," remet le total calculé.",[204,205,206],"blockquote",{},[14,207,208,211,212,214],{},[18,209,210],{},"Exemple fictif"," : l'ouvrage « Cloison placo 72 mm » contient 1 m² de plaque (prix de revient 6 €, prix 9 €), 2 m de rail (2 € et 3 €) et 0,5 h de pose (20 € et 40 €). Le prix calculé est 9 + 6 + 20 = 35 € pour un prix de revient de 6 + 4 + 10 = 20 €, soit une marque de 42,86 %. Avec ",[18,213,186],{},", vous arrondissez le prix de vente à 36 €.",[34,216,218],{"id":217},"modifier-un-ensemble-du-document","Modifier un ensemble du document",[68,220,221,227,237],{},[42,222,72,223,226],{},[18,224,225],{},"Modifier"," sur la ligne de l'ensemble.",[42,228,87,229,232,233,236],{},[18,230,231],{},"Modifier un ensemble de produits"," affiche l'ensemble de la ligne. Le bouton ",[18,234,235],{},"Détails"," ouvre à la place toutes les propriétés de la ligne du document.",[42,238,239,240,242,243,246,247,249],{},"Modifiez les lignes, puis cliquez sur ",[18,241,192],{}," (ou ",[18,244,245],{},"Enregistrer les modifications"," si ",[18,248,186],{}," est coché).",[14,251,252,253,256],{},"Dokos ne modifie pas l'ensemble d'origine : il enregistre et valide un nouvel ensemble, puis le rattache au champ ",[18,254,255],{},"Ensemble de produits"," de la ligne. Les autres documents qui utilisent l'ensemble d'origine ne changent pas.",[258,259,262],"callout",{"color":260,"icon":261},"warning","i-lucide-info",[14,263,264,265,62],{},"Les ensembles de produits sont versionnés : à sa validation, un ensemble devient la version active de son article parent, et les autres versions de cet article deviennent inactives. Un ensemble enregistré depuis l'éditeur devient donc la version proposée sur les nouvelles lignes de cet article, dans tous les documents. Voir ",[23,266,267],{"href":30},"Ensembles de produits",[34,269,271],{"id":270},"copier-coller-et-supprimer-des-lignes","Copier, coller et supprimer des lignes",[14,273,274,275,278,279,282,283,282,286,289,290,293],{},"Cochez des lignes du tableau, puis ouvrez le menu ",[18,276,277],{},"Sélection"," : ",[18,280,281],{},"Copier",", ",[18,284,285],{},"Coller",[18,287,288],{},"Couper"," ou ",[18,291,292],{},"Supprimer",". La copie passe par le presse-papiers. Vous pouvez donc coller les lignes dans l'ensemble d'un autre document.",[34,295,297],{"id":296},"créer-des-modèles-densembles","Créer des modèles d'ensembles",[14,299,300,301,304,305,307],{},"Un modèle est un ensemble de produits avec la case ",[18,302,303],{},"Est un modèle"," cochée. Les modèles en brouillon ou validés sont proposés dans ",[18,306,94],{},", les modèles annulés ne le sont pas. Un modèle peut rester en brouillon.",[68,309,310,316,320],{},[42,311,312,313,315],{},"Ouvrez la liste ",[18,314,255],{}," et créez ou ouvrez un ensemble.",[42,317,195,318,62],{},[18,319,303],{},[42,321,322],{},"Enregistrez.",[14,324,325],{},"L'éditeur ne crée pas de modèle : les ensembles qu'il enregistre ont toujours la case décochée.",[34,327,329],{"id":328},"ce-que-lapplication-ajoute-aux-ensembles-de-produits","Ce que l'application ajoute aux ensembles de produits",[331,332,333,346],"table",{},[334,335,336],"thead",{},[337,338,339,343],"tr",{},[340,341,342],"th",{},"Document",[340,344,345],{},"Champs ajoutés",[347,348,349,361,377],"tbody",{},[337,350,351,354],{},[352,353,255],"td",{},[352,355,356,358,359,62],{},[18,357,186],{}," (visible sur le formulaire en mode développeur seulement), ",[18,360,303],{},[337,362,363,366],{},[352,364,365],{},"Lignes d'ensemble",[352,367,368,282,371,282,373,282,375,62],{},[18,369,370],{},"Fournisseur",[18,372,118],{},[18,374,174],{},[18,376,122],{},[337,378,379,382],{},[352,380,381],{},"Articles emballés du document",[352,383,384],{},"Les mêmes champs, en lecture seule, recopiés de l'ensemble.",[14,386,387],{},"À chaque enregistrement d'un devis, d'une commande client ou d'une facture de vente, l'application recalcule ces articles à partir de l'ensemble de chaque ligne. Elle conserve la quantité déjà commandée des articles emballés qui n'ont pas changé.",[34,389,391],{"id":390},"voir-aussi","Voir aussi",[39,393,394,399],{},[42,395,396],{},[23,397,398],{"href":25},"Vue Chantiers",[42,400,401],{},[23,402,267],{"href":30},{"title":404,"searchDepth":405,"depth":406,"links":407},"",1,2,[408,409,410,414,415,416,417,418],{"id":36,"depth":406,"text":37},{"id":65,"depth":406,"text":66},{"id":139,"depth":406,"text":140,"children":411},[412],{"id":185,"depth":413,"text":186},3,{"id":217,"depth":406,"text":218},{"id":270,"depth":406,"text":271},{"id":296,"depth":406,"text":297},{"id":328,"depth":406,"text":329},{"id":390,"depth":406,"text":391},"Composer un ensemble de produits directement depuis la vue Chantiers d'un devis, d'une commande, d'une facture ou d'un bon de livraison, avec calcul du prix de vente, du prix de revient et de la marge.","md",{"reviewed":422,"last_verified":423,"sources":424},true,"2026-11-04",[425,426,427,428,429,430,431,432,433,434,435],"construction@develop:construction\u002Fpublic\u002Fjs\u002Fbundle_editor\u002FBundleEditor.ts","construction@develop:construction\u002Fpublic\u002Fjs\u002Fbundle_editor\u002FBundleEditorTable.ts","construction@develop:construction\u002Fpublic\u002Fjs\u002Fbundle_editor\u002Fevents.ts","construction@develop:construction\u002Futils\u002Fproduct_bundle\u002F__init__.py","construction@develop:construction\u002Futils\u002Fproduct_bundle\u002Fapi.py","construction@develop:construction\u002Futils\u002Fproduct_bundle\u002Fhooks.py","construction@develop:construction\u002Finstall.py","construction@develop:construction\u002Fhooks.py","erpnext@develop:erpnext\u002Fselling\u002Fdoctype\u002Fproduct_bundle\u002Fproduct_bundle.py","erpnext@develop:erpnext\u002Fselling\u002Fdoctype\u002Fquotation_item\u002Fquotation_item.json","erpnext@develop:erpnext\u002Flocale\u002Ffr.po","\u002Fnext\u002Fdokos\u002Fchantiers\u002Fediteur-ensembles-produits",{"title":5,"description":419},"2.next\u002F1.dokos\u002F15.chantiers\u002F4.editeur-ensembles-produits","qFjI9hc08q4eIagTcCzGazpfegm6M9NVQGv5Q8kJFLk",{},1793871823784]