Skip to Content
Menu
This question has been flagged
2 Replies
4663 Views

Hello

I get this error syncing to Google Calendar although it has been working well till now.

Running Odoo 10.0-20170608 (Community Edition)

Any thoughts? Thanks in advance.


Odoo Server Error

Traceback (most recent call last):

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 638, in _handle_exception

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 675, in dispatch

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 331, in _call_function

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\service\model.py", line 101, in wrapper

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 324, in checked_call

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 933, in __call__

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\http.py", line 504, in response_wrap

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\google_calendar\controllers\main.py", line 43, in sync_data

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\google_calendar\models\google_calendar.py", line 590, in synchronize_events

File "C:\Program Files (x86)\Odoo 10.0\server\odoo\addons\google_calendar\models\google_calendar.py", line 846, in update_events

AttributeError: 'UserError' object has no attribute 'code'

Avatar
Discard
Author Best Answer

Thanks for your answer but unfortunately I'm just not qualified to understand it.

And as luck would have it, the problem just went away for no apparent reason.

Sync works again without dong anything. I assumed some data changed somewhere in the calendar.

Avatar
Discard
Best Answer

Hi Mark,

in update_events function you have :

        if lastSync:
            try:
                all_event_from_google = self.get_event_synchro_dict(lastSync=lastSync)
            except urllib2.HTTPError, e:
                if e.code == 410:  # GONE, Google is lost.
                    # we need to force the rollback from this cursor, because it locks my res_users but I need to write in this tuple before to raise.
                    self.env.cr.rollback()

HTTPError is a subclass of URLError and that URLError has an attribute of 'code', but HTTPError does not have this attribute
in Python 2.7.2, it's working. You can check by typing this in your python console :

import urllib2
try:urllib2.urlopen('http://api.wordnik.com/v4/word.json/foo/examples')
except urllib2.HTTPError as exc:
    print(dir(exc))
In python 3.2 docs no longer include documentation for URLError. And the urllib2 module has been split across several modules in Python 3 named urllib.request and urllib.error Since you're working with odoo10, can you just make sure your python interpreter is exactly Python 2.7 please ? 
Thank you.
Avatar
Discard