This question has been flagged
1 Reply
5392 Views

I am logged in as original admin account.

Created customer. went to Sales>Sales Order>Create New>Add Customer>Add Line Item>FAILURE

I get THIS error:


OpenERP Server Error

Client Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/http.py", line 203, in dispatch response["result"] = method(self, *self.params) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1129, in call_kw return self._call_kw(req, model, method, args, kwargs) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1121, in _call_kw return getattr(req.session.model(model), method)(args, **kwargs) File "/opt/openerp/server/openerp/addons/web/session.py", line 43, in proxy result = self.proxy.execute_kw(self.session._db, self.session._uid, self.session._password, self.model, method, args, kw) File "/opt/openerp/server/openerp/addons/web/session.py", line 31, in proxy_method result = self.session.send(self.service_name, method, *args) File "/opt/openerp/server/openerp/addons/web/session.py", line 104, in send raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)

Server Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/session.py", line 90, in send return openerp.netsvc.dispatch_rpc(service_name, method, args) File "/opt/openerp/server/openerp/netsvc.py", line 293, in dispatch_rpc result = ExportService.getService(service_name).dispatch(method, params) File "/opt/openerp/server/openerp/service/web_services.py", line 626, in dispatch res = fn(db, uid, params) File "/opt/openerp/server/openerp/osv/osv.py", line 188, in execute_kw return self.execute(db, uid, obj, method, *args, *kw or {}) File "/opt/openerp/server/openerp/osv/osv.py", line 131, in wrapper return f(self, dbname, args, *kwargs) File "/opt/openerp/server/openerp/osv/osv.py", line 197, in execute res = self.execute_cr(cr, uid, obj, method, args, *kw) File "/opt/openerp/server/openerp/osv/osv.py", line 185, in execute_cr return getattr(object, method)(cr, uid, args, *kw) File "/opt/openerp/server/openerp/addons/warning/warning.py", line 274, in product_id_change lang, update_tax, date_order, packaging, fiscal_position, flag, context=context) File "/opt/openerp/server/openerp/addons/sale_stock/sale_stock.py", line 611, in product_id_change compare_qty = float_compare(product_obj.virtual_available * uom2.factor, qty * product_obj.uom_id.factor, precision_rounding=product_obj.uom_id.rounding) File "/opt/openerp/server/openerp/osv/orm.py", line 484, in __getattr__ return self[name] File "/opt/openerp/server/openerp/osv/orm.py", line 399, in __getitem__ field_values = self._table.read(self._cr, self._uid, ids, field_names, context=self._context, load="_classic_write") File "/opt/openerp/server/openerp/osv/orm.py", line 3604, in read result = self._read_flat(cr, user, select, fields, context, load) File "/opt/openerp/server/openerp/osv/orm.py", line 3712, in _read_flat res2 = self._columns[val[0]].get(cr, self, ids, val, user, context=context, values=res) File "/opt/openerp/server/openerp/osv/fields.py", line 1131, in get result = self._fnct(obj, cr, uid, ids, name, self._arg, context) File "/opt/openerp/server/openerp/addons/stock/product.py", line 356, in _product_available stock = self.get_product_available(cr, uid, ids, context=c) File "/opt/openerp/server/openerp/addons/stock/product.py", line 219, in get_product_available warehouse_id = shop_obj.read(cr, uid, int(context['shop']), ['warehouse_id'])['warehouse_id'][0] TypeError: 'bool' object has no attribute '__getitem__'


Hit OK, Save and close.

Line Item Saves to Sales Order.

Hit CONFIRM SALE, I get this error:


OpenERP Server Error

Client Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/http.py", line 203, in dispatch response["result"] = method(self, *self.params) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1129, in call_kw return self._call_kw(req, model, method, args, kwargs) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1121, in _call_kw return getattr(req.session.model(model), method)(args, **kwargs) File "/opt/openerp/server/openerp/addons/web/session.py", line 43, in proxy result = self.proxy.execute_kw(self.session._db, self.session._uid, self.session._password, self.model, method, args, kw) File "/opt/openerp/server/openerp/addons/web/session.py", line 31, in proxy_method result = self.session.send(self.service_name, method, *args) File "/opt/openerp/server/openerp/addons/web/session.py", line 104, in send raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)

