*** This bug is a duplicate of bug 736036 ***
https://bugs.launchpad.net/bugs/736036
** This bug has been marked a duplicate of bug 736036
connot add group on an object
* You can subscribe to bug 736036 by following this link:
https://bugs.launchpad.net/openobject-client-web/+bug/736036/+subscribe
--
You received this bug notification because you are a member of OpenERP
SA's Web Client R&D, which is a bug assignee.
https://bugs.launchpad.net/bugs/717185
Title:
[trunk] Creating a new pricelist from a sale ordre crashes
Status in OpenERP Web Client:
Confirmed
Bug description:
6.0.1
When creating a new sale order I create a new price list
When I want to create a new "product Listprice item" the web client crashes
A problem occurred in a Python script. Here is the sequence of function calls
leading up to the error, in the order they occurred.
/home/tempo/openerp-web-6.0.1/lib/cherrypy/_cprequest.py in
respond(self=<cherrypy._cprequest.Request object at 0xa2771ec>,
path_info='/openerp/openo2m/edit')
604 if self.handler:
605 self.stage = 'handler'
606 cherrypy.response.body = self.handler()
607
608 self.stage = 'before_finalize'
global cherrypy = <module 'cherrypy' from
'/home/tempo/openerp-web-6.0.1/lib/cherrypy/__init__.pyc'>, cherrypy.response =
<cherrypy._ThreadLocalProxy object at 0xb751ae4c>, cherrypy.response.body = [],
self = <cherrypy._cprequest.Request object at 0xa2771ec>, self.handler =
<cherrypy._cpdispatch.LateParamPageHandler object at 0xa277bac>
/home/tempo/openerp-web-6.0.1/lib/cherrypy/_cpdispatch.py in
__call__(self=<cherrypy._cpdispatch.LateParamPageHandler object at 0xa27720c>)
23 def __call__(self):
24 try:
25 return self.callable(*self.args, **self.kwargs)
26 except TypeError, x:
27 test_callable_spec(self.callable, self.args, self.kwargs)
self = <cherrypy._cpdispatch.LateParamPageHandler object at 0xa27720c>,
self.callable = <bound method Root.default of
<openobject.controllers._root.Root object at 0x985e2cc>>, self.args =
('openerp', 'openo2m', 'edit'), self.kwargs = {'_terp_editable': '1',
'_terp_o2m': 'version_id/items_id', '_terp_o2m_model':
'product.pricelist.item', '_terp_parent_id': '2', '_terp_parent_model':
'product.pricelist.version', '_terp_parent_view_id': 'False',
'_terp_view_params/_terp_context': "{'lang': u'en_US', 'tz': False,
'search_view': 5...t': 'web', 'active_ids': [261], 'active_id': 261}",
'_terp_view_params/_terp_id': '14', '_terp_view_params/_terp_ids': '[14, 1]',
'_terp_view_params/_terp_model': 'sale.order', ...}
/home/tempo/openerp-web-6.0.1/openobject/tools/_expose.py in
func_wrapper(*args=(<openobject.controllers._root.Root object at 0x985e2cc>,
'openerp', 'openo2m', 'edit'), **kw={'_terp_editable': '1', '_terp_o2m':
'version_id/items_id', '_terp_o2m_model': 'product.pricelist.item',
'_terp_parent_id': '2', '_terp_parent_model': 'product.pricelist.version',
'_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': "{'lang':
u'en_US', 'tz': False, 'search_view': 5...t': 'web', 'active_ids': [261],
'active_id': 261}", '_terp_view_params/_terp_id': '14',
'_terp_view_params/_terp_ids': '[14, 1]', '_terp_view_params/_terp_model':
'sale.order', ...})
180 raise cherrypy.HTTPError(405)
181
182 res = func(*args, **kw)
183 if format == 'json' or (allow_json and 'allow_json' in
cherrypy.request.params):
184 cherrypy.response.headers['Content-Type'] =
'text/javascript'
global res =
'/home/tempo/openerp-web-6.0.1/openobject/widgets/templates/jssource.mako',
func = <function default at 0x9898dbc>, args =
(<openobject.controllers._root.Root object at 0x985e2cc>, 'openerp', 'openo2m',
'edit'), kw = {'_terp_editable': '1', '_terp_o2m': 'version_id/items_id',
'_terp_o2m_model': 'product.pricelist.item', '_terp_parent_id': '2',
'_terp_parent_model': 'product.pricelist.version', '_terp_parent_view_id':
'False', '_terp_view_params/_terp_context': "{'lang': u'en_US', 'tz': False,
'search_view': 5...t': 'web', 'active_ids': [261], 'active_id': 261}",
'_terp_view_params/_terp_id': '14', '_terp_view_params/_terp_ids': '[14, 1]',
'_terp_view_params/_terp_model': 'sale.order', ...}
/home/tempo/openerp-web-6.0.1/openobject/controllers/_root.py in
default(self=<openobject.controllers._root.Root object at 0x985e2cc>,
*args=('openerp', 'openo2m', 'edit'), **kw={'_terp_editable': '1', '_terp_o2m':
'version_id/items_id', '_terp_o2m_model': 'product.pricelist.item',
'_terp_parent_id': '2', '_terp_parent_model': 'product.pricelist.version',
'_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': "{'lang':
u'en_US', 'tz': False, 'search_view': 5...t': 'web', 'active_ids': [261],
'active_id': 261}", '_terp_view_params/_terp_id': '14',
'_terp_view_params/_terp_ids': '[14, 1]', '_terp_view_params/_terp_model':
'sale.order', ...})
85 request.handler = cherrypy.NotFound()
86
87 return request.handler()
88
89 def find_handler(self):
request = <cherrypy._ThreadLocalProxy object at 0xb751ae0c>, request.handler
= <cherrypy._cpdispatch.LateParamPageHandler object at 0xa277bac>
/home/tempo/openerp-web-6.0.1/lib/cherrypy/_cpdispatch.py in
__call__(self=<cherrypy._cpdispatch.LateParamPageHandler object at 0xa277bac>)
23 def __call__(self):
24 try:
25 return self.callable(*self.args, **self.kwargs)
26 except TypeError, x:
27 test_callable_spec(self.callable, self.args, self.kwargs)
self = <cherrypy._cpdispatch.LateParamPageHandler object at 0xa277bac>,
self.callable = <function edit at 0xa79925c>, self.args = (), self.kwargs =
{'_terp_editable': '1', '_terp_o2m': 'version_id/items_id', '_terp_o2m_model':
'product.pricelist.item', '_terp_parent_id': '2', '_terp_parent_model':
'product.pricelist.version', '_terp_parent_view_id': 'False',
'_terp_view_params/_terp_context': "{'lang': u'en_US', 'tz': False,
'search_view': 5...t': 'web', 'active_ids': [261], 'active_id': 261}",
'_terp_view_params/_terp_id': '14', '_terp_view_params/_terp_ids': '[14, 1]',
'_terp_view_params/_terp_model': 'sale.order', ...}
/home/tempo/openerp-web-6.0.1/addons/openerp/controllers/utils.py in
wrapper(*args=(), **kw={'_terp_editable': '1', '_terp_o2m':
'version_id/items_id', '_terp_o2m_model': 'product.pricelist.item',
'_terp_parent_id': '2', '_terp_parent_model': 'product.pricelist.version',
'_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': "{'lang':
u'en_US', 'tz': False, 'search_view': 5...t': 'web', 'active_ids': [261],
'active_id': 261}", '_terp_view_params/_terp_id': '14',
'_terp_view_params/_terp_ids': '[14, 1]', '_terp_view_params/_terp_model':
'sale.order', ...})
110 # User is logged in; allow access
111 clear_login_fields(kw)
112 return fn(*args, **kw)
113 else:
114 action = kw.get('login_action', '')
fn = <bound method OpenO2M.edit of <openerp.controllers.openo2m.OpenO2M
object at 0xa277dcc>>, args = (), kw = {'_terp_editable': '1', '_terp_o2m':
'version_id/items_id', '_terp_o2m_model': 'product.pricelist.item',
'_terp_parent_id': '2', '_terp_parent_model': 'product.pricelist.version',
'_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': "{'lang':
u'en_US', 'tz': False, 'search_view': 5...t': 'web', 'active_ids': [261],
'active_id': 261}", '_terp_view_params/_terp_id': '14',
'_terp_view_params/_terp_ids': '[14, 1]', '_terp_view_params/_terp_model':
'sale.order', ...}
/home/tempo/openerp-web-6.0.1/openobject/tools/_expose.py in
func_wrapper(*args=(<openerp.controllers.openo2m.OpenO2M object at
0xa277dcc>,), **kw={'_terp_editable': '1', '_terp_o2m': 'version_id/items_id',
'_terp_o2m_model': 'product.pricelist.item', '_terp_parent_id': '2',
'_terp_parent_model': 'product.pricelist.version', '_terp_parent_view_id':
'False', '_terp_view_params/_terp_context': "{'lang': u'en_US', 'tz': False,
'search_view': 5...t': 'web', 'active_ids': [261], 'active_id': 261}",
'_terp_view_params/_terp_id': '14', '_terp_view_params/_terp_ids': '[14, 1]',
'_terp_view_params/_terp_model': 'sale.order', ...})
180 raise cherrypy.HTTPError(405)
181
182 res = func(*args, **kw)
183 if format == 'json' or (allow_json and 'allow_json' in
cherrypy.request.params):
184 cherrypy.response.headers['Content-Type'] =
'text/javascript'
global res =
'/home/tempo/openerp-web-6.0.1/openobject/widgets/templates/jssource.mako',
func = <function edit at 0x9b58684>, args =
(<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>,), kw =
{'_terp_editable': '1', '_terp_o2m': 'version_id/items_id', '_terp_o2m_model':
'product.pricelist.item', '_terp_parent_id': '2', '_terp_parent_model':
'product.pricelist.version', '_terp_parent_view_id': 'False',
'_terp_view_params/_terp_context': "{'lang': u'en_US', 'tz': False,
'search_view': 5...t': 'web', 'active_ids': [261], 'active_id': 261}",
'_terp_view_params/_terp_id': '14', '_terp_view_params/_terp_ids': '[14, 1]',
'_terp_view_params/_terp_model': 'sale.order', ...}
/home/tempo/openerp-web-6.0.1/addons/openerp/controllers/openo2m.py in
edit(self=<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>,
**kw={'_terp_editable': '1', '_terp_o2m': 'version_id/items_id',
'_terp_o2m_model': 'product.pricelist.item', '_terp_parent_id': '2',
'_terp_parent_model': 'product.pricelist.version', '_terp_parent_view_id':
'False', '_terp_view_params/_terp_context': "{'lang': u'en_US', 'tz': False,
'search_view': 5...t': 'web', 'active_ids': [261], 'active_id': 261}",
'_terp_view_params/_terp_id': '14', '_terp_view_params/_terp_ids': '[14, 1]',
'_terp_view_params/_terp_model': 'sale.order', ...})
146 def edit(self, **kw):
147 params, data = TinyDict.split(kw)
148 return self.create(params)
149
150 @expose('json', methods=('POST',))
self = <openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>, self.create
= <function create at 0xa2724fc>, params = {'_terp_view_type': 'form',
'_terp_o2m': 'versio...: 'product.pricelist.item', '_terp_view_ids': []}
/home/tempo/openerp-web-6.0.1/addons/openerp/controllers/utils.py in
wrapper(*args=({'_terp_view_type': 'form', '_terp_o2m': 'versio...:
'product.pricelist.item', '_terp_view_ids': []},), **kw={})
110 # User is logged in; allow access
111 clear_login_fields(kw)
112 return fn(*args, **kw)
113 else:
114 action = kw.get('login_action', '')
fn = <bound method OpenO2M.create of <openerp.controllers.openo2m.OpenO2M
object at 0xa277dcc>>, args = ({'_terp_view_type': 'form', '_terp_o2m':
'versio...: 'product.pricelist.item', '_terp_view_ids': []},), kw = {}
/home/tempo/openerp-web-6.0.1/openobject/tools/_expose.py in
func_wrapper(*args=(<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>,
{'_terp_view_type': 'form', '_terp_o2m': 'versio...: 'product.pricelist.item',
'_terp_view_ids': []}), **kw={})
180 raise cherrypy.HTTPError(405)
181
182 res = func(*args, **kw)
183 if format == 'json' or (allow_json and 'allow_json' in
cherrypy.request.params):
184 cherrypy.response.headers['Content-Type'] =
'text/javascript'
global res =
'/home/tempo/openerp-web-6.0.1/openobject/widgets/templates/jssource.mako',
func = <function create at 0x9b584fc>, args =
(<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>, {'_terp_view_type':
'form', '_terp_o2m': 'versio...: 'product.pricelist.item', '_terp_view_ids':
[]}), kw = {}
/home/tempo/openerp-web-6.0.1/addons/openerp/controllers/openo2m.py in
create(self=<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>,
params={'_terp_view_type': 'form', '_terp_o2m': 'versio...:
'product.pricelist.item', '_terp_view_ids': []}, tg_errors=None)
87 form = cherrypy.request.terp_form
88 else:
89 form = self.create_form(params, tg_errors)
90
91 return dict(form=form, params=params)
form undefined, self = <openerp.controllers.openo2m.OpenO2M object at
0xa277dcc>, self.create_form = <bound method OpenO2M.create_form of
<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>>, params =
{'_terp_view_type': 'form', '_terp_o2m': 'versio...: 'product.pricelist.item',
'_terp_view_ids': []}, tg_errors = None
/home/tempo/openerp-web-6.0.1/addons/openerp/controllers/openo2m.py in
create_form(self=<openerp.controllers.openo2m.OpenO2M object at 0xa277dcc>,
params={'_terp_view_type': 'form', '_terp_o2m': 'versio...:
'product.pricelist.item', '_terp_view_ids': []}, tg_errors=None)
49 form = tw.form_view.ViewForm(vp, name="view_form",
action="/openerp/openo2m/save")
50 cherrypy.request.terp_validators = {}
51 wid = form.screen.widget.get_widgets_by_name(params.o2m)[0]
52
53 # save view_params for later phazes
wid undefined, form = ViewForm, form.screen = Screen, form.screen.widget =
Form, form.screen.widget.get_widgets_by_name = <bound method
Form.get_widgets_by_name of Form>, params = {'_terp_view_type': 'form',
'_terp_o2m': 'versio...: 'product.pricelist.item', '_terp_view_ids': []},
params.o2m = 'version_id/items_id'
<type 'exceptions.IndexError'>: list index out of range
args = ('list index out of range',)
message = 'list index out of range'
_______________________________________________
Mailing list: https://launchpad.net/~openerp-dev-web
Post to : [email protected]
Unsubscribe : https://launchpad.net/~openerp-dev-web
More help : https://help.launchpad.net/ListHelp