openerp-india team mailing list archive
-
openerp-india team
-
Mailing list archive
-
Message #08949
[Bug 949800] Re: res.partner base.view_partner_form throughs a python error when clicking on a contact
Hello,
there is not much I can add. In my case this behaviour is reproducable.
Just tried it with a new database with Demo data.
I install the module "base_contact"
In "Sales / Address Book / Customer" - form view. In this view one can see the details of the partner and (in the lower part) associated Contacts. When clicking on such a contact I get the error message posted in my first message.
What additional information would you need?
Thanks
--
You received this bug notification because you are a member of OpenERP
Indian Team, which is subscribed to OpenERP Addons.
https://bugs.launchpad.net/bugs/949800
Title:
res.partner base.view_partner_form throughs a python error when
clicking on a contact
Status in OpenERP Addons (modules):
Incomplete
Bug description:
Hi,
when clicking on a contact inside the "base.view_partner_form" (eg. in Sales / Customers) a window opens with a huge error message:
Python 2.6.5: /usr/bin/python
<type 'exceptions.IndexError'>
.........
System used:
OpenERP 6.0.3
WebClient
Server on Ubuntu 10.04.4 LTS
Following the complete error listing:
A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred.
/usr/local/lib/python2.6/dist-packages/CherryPy-3.1.2-py2.6.egg/cherrypy/_cprequest.py in respond(self=<cherrypy._cprequest.Request object>, 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 '/usr/local/lib/python2..../CherryPy-3.1.2-py2.6.egg/cherrypy/__init__.pyc'>, cherrypy.response = <cherrypy._ThreadLocalProxy object>, cherrypy.response.body = [], self = <cherrypy._cprequest.Request object>, self.handler = <cherrypy._cpdispatch.LateParamPageHandler object>
/usr/local/lib/python2.6/dist-packages/CherryPy-3.1.2-py2.6.egg/cherrypy/_cpdispatch.py in __call__(self=<cherrypy._cpdispatch.LateParamPageHandler object>)
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>, self.callable = <bound method Root.default of <openobject.controllers._root.Root object>>, self.args = ('openerp', 'openo2m', 'edit'), self.kwargs = {'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/openobject/tools/_expose.py in func_wrapper(*args=(<openobject.controllers._root.Root object>, 'openerp', 'openo2m', 'edit'), **kw={'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...})
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 = '/usr/local/lib/python2.6/dist-packages/openerp_w....6.egg/openobject/controllers/templates/base.mako', func = <function default>, args = (<openobject.controllers._root.Root object>, 'openerp', 'openo2m', 'edit'), kw = {'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/openobject/controllers/_root.py in default(self=<openobject.controllers._root.Root object>, *args=('openerp', 'openo2m', 'edit'), **kw={'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...})
88 request.handler = cherrypy.NotFound()
89
90 return request.handler()
91
92 def find_handler(self):
request = <cherrypy._ThreadLocalProxy object>, request.handler = <cherrypy._cpdispatch.LateParamPageHandler object>
/usr/local/lib/python2.6/dist-packages/CherryPy-3.1.2-py2.6.egg/cherrypy/_cpdispatch.py in __call__(self=<cherrypy._cpdispatch.LateParamPageHandler object>)
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>, self.callable = <function edit>, self.args = (), self.kwargs = {'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/addons/openerp/controllers/utils.py in wrapper(*args=(), **kw={'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...})
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>>, args = (), kw = {'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/openobject/tools/_expose.py in func_wrapper(*args=(<openerp.controllers.openo2m.OpenO2M object>,), **kw={'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...})
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 = '/usr/local/lib/python2.6/dist-packages/openerp_w....6.egg/openobject/controllers/templates/base.mako', func = <function edit>, args = (<openerp.controllers.openo2m.OpenO2M object>,), kw = {'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/addons/openerp/controllers/openo2m.py in edit(self=<openerp.controllers.openo2m.OpenO2M object>, **kw={'_terp_editable': '0', '_terp_o2m': 'address/job_ids', '_terp_o2m_id': '2', '_terp_o2m_model': 'res.partner.job', '_terp_parent_id': '2', '_terp_parent_model': 'res.partner.address', '_terp_parent_view_id': 'False', '_terp_view_params/_terp_context': '{}', '_terp_view_params/_terp_id': '2', '_terp_view_params/_terp_model': 'res.partner.address', ...})
150 def edit(self, **kw):
151 params, data = TinyDict.split(kw)
152 return self.create(params)
153
154 @expose('json', methods=('POST',))
self = <openerp.controllers.openo2m.OpenO2M object>, self.create = <function create>, params = {'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/addons/openerp/controllers/utils.py in wrapper(*args=({'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_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>>, args = ({'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []},), kw = {}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/openobject/tools/_expose.py in func_wrapper(*args=(<openerp.controllers.openo2m.OpenO2M object>, {'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_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 = '/usr/local/lib/python2.6/dist-packages/openerp_w....6.egg/openobject/controllers/templates/base.mako', func = <function create>, args = (<openerp.controllers.openo2m.OpenO2M object>, {'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []}), kw = {}
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/addons/openerp/controllers/openo2m.py in create(self=<openerp.controllers.openo2m.OpenO2M object>, params={'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []}, tg_errors=None)
91 form = cherrypy.request.terp_form
92 else:
93 form = self.create_form(params, tg_errors)
94
95 return dict(form=form, params=params)
form undefined, self = <openerp.controllers.openo2m.OpenO2M object>, self.create_form = <bound method OpenO2M.create_form of <openerp.controllers.openo2m.OpenO2M object>>, params = {'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []}, tg_errors = None
/usr/local/lib/python2.6/dist-packages/openerp_web-6.0.3-py2.6.egg/addons/openerp/controllers/openo2m.py in create_form(self=<openerp.controllers.openo2m.OpenO2M object>, params={'_terp_view_type': 'form', '_terp_o2m': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []}, tg_errors=None)
53 params.o2m = '.'.join(params.o2m.split('/')[-1:])
54
55 wid = form.screen.widget.get_widgets_by_name(params.o2m)[0]
56
57 # 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': 'job_id..._model': 'res.partner.job', '_terp_view_ids': []}, params.o2m = 'job_ids'
<type 'exceptions.IndexError'>: list index out of range
args = ('list index out of range',)
message = 'list index out of range'
To manage notifications about this bug go to:
https://bugs.launchpad.net/openobject-addons/+bug/949800/+subscriptions
References