السلام عليكم ورحمة الله وبركاته
عندي Custom Module تعطل فجأة واحتاج معرفة السبب واصلاحه
اسم الموديول kpi_scorecard
اصدار اودو 13
الموديول يعمل في الواجهة وكل الوظائف شغالة الا اهم وظيفة وهي حساب الاجماليات Calculate
يظهر هذا الخطأ
Error:
Odoo Server Error
Traceback (most recent call last):
File "/opt/odoo/odoo13/odoo/api.py", line 748, in get
value = self._data[field][record._ids[0]]
KeyError: 2
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/odoo/odoo13/odoo/fields.py", line 1038, in __get__
value = env.cache.get(record, self)
File "/opt/odoo/odoo13/odoo/api.py", line 754, in get
raise CacheMiss(record, field)
odoo.exceptions.CacheMiss: ('res.currency(2,).symbol', None)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/opt/odoo/odoo13/odoo/http.py", line 624, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/opt/odoo/odoo13/odoo/http.py", line 310, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/opt/odoo/odoo13/odoo/tools/pycompat.py", line 14, in reraise
raise value
File "/opt/odoo/odoo13/odoo/http.py", line 669, in dispatch
result = self._call_function(**self.params)
File "/opt/odoo/odoo13/odoo/http.py", line 350, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/opt/odoo/odoo13/odoo/service/model.py", line 94, in wrapper
return f(dbname, *args, **kwargs)
File "/opt/odoo/odoo13/odoo/http.py", line 339, in checked_call
result = self.endpoint(*a, **kw)
File "/opt/odoo/odoo13/odoo/http.py", line 915, in __call__
return self.method(*args, **kw)
File "/opt/odoo/odoo13/odoo/http.py", line 515, in response_wrap
response = f(*args, **kw)
File "/opt/odoo/odoo13/addons/web/controllers/main.py", line 1342, in call_kw
return self._call_kw(model, method, args, kwargs)
File "/opt/odoo/odoo13/addons/web/controllers/main.py", line 1334, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/opt/odoo/odoo13/odoo/api.py", line 390, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/opt/odoo/odoo13/odoo/api.py", line 377, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "/opt/odoo/odoo13/addons/kpi_scorecard/models/kpi_period.py", line 205, in action_calculate_kpis
period._calculate_kpis()
File "/opt/odoo/odoo13/addons/kpi_scorecard/models/kpi_period.py", line 391, in _calculate_kpis
self._cr.commit()
File "/opt/odoo/odoo13/odoo/sql_db.py", line 173, in wrapper
return f(self, *args, **kwargs)
File "/opt/odoo/odoo13/odoo/sql_db.py", line 403, in commit
flush_env(self)
File "/opt/odoo/odoo13/odoo/sql_db.py", line 76, in flush_env
env_to_flush['base'].flush()
File "/opt/odoo/odoo13/odoo/models.py", line 5536, in flush
self.recompute()
File "/opt/odoo/odoo13/odoo/models.py", line 5978, in recompute
process(field)
File "/opt/odoo/odoo13/odoo/models.py", line 5962, in process
recs.mapped(field.name)
File "/opt/odoo/odoo13/odoo/models.py", line 5344, in mapped
recs = recs._mapped_func(operator.itemgetter(name))
File "/opt/odoo/odoo13/odoo/models.py", line 5303, in _mapped_func
vals = [func(rec) for rec in self]
File "/opt/odoo/odoo13/odoo/models.py", line 5303, in <listcomp>
vals = [func(rec) for rec in self]
File "/opt/odoo/odoo13/odoo/models.py", line 5768, in __getitem__
return self._fields[key].__get__(self, type(self))
File "/opt/odoo/odoo13/odoo/fields.py", line 1033, in __get__
self.compute_value(recs)
File "/opt/odoo/odoo13/odoo/fields.py", line 1147, in compute_value
records._compute_field_value(self)
File "/opt/odoo/odoo13/odoo/models.py", line 4020, in _compute_field_value
field.compute(self)
File "/opt/odoo/odoo13/addons/kpi_scorecard/models/kpi_scorecard_line.py", line 30, in _compute_formatted_actual_value
line.formatted_target_value = kpi_id._return_formated_appearance(
File "/opt/odoo/odoo13/addons/kpi_scorecard/models/kpi_item.py", line 612, in _return_formated_appearance
currency_symbol = currency.symbol
File "/opt/odoo/odoo13/odoo/fields.py", line 1045, in __get__
recs._fetch_field(self)
File "/opt/odoo/odoo13/odoo/models.py", line 3003, in _fetch_field
self._read(fnames)
File "/opt/odoo/odoo13/odoo/models.py", line 3075, in _read
cr.execute(query_str, params)
File "/opt/odoo/odoo13/odoo/sql_db.py", line 173, in wrapper
return f(self, *args, **kwargs)
File "/opt/odoo/odoo13/odoo/sql_db.py", line 250, in execute
res = self._obj.execute(query, params)
psycopg2.errors.InFailedSqlTransaction: current transaction is aborted, commands ignored until end of transaction block
السلام عليكم، قرأت تفاصيل المشكلة في الموديول kpi_scorecard، والخطأ واضح من الـ Traceback: المشكلة في ملف kpi_item-py (السطر 612) - النظام بيحاول يوصل لسجل عملة...
وعليكم السلام ورحمة الله وبركاته اطلعت على تفاصيل المهمة وفاهم تماما إن المطلوب مراجعة كود الـ Odoo وحل مشكلة الخطأ InFailedSqlTransaction داخل الموديول kpi_sco...