I get this error message when I try to run a report in odoo 8.
Traceback (most recent call last):
File "/opt/openerp-8.0/openerp/http.py", line 530, in _handle_exception return super(JsonRequest, self)._handle_exception(exception)
File "/opt/openerp-8.0/openerp/http.py", line 567, in dispatch result = self._call_function(**self.params)
File "/opt/openerp-8.0/openerp/http.py", line 303, in _call_function return checked_call(self.db, *args, **kwargs) File "/opt/openerp-8.0/openerp/service/model.py", line 113, in wrapper return f(dbname, *args, **kwargs)
File "/opt/openerp-8.0/openerp/http.py", line 300, in checked_call return self.endpoint(*a, **kw) File "/opt/openerp-8.0/openerp/http.py", line 796, in __call__ return self.method(*args, **kw)
File "/opt/openerp-8.0/openerp/http.py", line 396, in response_wrap response = f(*args, **kw)
File "/opt/openerp-8.0/openerp/addons/web/controllers/main.py", line 939, in call_button action = self._call_kw(model, method, args, {}) File "/opt/openerp-8.0/openerp/addons/web/controllers/main.py", line 927, in _call_kw return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
File "/opt/openerp-8.0/openerp/api.py", line 241, in wrapper return old_api(self, *args, **kwargs)
File "/opt/openerp-8.0/openerp/addons/bluspiral_sche/bluspiral_sche_report_wizard.py", line 23, in print_payroll_schedule_report data = self.read(cr, uid, ids)[0]
IndexError: list index out of range
My report wizard code is
import time
from datetime import datetime
from dateutil import relativedelta
from openerp.osv import fields, osv
class ReportWizard(osv.osv_memory):
_name = 'bluspiral.sche.schedule'
_description = 'Cash Payroll Schedule'
_columns = {
'date_from': fields.date('Date From', required=True),
'date_to': fields.date('Date To', required=True),
}
_defaults = {
'date_from': lambda *a: time.strftime('%Y-%m-01'),
'date_to': lambda *a: str(datetime.now() + relativedelta.relativedelta(months=+1, day=1, days=-1))[:10],
}
def print_payroll_schedule_report(self, cr, uid, ids, context=None):
if context is None:
context = {}
data = self.read(cr, uid, ids)[0]
ids = []
if context.get('active_id',False):
ids.append(context.get('active_id',False))
datas = {
'ids': context.get('active_ids', []),
'model': 'bluspiral.report.template',
'form': self.read(cr, uid, ids, context=context)[0]
}
return self.pool['report'].get_action(
cr, uid, [], 'bluspiral_sche.cash_report', data=datas, context=context
)