Server Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/session.py", line 90, in send return openerp.netsvc.dispatch_rpc(service_name, method, args) File "/opt/openerp/server/openerp/netsvc.py", line 293, in dispatch_rpc result = ExportService.getService(service_name).dispatch(method, params) File "/opt/openerp/server/openerp/service/web_services.py", line 626, in dispatch res = fn(db, uid, params) File "/opt/openerp/server/openerp/osv/osv.py", line 188, in execute_kw return self.execute(db, uid, obj, method, *args, *kw or {}) File "/opt/openerp/server/openerp/osv/osv.py", line 131, in wrapper return f(self, dbname, args, *kwargs) File "/opt/openerp/server/openerp/osv/osv.py", line 197, in execute res = self.execute_cr(cr, uid, obj, method, args, *kw) File "/opt/openerp/server/openerp/osv/osv.py", line 185, in execute_cr return getattr(object, method)(cr, uid, args, *kw) File "/opt/openerp/server/openerp/addons/warning/warning.py", line 274, in product_id_change lang, update_tax, date_order, packaging, fiscal_position, flag, context=context) File "/opt/openerp/server/openerp/addons/sale_stock/sale_stock.py", line 611, in product_id_change compare_qty = float_compare(product_obj.virtual_available * uom2.factor, qty * product_obj.uom_id.factor, precision_rounding=product_obj.uom_id.rounding) File "/opt/openerp/server/openerp/osv/orm.py", line 484, in __getattr__ return self[name] File "/opt/openerp/server/openerp/osv/orm.py", line 399, in __getitem__ field_values = self._table.read(self._cr, self._uid, ids, field_names, context=self._context, load="_classic_write") File "/opt/openerp/server/openerp/osv/orm.py", line 3604, in read result = self._read_flat(cr, user, select, fields, context, load) File "/opt/openerp/server/openerp/osv/orm.py", line 3712, in _read_flat res2 = self._columns[val[0]].get(cr, self, ids, val, user, context=context, values=res) File "/opt/openerp/server/openerp/osv/fields.py", line 1131, in get result = self._fnct(obj, cr, uid, ids, name, self._arg, context) File "/opt/openerp/server/openerp/addons/stock/product.py", line 356, in _product_available stock = self.get_product_available(cr, uid, ids, context=c) File "/opt/openerp/server/openerp/addons/stock/product.py", line 219, in get_product_available warehouse_id = shop_obj.read(cr, uid, int(context['shop']), ['warehouse_id'])['warehouse_id'][0] TypeError: 'bool' object has no attribute '__getitem__'


Hit OK

Cannot get past this.

I believe this has something to do with user credentials and assignment to warehouse location. I am not a developer but it looks like the user, the product and the warehouse are not talking to each other.

OpenERP Server Error

Client Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/http.py", line 203, in dispatch response["result"] = method(self, *self.params) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1133, in call_button action = self._call_kw(req, model, method, args, {}) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1121, in _call_kw return getattr(req.session.model(model), method)(args, **kwargs) File "/opt/openerp/server/openerp/addons/web/session.py", line 43, in proxy result = self.proxy.execute_kw(self.session._db, self.session._uid, self.session._password, self.model, method, args, kw) File "/opt/openerp/server/openerp/addons/web/session.py", line 31, in proxy_method result = self.session.send(self.service_name, method, *args) File "/opt/openerp/server/openerp/addons/web/session.py", line 104, in send raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)

