Search 1.9 billion lines of Odoo code on GitHub

product_lifecycle

Author: Vauxoo
License: LGPL-3
Branch: 12.0
Repository: aaltinisik/addons-vauxoo
Dependencies: product, sale, sale_stock, and web
Languages: HTML (456, 46.7%), JavaScript (29, 3.0%), PO File (64, 6.6%), Python (124, 12.7%), XML (187, 19.2%), and reStructuredText (116, 11.9%)
Other branches: 10.0, 11.0, 16.0, 8.0, 8.0-purchase-rfq-xls, 9.0, nhomar-patch-1, and revert-768-8.0-solves_issue_811-HU1006-dev-gmlp
Other repositories: 111sree/addons-vauxoo, AbdelghaniDr/addons-vauxoo, Abdullah-Alghoul/addons-vauxoo, Aivenho/addons-vauxoo, AizenL/addons-vauxoo, ClearCorp/vauxoo-addons-vauxoo, CrazyIFriT/addons-vauxoo, DITIntl/addons-vauxoo, DudhatShivam/addons-vauxoo, ERPLibre/addons-vauxoo, ElvenStudio/addons-vauxoo, EssentNovaTeam/addons-vauxoo, FAY8PTELTD/addons-vauxoo, FelixAdler/addons-vauxoo, FernandoCarlosGarcia/addons-vauxoo, ForgeFlow/addons-vauxoo, FullBringEc/addons-vauxoo, GabbasovDinar/addons-vauxoo, GrupoAlvamex/addons-vauxoo, Guobower/addons-vauxoo, HarshalBhoir/addons-vauxoo, Ingeos/addons-vauxoo, InstaERP/addons-vauxoo, Jarsa-dev/addons-vauxoo, JibenCL/addons-vauxoo, JorgeJuarezM/addons-vauxoo, JulioSerna/addons-vauxoo, KennyLeung/addons-vauxoo, Khwarizmiat/addons-vauxoo, Maanumx/addons-vauxoo, MadsackMediaStore/addons-vauxoo, Mahmoud-Alaa-Eldeen/addons-vauxoo, MandaTokiniaina/addons-vauxoo, NaSol/addons-vauxoo, NothingCtrl/addons-vauxoo, OutillageStEtienne/addons-vauxoo, QSoftCorporationEC/addons-vauxoo, RL-OtherApps/addons-vauxoo, StefanRijnhart/addons-vauxoo, Tecnativa/addons-vauxoo, TheCloneMaster/addons-vauxoo, Upsyd/addons-vauxoo, Vauxoo/addons-vauxoo, VbossEkat/addons-vauxoo, VitalPet/addons-vauxoo-1, VizThoughts/addons-vauxoo, YevhenPechurin/addons-vauxoo, abdelmaaboud/addons-vauxoo, adeel982010/addons-vauxoo, alexsandrohaag/addons-vauxoo, alonejustinone/addons-vauxoo, amendoncabh/addons-vauxoo, amrnegm/addons-vauxoo, andreaarce/addons-vauxoo, anodino-dev/addons-vauxoo, arasty/addons-vauxoo, archetipo/addons-vauxoo, atonaltzin/addons-vauxoo, aurestic/addons-vauxoo, awaistune/addons-vauxoo, bachmanna/addons-vauxoo, bgavarini/addons-vauxoo, bimajatiwijaya/addons-vauxoo, bjoliveau/addons-vauxoo, bluelinemx/addons-vauxoo, bmspy/addons-vauxoo, bmya/addons-vauxoo, boolit-team/addons-vauxoo, bopo/addons-vauxoo, brain-tec/addons-vauxoo, caber/addons-vauxoo, cameroun/addons-vauxoo, cbaltodano90/addons-vauxoo, cedvict/addons-vauxoo, chenjingxiong/addons-vauxoo, cholitoecuatoriano/addons-vauxoo, cialuo/addons-vauxoo, cjcruz/addons-vauxoo, ckardaras/addons-vauxoo, codequarters/addons-vauxoo, cogitool/addons-vauxoo, conectel-dev/addons-vauxoo, contactek/addons-vauxoo, corsisa/addons-vauxoo, cvinh/addons-vauxoo, daramousk/addons-vauxoo, ddico/addons-vauxoo, dhecar/addons-vauxoo, diagramsoftware/addons-vauxoo, dio09/addons-vauxoo, dipendra-karki/addons-vauxoo, dochse/addons-vauxoo, doganaltunbay/addons-vauxoo, echeverrifm/addons-vauxoo, eddybc/addons-vauxoo, eksotama/addons-vauxoo, elmonitor/addons-vauxoo, ernesto-medina/addons-vauxoo, fanzalika/addons-vauxoo, fauzi-tsani/addons-vauxoo, frahikLV/addons-vauxoo, friedi1/addons-vauxoo, funkring/addons-vauxoo, gameboy199/addons-vauxoo, gastonfeng/addons-vauxoo, gbertolani/addons-vauxoo, gearsforwork/addons-vauxoo, gfcapalbo/addons-vauxoo, giacomomagini/addons-vauxoo, gilbert-yuan/addons-vauxoo, gitmehedi/addons-vauxoo, gmlp/addons-vauxoo, gobozgz/addons-vauxoo, grottas/addons-vauxoo, gsunjka/addons-vauxoo, guillermm/addons-vauxoo, gustavovalverde/addons-vauxoo, haryoran04/addons-vauxoo, hbto/addons-vauxoo, hifly/addons-vauxoo, hotkee/addons-vauxoo, huzzy143/addons-vauxoo, intellego-bi/addons-vauxoo, isos/addons-vauxoo, ivanporras/addons-vauxoo, izzihector/addons-vauxoo, jage22/addons-vauxoo, jairuque/addons-vauxoo, jason156/addons-vauxoo, jfpla/addons-vauxoo, jjsamayoa/addons-vauxoo, jlaloux/addons-vauxoo, johannbelet/addons-vauxoo, jonathanf/addons-vauxoo, jorsea/addons-vauxoo, josemoralesp/addons-vauxoo, jsabastizagal/addons-vauxoo, jusdng/addons-vauxoo, kingsleyuk2003/addons-vauxoo, kmee/addons-vauxoo, kmlew/addons-vauxoo, kossovo/addons-vauxoo, leodoooca/addons-vauxoo, levkar/addons-vauxoo, lfreeke/addons-vauxoo, likaiyuan/addons-vauxoo, lithint/addons-vauxoo, loctv/addons-vauxoo, lucagem/addons-vauxoo, luistorresm/addons-vauxoo, maljac/addons-vauxoo, map0logo/addons-vauxoo, marcelomora/addons-vauxoo, marcelsavegnago/addons-vauxoo, marionumza/Vauxoo-addons-vauxoo, mbenyoub/addons-vauxoo, mcmx/addons-vauxoo, mhdsyarif/addons-vauxoo, miguelparaiso/addons-vauxoo, mohamedhagag/addons-vauxoo, molandtoxx/addons-vauxoo, muk-projects/addons-vauxoo, n30chido/addons-vauxoo, nabiforks/addons-vauxoo, nick2474/addons-vauxoo, nikols/addons-vauxoo, nteej/addons-vauxoo, odic30/addons-vauxoo, odoobgorg/addons-vauxoo, odoocn/addons-vauxoo, odoofans/addons-vauxoo, odoousers2014/addons-vauxoo, one2pret/addons-vauxoo, onurugur/addons-vauxoo, opensert/addons-vauxoo, oreju/addons-vauxoo, oscarolar/addons-vauxoo, osiell/addons-vauxoo, oxidos/addons-vauxoo, pedroporras/addons-vauxoo, petypi/addons-vauxoo, qsoftcorporation/addons-vauxoo, rafnixg/addons-vauxoo, rdmachadog/addons-vauxoo, rokealva83/addons-vauxoo, rossasa/vauxoo-addons, rralaiarimanga/addons-vauxoo, rschnapka/addons-vauxoo, rsosa423/addons-vauxoo, sadeqamin/addons-vauxoo, saltonmassally/addons-vauxoo, samirthebti/addons-vauxoo, sangtt/addons-vauxoo, sc4you/addons-vauxoo, sdwhwfw/addons-vauxoo, shouyejing/addons-vauxoo, simmatica/addons-vauxoo, skmezanul/addons-vauxoo, sm2x/addons-vauxoo, sohaibrafiq/addons-vauxoo, stanisljevic/addons-vauxoo, stark182/addons-vauxoo, stundzia/addons-vauxoo, sunny-odoo/addons-vauxoo, syci/addons-vauxoo, thopy/addons-vauxoo, tonihr/addons-vauxoo, topecz/addons-vauxoo, trinismooth/addons-vauxoo, trungvoi/addons-vauxoo, ubic135/addons-vauxoo, umair-gujjar/addons-vauxoo, valenciaricardos/addons-vauxoo, vauxoo-dev/addons-vauxoo, vexxloso/addons-vauxoo, vikramboyapati/addons-vauxoo, wahhid/addons-vauxoo, waltervargas/addons-vauxoo, wanfgh/addons-vauxoo, westlyou/addons-vauxoo, woakes070048/addons-vauxoo, x8bit/addons-vauxoo, xcorail/addons-vauxoo, xirobs/addons-vauxoo, xpansa/addons-vauxoo, xubiuit/addons-vauxoo, yasmanycastillo/addons-vauxoo, yelizariev/addons-vauxoo, ysantiago/addons-vauxoo, zhaohuaw/addons-vauxoo, and zlf4535/addons-vauxoo

