Help

2

Sales Analysis error - LINE 1: ...report.id FROM "sale_report" WHERE sale_report.id IN

Avatar
Adrian Soto

When I try to open a Sales Analysis report in /Reporting/Sales Analysis Group By /salesperson/Partner or any combination in the filters I get this error.

Client Traceback (most recent call last): File "/opt/openerp/server/openerp/addons/web/http.py", line 195, in dispatch response["result"] = method(self, *self.params) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1078, in call_kw return self._call_kw(req, model, method, args, kwargs) File "/opt/openerp/server/openerp/addons/web/controllers/main.py", line 1070, 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.exception_to_unicode(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 289, in dispatch_rpc result = ExportService.getService(service_name).dispatch(method, params) File "/opt/openerp/server/openerp/service/web_services.py", line 614, in dispatch res = fn(db, uid, params) File "/opt/openerp/server/openerp/osv/osv.py", line 169, in execute_kw return self.execute(db, uid, obj, method, *args, *kw or {}) File "/opt/openerp/server/openerp/osv/osv.py", line 123, in wrapper return f(self, dbname, args, *kwargs) File "/opt/openerp/server/openerp/osv/osv.py", line 179, in execute res = self.execute_cr(cr, uid, obj, method, args, *kw) File "/opt/openerp/server/openerp/osv/osv.py", line 166, in execute_cr return getattr(object, method)(cr, uid, args, *kw) File "/opt/openerp/server/openerp/osv/orm.py", line 2690, in read_group data = self.read(cr, uid, data_ids, [groupby], context=context) File "/opt/openerp/server/openerp/osv/orm.py", line 3606, in read result = self._read_flat(cr, user, select, fields, context, load) File "/opt/openerp/server/openerp/osv/orm.py", line 3658, in _read_flat cr.execute(query, [tuple(sub_ids)] + rule_params) File "/opt/openerp/server/openerp/sql_db.py", line 162, in wrapper return f(self, args, *kwargs) File "/opt/openerp/server/openerp/sql_db.py", line 227, in execute res = self._obj.execute(query, params) ProgrammingError: operator does not exist: integer = boolean LINE 1: ...report.id FROM "sale_report" WHERE sale_report.id IN (false,... ^ HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts.

Thanks for your help,

2 Comments
Avatar
Discard
Avatar
Keyur
-

Hi Adrian. Have you done any changes in sales module or sales related changes in your custom modules? Please create a new database and install sale module & check the problem. And also make sure you have latest updates of version 7.

Avatar
Adrian Soto
-

Thanks for your quick respons Keyur, I make changes only in the reports, the module that I create I deleted but the error continue, I going to check again the reports.

3 Answers
0
Best Answer

Hello,

I was trying to accomplish the same as you when I got this error, but I found the solution.

In order to change the date_confirm attribute into a datetime field (instead of just date), we have to change the field definition in two places:


The obvious place is in the sale module's sale.py file:

    'date_confirm': fields.datetime('Confirmation Date', readonly=True, select=True, help="Date on which sales order is confirmed.", copy=False),


However, you must also change in the sale module's sale_report.py file:

    'date_confirm': fields.datetime('Date Confirm', readonly=True),


(This is obviously v7 API version, but same can be achieved easily with v8 API)

A proper inherited model would look similar to the following:

from openerp.osv import osv, fields

from datetime import datetime

class sale_order(osv.osv):

_inherit = 'sale.order'

_columns = {

'date_confirm': fields.datetime('Confirmation Date', readonly=True, select=True, help="Date on which sales order is confirmed.", copy=False),

}

class sale_report(osv.osv):

_inherit = "sale.report"

_columns = {

'date_confirm': fields.datetime('Date Confirm', readonly=True),

}

Avatar
Discard
0
Avatar
Edy Kendengis
Best Answer

Hi All

I found the cause of the same error in my custom module, below is the part that caused the error.

class sale_order(models.Model):

_inherit ='sale.order'

.......

date_confirm = fields.Datetime('Confirmation Date', readonly=True, help="Date on which sales order is payment confirmed.", copy=False)

...........

I tried to replace the official field type from the date to datetime in field date_confirm.

if I do not replace this field type, then update the sale module, everything will be normal.

I hope this can help a little solution

Avatar
Discard
0
Avatar
julien rey
Best Answer

I'm facing same issue, Did you fix it ?

1 Comment
Avatar
Discard
Avatar
julien rey
-

I have just checked into database and it seems the view sale_report doesn't exist anymore ! I have exectued an update of sale module, and now the sales analysis works fine. A quick check in the database and the view is here now ! I'm going to investigate to check which parameter/modules have dropped this view.