Server Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/session.py", line 90, in send return openerp.netsvc.dispatch_rpc(service_name, method, args) File "/opt/openerp/server/openerp/netsvc.py", line 293, in dispatch_rpc result = ExportService.getService(service_name).dispatch(method, params) File "/opt/openerp/server/openerp/service/web_services.py", line 626, in dispatch res = fn(db, uid, params) File "/opt/openerp/server/openerp/osv/osv.py", line 188, in execute_kw return self.execute(db, uid, obj, method, *args, *kw or {}) File "/opt/openerp/server/openerp/osv/osv.py", line 131, in wrapper return f(self, dbname, args, *kwargs) File "/opt/openerp/server/openerp/osv/osv.py", line 197, in execute res = self.execute_cr(cr, uid, obj, method, args, *kw) File "/opt/openerp/server/openerp/osv/osv.py", line 185, in execute_cr return getattr(object, method)(cr, uid, args, *kw) File "/opt/openerp/server/openerp/addons/portal_sale/portal_sale.py", line 64, in action_button_confirm return super(sale_order, self).action_button_confirm(cr, uid, ids, context=context) File "/opt/openerp/server/openerp/addons/sale/sale.py", line 581, in action_button_confirm wf_service.trg_validate(uid, 'sale.order', ids[0], 'order_confirm', cr) File "/opt/openerp/server/openerp/workflow/wkf_service.py", line 119, in trg_validate res2 = instance.validate(cr, id, ident, signal) File "/opt/openerp/server/openerp/workflow/instance.py", line 43, in validate workitem.process(cr, witem, ident, signal, force_running, stack=stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 60, in process ok = _split_test(cr, workitem, activity['split_mode'], ident, signal, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 175, in _split_test _join_test(cr, t[0], t[1], ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 183, in _join_test create(cr,[activity], inst_id, ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 40, in create process(cr, res, ident, stack=stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 60, in process ok = _split_test(cr, workitem, activity['split_mode'], ident, signal, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 175, in _split_test _join_test(cr, t[0], t[1], ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 183, in _join_test create(cr,[activity], inst_id, ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 40, in create process(cr, res, ident, stack=stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 60, in process ok = _split_test(cr, workitem, activity['split_mode'], ident, signal, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 175, in _split_test _join_test(cr, t[0], t[1], ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 183, in _join_test create(cr,[activity], inst_id, ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 40, in create process(cr, res, ident, stack=stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 52, in process result = _execute(cr, workitem, activity, ident, stack) File "/opt/openerp/server/openerp/workflow/workitem.py", line 106, in _execute returned_action = wkf_expr.execute(cr, ident, workitem, activity) File "/opt/openerp/server/openerp/workflow/wkf_expr.py", line 67, in execute return _eval_expr(cr, ident, workitem, activity['action']) File "/opt/openerp/server/openerp/workflow/wkf_expr.py", line 57, in _eval_expr ret = eval(line, env, nocopy=True) File "/opt/openerp/server/openerp/tools/safe_eval.py", line 241, in safe_eval return eval(test_expr(expr, _SAFE_OPCODES, mode=mode), globals_dict, locals_dict) File "", line 1, in <module> File "/opt/openerp/server/openerp/osv/orm.py", line 374, in function_proxy return attr(self._cr, self._uid, [self._id], args, *kwargs) File "/opt/openerp/server/openerp/addons/sale_stock/sale_stock.py", line 446, in action_ship_create self._create_pickings_and_procurements(cr, uid, order, order.order_line, None, context=context) File "/opt/openerp/server/openerp/addons/sale_stock/sale_stock.py", line 420, in _create_pickings_and_procurements proc_id = procurement_obj.create(cr, uid, self._prepare_order_line_procurement(cr, uid, order, line, move_id, date_planned, context=context)) File "/opt/openerp/server/openerp/addons/project_mrp/project_mrp.py", line 62, in _prepare_order_line_procurement uid, order, line, move_id, date_planned, context=context) File "/opt/openerp/server/openerp/addons/sale_stock/sale_stock.py", line 304, in _prepare_order_line_procurement 'location_id': order.shop_id.warehouse_id.lot_stock_id.id, AttributeError: 'NoneType' object has no attribute 'id'

Avatar
Discard
Best Answer

Hi.

I think this message means:

File "/opt/openerp/server/openerp/addons/sale_stock/sale_stock.py", line 304, in _prepare_order_line_procurement 'location_id': order.shop_id.warehouse_id.lot_stock_id.id, AttributeError: 'NoneType' object has no attribute 'id'

Please check your places and warehosues. I think you remove the stocking place, or warehouse. When the system try to make any stock movement, or check the availability the place is not exists.

Avatar
Discard