<img alt="License: LGPL-3" src="https://img.shields.io/badge/licence-LGPL--3-blue.svg"> <a name="product-lifecycle"></a> <h2>Product Lifecycle</h2> <p>This module apply a part of the product lifecycle management concept by extending the logic of the field <code>Status</code> defined in the Odoo base modules and by adding a replacement product fields that will be used as alternatives in purchase operations when a product is discontinued.</p> <p>Odoo manage a informative status field in the <code>Product Template</code> model. This module hide this not used functionality and use a similar status field in the <code>Product Variant</code> model. This way we can identify the product lifecycle state of a product and what are the replacement relations.</p> <a name="installation"></a> <h2>Installation</h2> <p>To install this module, you need to:</p> <ul class="simple"> <li>Not special pre-installation is required, just install as a regular odoo module:<ul> <li>Download this module from <a class="reference external" href="https://github.com/vauxoo/addons-vauxoo">Vauxoo/addons-vauxoo</a></li> <li>Add the repository folder into your odoo addons-path.</li> <li>Go to <code>Settings &gt; Module list</code> search for the current name and click in <code>Install</code> button.</li> </ul> </li> </ul> <a name="configuration"></a> <h2>Configuration</h2> <p>To configure this module, you need to:</p> <ul class="simple"> <li>There is not special configuration for this module.</li> </ul> <a name="usage"></a> <h2>Usage</h2> <p><strong>Lifecycle Status</strong></p> <p>The status of the <code>Product Variant</code> is manage in the header of the product form view as a clickeable statusbar widget and with default value <code>In Development</code>.</p> <img alt="product.statusbar.png" src="product.statusbar.png" /> <p>The possible lifecyle states are:</p> <ul class="simple"> <li><code>In Development</code>: An active product that can be sell or purchase.</li> <li><code>Normal</code>: An active product that can be sell or purchase.</li> <li><code>End of Lifecycle</code>: Means that the product is a discontinued product but there is still in stock.</li> <li><code>Obsolete</code>: Means that the product is a discontinued product and have not stock.</li> </ul> <p>Search filters were added to search and group by products by its lifecycle status. Just go to a <code>Product Variant</code> list view and filter.</p> <img alt="product.lifecycle.filters.png" src="product.lifecycle.filters.png" /> <p><strong>Replacement Products</strong></p> <p>A new field section named <code>Replacement Info</code> was added to the <code>Product Variant</code> form view to hold the information about replacements products. This apply when the product is a <code>obsolete</code> product. There are new fields:</p> <ul class="simple"> <li><code>Replaced By</code> Apply when the current product is an obsolete product, this field is the new product that will be replacement of the current product.</li> <li><code>Replace To</code>: Apply when the current product is a new product, this field holds an obsolete product and indicate that the current product is the new replacement of the obsolete product.</li> </ul> <img alt="replacement.product.field.png" src="replacement.product.field.png" /> <p>This replacements relationships only apply over the purchase context. For automatic purchase, the obsolete product will not be purchased, instead its replacement product will be the one purchased.</p> <p><strong>Purchase Orders and Replacement Products</strong></p> <p>The user will be able to purchase the obsolete product, this module will show a warning message just informative indicating that the product is obsolete and showing the suggested replacement product so the user can decide if purchase the obsolete product or purchase its replacement product.</p> <img alt="purchase.order.line.warning.png" src="purchase.order.line.warning.png" /> <p>If a purchase order have lines with obsolete product you will see then in red. If your order still in draft state then you can replace the purchase order lines with its pre-configure replacement products. This can be performed through a new action named <code>Replace Obsolete Products</code> that you can activate doing a click over the button with the same name in the Purchase Order form view header.</p> <img alt="purchase.order.line.discontinued.png" src="purchase.order.line.discontinued.png" /> <p>This new action will filter and show you the purchase order lines with obsolete products and will show you the replacement product that is extract from the <code>Replaced By</code> field in the obsolete product configuration.</p> <p><em>NOTE: If not replacement product is shown means that the obsolete product has not configure replacement product.</em></p> <p>In another case, if you have several obsolete products in your purchase order but some one of then you want to purchase it even if they are obsolete then you just need to remove this line from the <code>Lines to Replace</code> section. This will not delete the purchase order line from the purchase order, will only indicate that this line will not be replace with its replacement product.</p> <p><em>NOTE: If there is not purchase order lines with obsolete products and you try to run the replace obsolete products wizard you will found a User Error message indicating that there is not lines to be replaced.</em></p> <img alt="replacement.product.wizard.png" src="replacement.product.wizard.png" /> <p>If you decide to purchase an <code>Obsolete</code> product and the purchase is complete (purchase order done and you receive the product) this will affect the product state, will change form <code>Obsolete</code> to <code>End of Life</code> state. This states change is a automatically action that runs every hour in the system. If, you do not want to wait because there is something yo want to do with the product you can go to the product form view and change the state manually.</p> <div class="figure align-center" style="width: 60%"> <a class="reference external image-reference" href="https://www.youtube.com/embed/xK-NcZHP6Hw"><img alt="http://img.youtube.com/vi/xK-NcZHP6Hw/hqdefault.jpg" src="http://img.youtube.com/vi/xK-NcZHP6Hw/hqdefault.jpg" /></a> <p class="caption">Click on the video</p> <div class="legend"> Here an example of how the Replace Obsolete Products works when purchasing two active products. When the purchase order is in draft the product state change to Obsolete. Then use the wizard to replace the products. Only the obsolete product with defined replaced by product can be replace.</div> </div> <p><strong>Sale Order and Obsolete Products</strong></p> <p>This module add a filter so you can not sell an obsolete product. That means that discontinued with no stock product will not be selectable from the sale order lines.</p> <p>Also, when you sale a <code>End of Life</code> product and finish the existence of the product (stock inventory 0.0) the product state will be affected. The product will change automatically from <code>End of Life</code> to <code>Obsolete</code> state. This is an automatic action and is done every 1 hour in the system.</p> <img alt="sale_order_from.png" src="sale_order_from.png" /> <p><strong>Product Edition Security</strong></p> <p>A new access rules over the <code>Products</code> and <code>Product Variants</code> records were added. A product only can be edited by its product manager.</p> <img alt="product.manager.png" src="product.manager.png" /> <a name="known-issues-roadmap"></a> <h2>Known issues / Roadmap</h2> <a name="bug-tracker"></a> <h2>Bug Tracker</h2> <p>Bugs are tracked on <a class="reference external" href="https://github.com/Vauxoo/addons-vauxoo/issues">GitHub Issues</a>. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed feedback <a class="reference external" href="https://github.com/Vauxoo/addons-vauxoo/issues/new?body=module:%20product_lifecyle%0Aversion:%208.0.1.7%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**">here</a></p> <a name="todo"></a> <h2>TODO</h2> <ul class="simple"> <li>Create a unit test that check directly the method that is responsible from run the ir.cron</li> <li>Check what is the current problem using old/new api indicate in this module tests.</li> <li>Apply OCA standards to this module.</li> </ul> <a name="credits"></a> <h2>Credits</h2> <p><strong>Contributors</strong></p> <ul class="simple"> <li>Katherine Zaoral &lt;<a class="reference external" href="mailto:kathy&#64;vauxoo.com">kathy&#64;vauxoo.com</a>&gt; (Planer/Developer)</li> <li>Nhomar Hernandez &lt;<a class="reference external" href="mailto:nhomar&#64;vauxoo.com">nhomar&#64;vauxoo.com</a>&gt; (Planner/Auditor)</li> </ul> <a name="maintainer"></a> <h2>Maintainer</h2> <a class="reference external image-reference" href="https://www.vauxoo.com"><img alt="Vauxoo" src="https://s3.amazonaws.com/s3.vauxoo.com/description_logo.png" style="width: 200px;" /></a> <p>This module is maintained by the Vauxoo.</p> <p>To contribute to this module, please visit <a class="reference external" href="https://www.vauxoo.com">https://www.vauxoo.com</a>.</p>