Skip to content
Snippets Groups Projects
Commit 7da95c09 authored by jvfpw18's avatar jvfpw18
Browse files

Fix CircularReferenceError being triggered by collumns of different tables

parent 88bec489
No related branches found
No related tags found
No related merge requests found
...@@ -787,10 +787,10 @@ class DatabaseTable(Table): ...@@ -787,10 +787,10 @@ class DatabaseTable(Table):
# This variable has been evaluated already, just return # This variable has been evaluated already, just return
return self._derivatives[target] return self._derivatives[target]
if target is not None and target in recursion_list: if target is not None and str(self) + '.' + target in recursion_list:
# This is a circular reference. Don't be like that. # This is a circular reference. Don't be like that.
print(target) print(target)
raise CircularReferenceError raise CircularReferenceError(target)
original = self._protocol.original_from_target(target, year) or original original = self._protocol.original_from_target(target, year) or original
try: try:
...@@ -826,7 +826,7 @@ class DatabaseTable(Table): ...@@ -826,7 +826,7 @@ class DatabaseTable(Table):
str_list = re.findall(r'("[\w]+"|[\w]+)', original) str_list = re.findall(r'("[\w]+"|[\w]+)', original)
level = 0 level = 0
substitutions = [] substitutions = []
recursion_list.append(target) recursion_list.append(str(self) + '.' + target)
for substring in str_list: for substring in str_list:
derivative = self._derivative_recursion(substring.strip('"'), year, derivative = self._derivative_recursion(substring.strip('"'), year,
recursion_list=recursion_list) recursion_list=recursion_list)
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment