This commit is contained in:
Bertrand Chenal committed 2008-04-10 16:33:08 +02:00
commit fd591e9504
4 files changed
+27 -5

No files matched your search

+1
View File
@@ -563,6 +563,7 @@ class Function(Column):
self._fnct = fnct
self._fnct_inv = fnct_inv
self._arg = arg
self._field = ''
self._obj = ''
if 'relation' in args:
self._obj = args['relation']
+4 -2
View File
@@ -7,6 +7,7 @@ import fields
from trytond.tools import Cache
import md5
import time
import traceback
ID_MAX = 1000
@@ -75,10 +76,11 @@ class BrowseRecord(object):
return getattr(self._table, name)
else:
logger = Logger()
stack = ''.join(traceback.format_stack())
logger.notify_channel('orm', LOG_ERROR,
"Programming error: field '%s' " \
"does not exist in object '%s'!" % \
(name, self._table._name))
"does not exist in object '%s'!\n%s" % \
(name, self._table._name, stack))
return False
# if the field is a classic one or a many2one,
+21 -2
View File
@@ -7,6 +7,7 @@ import copy
import sys
from psycopg2 import IntegrityError
from trytond.tools import UpdateableDict
import traceback
MODULE_LIST = []
MODULE_CLASS_LIST = {}
@@ -61,7 +62,6 @@ class OSVService(Service):
self._sql_error[key])
self.abort_response('Integrity Error', 'warning', inst[0])
except:
import traceback
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(
sys.exc_type, sys.exc_value, sys.exc_traceback))
logger = Logger()
@@ -87,7 +87,26 @@ class OSVService(Service):
def exec_workflow_cr(self, cursor, user, object_name, method, *args):
wf_service = LocalService("workflow")
wf_service.trg_validate(user, object_name, args[0], method, cursor)
try:
wf_service.trg_validate(user, object_name, args[0], method, cursor)
except ExceptORM, inst:
self.abort_response(inst.name, 'warning', inst.value)
except ExceptOSV, inst:
self.abort_response(inst.name, inst.exc_type, inst.value)
except IntegrityError, inst:
for key in self._sql_error.keys():
if key in inst[0]:
self.abort_response('Constraint Error', 'warning',
self._sql_error[key])
self.abort_response('Integrity Error', 'warning', inst[0])
except:
tb_s = reduce(lambda x, y: x+y, traceback.format_exception(
sys.exc_type, sys.exc_value, sys.exc_traceback))
logger = Logger()
logger.notify_channel("web-services", LOG_ERROR,
'Exception in call: \n' + tb_s)
raise
return True
def exec_workflow(self, dbname, user, object_name, method, *args):
+1 -1
View File
@@ -287,7 +287,7 @@ class Report(object):
if hasattr(res, '__str__'):
res = res.__str__()
if isinstance(res, basestring):
node.nodeValue = res
node.nodeValue = res.decode('utf-8')
node.parentNode.parentNode.replaceChild(node, node.parentNode)
return res
if 'language' in localcontext: