|
|
for obj in self:
value = None
error = None
try:
if obj.min_type == "local" and is_sql_or_ddl_statement(obj.min_code):
self.env.cr.execute(obj.min_code)
dic = self.env.cr.dictfetchall()
if is_one_value(dic):
value = dic[0]["value"]
elif (
obj.min_type == "external"
and obj.min_dbsource_id.id
and is_sql_or_ddl_statement(obj.min_code)
):
dbsrc_obj = obj.min_dbsource_id
res = dbsrc_obj.execute(obj.min_code)
if is_one_value(res):
value = res[0]["value"]
elif obj.min_type == "python":
value = safe_eval(obj.min_code)
else:
value = obj.min_fixed_value
except Exception as e:
value = None
error = str(e)
obj.min_value = value
obj.min_error = error
|
|