Logistics mailing list archives
logistics@odoo-community.org
Browse archives
New module : Scenarios engine for smart barcode scanners
Automatic calculation of stock replenishments
Warehouse product location strategy
by
6it, Jean-Marc Dupont
Hello everyone,
I need an advice from Odoo logistics experts :
How do you parameterize Odoo warehouse to manage default product location on warehouse stock, when receiving products and thus when delivering those products
Let's say we have 100 location in the warehouse stock
We would like to define default product location, category by category (and sometimes by product)
Do we have to create 100 routes and affect them to product categories or products (by the way, the widget used in product form for routes will display 100 check boxes !!!) ?
Is there other lighter solutions ?
Thank you in advance for your answers
PS : I tried to install the stock_product_location but I got an installation error :
Traceback (most recent call last): File "/home/it-6it/aoe-dev_80/base/openerp/http.py", line 537, in _handle_exception return super(JsonRequest, self)._handle_exception(exception) File "/home/it-6it/aoe-dev_80/base/openerp/http.py", line 574, in dispatch result = self._call_function(**self.params) File "/home/it-6it/aoe-dev_80/base/openerp/http.py", line 310, in _call_function return checked_call(self.db, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/service/model.py", line 113, in wrapper return f(dbname, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/http.py", line 307, in checked_call return self.endpoint(*a, **kw) File "/home/it-6it/aoe-dev_80/base/openerp/http.py", line 803, in __call__ return self.method(*args, **kw) File "/home/it-6it/aoe-dev_80/base/openerp/http.py", line 403, in response_wrap response = f(*args, **kw) File "/home/it-6it/aoe-dev_80/base/addons/web/controllers/main.py", line 952, in call_button action = self._call_kw(model, method, args, {}) File "/home/it-6it/aoe-dev_80/base/addons/web/controllers/main.py", line 940, in _call_kw return checked_call(request.db, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/service/model.py", line 113, in wrapper return f(dbname, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/addons/web/controllers/main.py", line 939, in checked_call return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/api.py", line 241, in wrapper return old_api(self, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/addons/base/module/module.py", line 446, in button_immediate_install return self._button_immediate_function(cr, uid, ids, self.button_install, context=context) File "/home/it-6it/aoe-dev_80/base/openerp/api.py", line 241, in wrapper return old_api(self, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/addons/base/module/module.py", line 494, in _button_immediate_function registry = openerp.modules.registry.RegistryManager.new(cr.dbname, update_module=True) File "/home/it-6it/aoe-dev_80/base/openerp/modules/registry.py", line 370, in new openerp.modules.load_modules(registry._db, force_demo, status, update_module) File "/home/it-6it/aoe-dev_80/base/openerp/modules/loading.py", line 355, in load_modules loaded_modules, update_module) File "/home/it-6it/aoe-dev_80/base/openerp/modules/loading.py", line 255, in load_marked_modules loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks) File "/home/it-6it/aoe-dev_80/base/openerp/modules/loading.py", line 176, in load_module_graph _load_data(cr, module_name, idref, mode, kind='data') File "/home/it-6it/aoe-dev_80/base/openerp/modules/loading.py", line 118, in _load_data tools.convert_file(cr, module_name, filename, idref, mode, noupdate, kind, report) File "/home/it-6it/aoe-dev_80/base/openerp/tools/convert.py", line 901, in convert_file convert_xml_import(cr, module, fp, idref, mode, noupdate, report) File "/home/it-6it/aoe-dev_80/base/openerp/tools/convert.py", line 987, in convert_xml_import obj.parse(doc.getroot(), mode=mode) File "/home/it-6it/aoe-dev_80/base/openerp/tools/convert.py", line 853, in parse self._tags[rec.tag](self.cr, rec, n, mode=mode) File "/home/it-6it/aoe-dev_80/base/openerp/tools/convert.py", line 755, in _tag_record f_val = self.id_get(cr, f_ref) File "/home/it-6it/aoe-dev_80/base/openerp/tools/convert.py", line 832, in id_get res = self.model_id_get(cr, id_str, raise_if_not_found) File "/home/it-6it/aoe-dev_80/base/openerp/tools/convert.py", line 843, in model_id_get raise_if_not_found=raise_if_not_found) File "/home/it-6it/aoe-dev_80/base/openerp/api.py", line 241, in wrapper return old_api(self, *args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/addons/base/ir/ir_model.py", line 936, in xmlid_to_res_model_res_id return self.xmlid_lookup(cr, uid, xmlid)[1:3] File "/home/it-6it/aoe-dev_80/base/openerp/api.py", line 241, in wrapper return old_api(self, *args, **kwargs) File "<string>", line 2, in xmlid_lookup File "/home/it-6it/aoe-dev_80/base/openerp/tools/cache.py", line 74, in lookup value = d[key] = self.method(*args, **kwargs) File "/home/it-6it/aoe-dev_80/base/openerp/addons/base/ir/ir_model.py", line 926, in xmlid_lookup raise ValueError('External ID not found in the system: %s' % (xmlid)) ParseError: "External ID not found in the system: stock.view_normal_procurement_locations_form" while parsing /home/it-6it/aoe-dev_80/base/addons/stock_product_location/product_view.xml:5, near <record model="ir.ui.view" id="product_normal_stock_loc_form_view"> <field name="name">view.product.normal.stock.loc.form</field> <field name="model">product.product</field> <field name="inherit_id" ref="stock.view_normal_procurement_locations_form"/> <field name="type">form</field> <field name="arch" type="xml"> <field name="loc_rack" position="before"> <field name="property_stock_location" domain="[('usage','=','internal')]" attrs="{'readonly':[('type','=','service')]}"/> </field> </field> </record>
Jean-Marc DUPONT
Agence Web, e-Commerce et Systèmes d'entreprise
68, rue du Refuge - 84200 Carpentras
Follow-Ups
-
Re: Warehouse product location strategy
by Carlos Liébana <carlos.liebana@factorlibre.com> - 16/11/2015 18:02:18 - 0 -
Re: Warehouse product location strategy
byCamptocamp France SAS, Alexandre Fayolle