Compare commits

...
5 Commits
Author SHA1 Message Date
uha4 a55774eff2 neues skript sql_dump_diff.py zum Vergleich von 2 sql-dumps.
- leere, frisch initialisierte Datenbanken der Versionen verglichen
- datasetprogramme erkennen jetzt auch suche nach standardtabellen wie uom
2026-08-22 17:45:46 +02:00
uha4 c0dd24b6c5 Proteus-Zweig: dataset.yaml-Pipeline und 5.0/8.0-Modellbaumvergleich
- create_dataset.py, compare_snapshots.py, rst_to_dataset.py: Proteus-
  Testdatensatz anlegen/vergleichen bzw. aus *.rst-Szenarien extrahieren
- create_dataset.py: Feld-Alias-Fallback (FIELD_RENAMES) für bekannte
  Umbenennungen wie stock.move.uom -> unit, bidirektional
- merge_dedup_rsts.py: Extrahierte YAMLs pro Version zusammenführen,
  versionsinterne Duplikate entfernen, abhängigkeitskorrekt sortieren
- extract_model_tree.py: Modellbaum (Modelle/Felder) statisch aus dem
  Tryton-Quellcode ziehen, für 5.0 und 8.0
- model_diff.py, model_coverage.py: 5.0<->8.0-Modelländerungen finden und
  gegen die aktuelle Testdatenabdeckung abgleichen, priorisiert nach
  tatsächlicher Änderung
- reports/*_merged.yaml: Extraktionsergebnisse für die aktiven
  Module (rohe *.rst-Quellen bewusst nicht mitversioniert)
- Ordner doc ergänzt
2026-08-22 10:52:13 +02:00
uha4 b549063ff6 Dedublizierung gefixt
- lange existierender Updatecode wurde in jeder 2. Version angezeigt
- UPDATEANALYSE.md ergänzt.
2026-08-20 13:27:23 +02:00
uha4 5d227d2f61 Ausertung von schleifen und Helperfunktionen ergänzt in extract.py 2026-08-09 20:56:24 +02:00
uha4 5f11c77ddf rewritten for readability by Claude 2026-08-09 14:13:21 +02:00
181 changed files with 150450 additions and 2543 deletions
+6
View File
@@ -179,3 +179,9 @@ cython_debug/
# PyPI configuration file # PyPI configuration file
.pypirc .pypirc
# Ignore all dotfiles/dotfolders in the home dir (credentials, tool state, etc.)
.*
# rsts sind nur ein zwischenschritt für Testdaten. 1. reproduzierbar, 2. nur kurzfristig nötig
rsts/
+23 -2
View File
@@ -1,3 +1,24 @@
# tryton-db-migration # Datenbankmigration von 5.0 auf 8.0
Ziel: verstehen, wie sich das Datenbankschema der aktiven Tryton-Module
über die Versionen 5.0 bis 8.0 verändert, als Vorbereitung für die
eigentliche Migration. Zwei sich ergänzende Ansätze:
- **[doc/UPDATEANALYSE.md](doc/UPDATEANALYSE.md)** – Codeanalyse des
Updatemechanismus: statischer Scan der `__register__`-Methoden aller
Module über alle Versions-Branches hinweg. _(fertig)_
- **[doc/TESTDATEN.md](doc/TESTDATEN.md)** – Unterschiede im Zustand
erkennen, nachdem in zwei frisch installierten Versionen dieselben
Testdaten per Proteus angelegt wurden (Snapshot- und später
SQL-Dump-Vergleich). _(in Arbeit - siehe Stand im Dokument)_
- dazu als Vorarbeit: **[doc/MODELLVERGLEICH.md](doc/MODELLVERGLEICH.md)**
– welche Modelle/Felder gibt es je Version überhaupt, und wo hat sich
zwischen 5.0 und 8.0 tatsächlich etwas geändert (steuert, wo sich
Testdaten-Aufwand lohnt).
Eigene, von den Standardmodulen abweichende Module (`production`,
`stock_product_location`, `stock_split`, `stock_lot_sequence`) sind
bewusst noch nicht Teil dieser Analyse - erst wenn die Standardmodule
migrierbar sind, werden diese auf 8.0 portiert und die Testdaten-Pipeline
darauf erweitert.
skripte und Dokumentation zur Datenbankmigration bei tryton
-173
View File
@@ -1,173 +0,0 @@
#!/usr/bin/env python3
import json
from pathlib import Path
DATA = Path("data")
REPORTS = Path("reports")
def versions():
return sorted(
[d for d in DATA.iterdir() if d.is_dir()],
key=lambda p: [int(x) for x in p.name.split(".")]
)
def modules():
first = versions()[0]
return sorted(f.stem for f in first.glob("*.json"))
class Module(object):
def __init__(self, module):
self.name = module
self.versionen = {}
self.classes = {}
self.operations = []
def read_data(self):
for version in versions():
vers = version.name
self.versionen[vers] = {}
infile = version / f"{self.name}.json"
if not infile.exists():
continue
data = json.loads(infile.read_text())
for f in data["files"]:
f['version'] = vers
file = f['file']
classe = f.get('class', 'ohne')
method = f.get('method', 'ohne')
if classe not in self.versionen[vers]:
self.versionen[vers][classe] = []
self.versionen[vers][classe].append(f)
try:
if vers not in self.classes[classe]:
self.classes[classe][vers] = []
except KeyError:
self.classes[classe] = {}
self.classes[classe][vers] = []
self.classes[classe][vers].append(f)
for o in f['operations']:
o['class'] = classe
o['method'] = method
o['file'] = file
o['version'] = vers
self.operations.append(o)
def operation_key(self, operation):
# kwargs are intentionally ignored for now.
# The key is only used to collapse repeated migration blocks;
# it is not intended to establish semantic equality.
return (
operation.get("phase"),
operation.get("operation"),
operation.get("object"),
tuple(operation.get("args", [])),
operation.get("condition"),
)
def block_key(self, operations):
return tuple(self.operation_key(op) for op in operations)
def write_data(self):
outfile = REPORTS / f"{self.name}.md"
with outfile.open("w", encoding="utf8") as out:
out.write(f"# {self.name}\n\n")
# iterate all classes
for c in sorted(self.classes):
classe = self.classes[c]
out.write(f"## Klasse {c}\n\n")
last_blocks = None
# iterate all Versions
for k in sorted(classe.keys()):
v = classe.get(k, None)
if not v:
continue
if last_blocks == None:
last_blocks = len(v) * [None,]
new_version = k
# iterate all files / occureces
for i, m in enumerate(v):
# repeating?
key = self.block_key(m["operations"])
old_block = last_blocks[i]
if key == old_block:
continue
elif old_block and key[:len(old_block)] == old_block:
m["operations"] = m['operations'][len(old_block):]
last_blocks[i] = key
if new_version:
out.write("\n")
out.write(f"### {new_version}\n\n")
new_version = None
out.write(f"file: {m['file']} : {m['line']}\n")
for op in m["operations"]:
out.write(
f"- **{op['phase']}** "
f"`{op['operation']}`\n"
)
if "condition" in op:
out.write(
f" - condition: `{op['condition']}`\n"
)
if op["object"]:
out.write(
f" - object: `{op['object']}`\n"
)
if op["args"]:
out.write(
f" - args: `{', '.join(op['args'])}`\n"
)
if op["kwargs"]:
out.write(" - kwargs:\n")
for k, v in op["kwargs"].items():
out.write(
f" - {k}: `{v}`\n"
)
out.write("\n")
def main():
REPORTS.mkdir(exist_ok=True)
for module in modules():
print(module)
mod = Module(module)
mod.read_data()
mod.write_data()
if __name__ == "__main__":
main()
+124
View File
@@ -0,0 +1,124 @@
#!/usr/bin/env python3
"""
compare_snapshots.py
Vergleicht zwei mit create_dataset.py erzeugte Snapshots (z. B. aus
Version 6.8 und 7.0, jeweils mit derselben dataset.yaml erzeugt) und
markiert:
- status_changed: Datensatz ist in einer Version fehlgeschlagen, in der
anderen nicht -> Kandidat für Format-/
Constraint-/Pflichtfeld-Änderung
- value_changed: gespeicherter Wert unterscheidet sich zwischen den
Versionen, obwohl derselbe Eingabewert verwendet
wurde -> Kandidat für automatische Reformatierung
- missing_record: Datensatz-Key nur in einem der beiden Snapshots
vorhanden (z. B. weil er in dataset.yaml erst später
ergänzt wurde)
Nutzung:
python3 compare_snapshots.py snapshot_68.json snapshot_70.json \\
--label-a 6.8 --label-b 7.0
Weiter geht's dann typischerweise so: Modellname aus einem Fund hier
nehmen, den zugehörigen Tabellennamen bilden (Punkte durch Unterstriche
ersetzen, wie es extract_updates.py auch tut) und in den AST-Analyse-Ergebnissen
danach filtern:
jq '.files[].operations[] | select(.tables[]? == "party_identifier")' \\
data/7.0/party.json
"""
import argparse
import json
def load(path):
return json.load(open(path, encoding="utf-8"))
def index_by_key(snapshot):
return {r["key"]: r for r in snapshot["results"]}
def compare(snap_a, snap_b, label_a, label_b):
a = index_by_key(snap_a)
b = index_by_key(snap_b)
findings = []
for key in sorted(set(a) | set(b)):
ra, rb = a.get(key), b.get(key)
if ra is None or rb is None:
findings.append({
"key": key,
"kind": "missing_record",
"detail": f"nur in {label_b if ra is None else label_a} vorhanden",
})
continue
if ra["status"] != rb["status"]:
findings.append({
"key": key,
"model": ra["model"],
"kind": "status_changed",
"detail": (
f"{label_a}: {ra['status']} ({ra.get('error')}) | "
f"{label_b}: {rb['status']} ({rb.get('error')})"
),
})
continue
if ra["status"] == "error":
continue # beide fehlgeschlagen - nichts auf Feldebene zu vergleichen
fields_a, fields_b = ra["stored"], rb["stored"]
for field in sorted(set(fields_a) | set(fields_b)):
va = fields_a.get(field, "<fehlt>")
vb = fields_b.get(field, "<fehlt>")
if va != vb:
findings.append({
"key": key,
"model": ra["model"],
"field": field,
"kind": "value_changed",
"detail": f"{label_a}={va!r} | {label_b}={vb!r}",
})
return findings
def main():
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("snapshot_a")
parser.add_argument("snapshot_b")
parser.add_argument("--label-a", default="A")
parser.add_argument("--label-b", default="B")
args = parser.parse_args()
findings = compare(
load(args.snapshot_a), load(args.snapshot_b), args.label_a, args.label_b
)
if not findings:
print("Keine Unterschiede gefunden.")
return
by_model = {}
for f in findings:
by_model.setdefault(f.get("model", "(kein Modell)"), []).append(f)
for model, items in sorted(by_model.items()):
if model == "(kein Modell)":
print(f"\n=== {model} - {len(items)} Fund(e) ===")
else:
table = model.replace(".", "_")
print(f"\n=== {model} (Tabelle vermutlich: {table}) - {len(items)} Fund(e) ===")
for item in items:
field_suffix = f".{item['field']}" if "field" in item else ""
print(f" [{item['kind']}] {item['key']}{field_suffix}: {item['detail']}")
if __name__ == "__main__":
main()
+207
View File
@@ -0,0 +1,207 @@
#!/usr/bin/env python3
import json
from pathlib import Path
from collections import OrderedDict
DATA = Path("data")
REPORTS = Path("reports/updateChanges")
VERSION_DIRS = sorted(
[d for d in DATA.iterdir() if d.is_dir()],
key=lambda p: [int(x) for x in p.name.split(".")]
)
VERSIONS = [v.name for v in VERSION_DIRS]
def modules():
first = VERSION_DIRS[0]
return sorted(f.stem for f in first.glob("*.json"))
class Operation(object):
def __init__(self, data, source):
self.condition = None
self.via = None
self.unresolved = False
self.__dict__.update(data)
self.sources = [source,]
self.tables_unknown = not self.tables
if not self.tables:
self.tables = ('unknown',)
def toText(self):
marker = "unresolved " if self.unresolved else ""
text = [f"- **{self.phase}** {marker}`{self.operation}`"]
if self.condition:
text.append( f" - condition: `{self.condition}`")
if self.object:
text.append( f" - object: `{self.object}`" )
if self.via:
chain = " -> ".join(f"{v['method']} (Zeile {v['line']})" for v in self.via)
text.append( f" - via: {chain}" )
if self.tables_unknown:
text.append(" - Tabelle nicht erkannt!")
text.append( " - files:" )
for s in self.sources:
text.append( f" - `{s['file']}`" )
if self.args:
text.append( f" - args: `{', '.join(self.args)}`" )
if self.kwargs:
text.append(" - kwargs:")
for k, v in self.kwargs.items():
text.append( f" - {k}: `{v}`" )
if self.code:
text.append(" - code:")
text.append(f" '{self.code}'")
text.append('')
return '\n'.join(text)
@property
def key(self):
# kwargs are intentionally ignored for now.
# The key is only used to collapse repeated migration blocks;
# it is not intended to establish semantic equality.
return ( self.phase, self.operation, self.object,
tuple(self.tables), tuple(self.args), self.code, )
class Table:
_allTables = {}
@classmethod
def get(cls, name):
if name not in cls._allTables:
cls._allTables[name] = cls(name)
return cls._allTables[name]
@classmethod
def addObject(cls, obj):
new = False
for t in obj.tables:
if cls.get(t).add(obj):
new = True
return new
def __init__(self, name):
self.versions = {key: {} for key in VERSIONS} # was angezeigt wird
# _current_presence: der TATSÄCHLICHE, vollständige Operationsbestand
# der Version, die wir gerade verarbeiten (unabhängig davon, ob wir
# sie anzeigen). _prev_presence: derselbe vollständige Bestand der
# UNMITTELBAR VORHERIGEN Version. Nur dieser Vergleich (nicht ein
# kumulatives "jemals gesehen") ist korrekt: taucht ein Block in
# einer Zwischenversion NICHT auf (weil er dort entfernt/ersetzt
# wurde) und kommt später identisch zurück, muss er wieder als neu
# gelten - auch wenn exakt derselbe Code schon vor langer Zeit
# existierte.
self._current_version = None
self._current_presence = {}
self._prev_presence = {}
def _advance_to(self, version):
if version == self._current_version:
return
if self._current_version is not None:
self._prev_presence = self._current_presence
self._current_version = version
self._current_presence = {}
def add(self, obj):
self._advance_to(obj.version)
key = obj.key
already_in_this_version = key in self._current_presence
self._current_presence[key] = obj # immer im tatsächlichen Bestand vermerken
if already_in_this_version:
return None # exakt dieselbe Operation kam mehrfach in DIESER Version vor
if key in self._prev_presence:
return None # unverändert gegenüber der unmittelbar vorherigen Version
self.versions[obj.version][key] = obj
return obj
class Module(object):
def __init__(self, module):
self.name = module
self.tables = {}
self.operations = []
def read_data(self):
for version in VERSION_DIRS:
vers = version.name
infile = version / f"{self.name}.json"
if not infile.exists():
continue
data = json.loads(infile.read_text())
for f in data["files"]:
f['version'] = vers
for o in f['operations']:
source = {'module': f['module'],
'file': f['file'],
'class': f['class'],
'method': f['method'],
'line': f['line']}
op = Operation(o, source)
op.version = vers
if Table.addObject(op):
for t in op.tables:
if t not in self.tables:
self.tables[t] = Table.get(t)
def write_data(self):
outfile = REPORTS / f"{self.name}.md"
with outfile.open("w", encoding="utf8") as out:
out.write(f"# modul {self.name}\n\n")
# iterate all tables
for t in sorted(self.tables):
table = self.tables[t]
out.write(f"\n## Tabelle {t}\n")
# iterate all Versions
for tName, ops in sorted(table.versions.items()):
if not ops:
continue
new_version = tName
# iterate all files / occureces
for op in ops.values():
if new_version:
out.write("\n")
out.write(f"### {new_version}\n\n")
new_version = None
out.write(op.toText())
out.write("\n")
def main():
REPORTS.mkdir(exist_ok=True)
for module in modules():
print(module)
mod = Module(module)
mod.read_data()
mod.write_data()
if __name__ == "__main__":
main()
+310
View File
@@ -0,0 +1,310 @@
#!/usr/bin/env python3
"""
create_dataset.py
Legt über Proteus einen deklarativ definierten, reproduzierbaren
Testdatensatz an und liest ihn danach FRISCH VOM SERVER zurück (nicht aus
dem lokalen Proteus-Cache) - damit automatische Reformatierung durch die
Zielversion sichtbar wird. Ergebnis wird als JSON-Snapshot gespeichert.
Gedacht, um dieselbe dataset.yaml gegen zwei Tryton-Versionen laufen zu
lassen (zwei getrennte, frisch installierte Datenbanken) und die beiden
Snapshots danach mit compare_snapshots.py zu vergleichen.
Nutzung:
python3 create_dataset.py --config dataset.yaml \\
--database mydb_68 --output snapshot_68.json
python3 create_dataset.py --config dataset.yaml \\
--database mydb_70 --output snapshot_70.json
python3 compare_snapshots.py snapshot_68.json snapshot_70.json \\
--label-a 6.8 --label-b 7.0
WICHTIG: Dieses Skript wurde nicht gegen einen echten Tryton-Server
getestet (dafür fehlt hier die Umgebung) - nur auf Syntax geprüft. Bitte
bei dir gegenlesen, insbesondere proteus_config.set_trytond(...) an eure
tatsächliche Verbindungsart anpassen (lokal via Unix-Socket/Config-Datei
oder per XML-RPC/JSON-RPC über Netzwerk - die Proteus-API unterscheidet
sich da je nach Version leicht).
Feld-Umbenennungen (FIELD_RENAMES):
Da dieselbe dataset.yaml gegen mehrere Versionen laufen soll, aber Felder
zwischen Versionen umbenannt werden können (bestätigt: stock.move.uom ->
stock.move.unit zwischen 5.0 und 8.0), wird pro Modell zuerst geprüft, ob
der im YAML angegebene Feldname auf dem jeweiligen Server tatsächlich
existiert (via fields_get()). Falls nicht, aber ein bekannter Alias aus
FIELD_RENAMES existiert UND der Alias-Name dort existiert, wird der Alias
verwendet - der Datensatz landet dann inhaltlich identisch in beiden
Datenbanken, nur eben unter dem jeweils richtigen Feldnamen. Im
JSON-Snapshot ("stored") wird trotzdem immer der ORIGINALE YAML-Feldname
als Key verwendet, damit compare_snapshots.py die Werte über beide
Versionen hinweg unter demselben Key vergleicht.
Ein wirklich unbekanntes Feld (kein Treffer in FIELD_RENAMES, oder Alias
existiert dort ebenfalls nicht) wird NICHT stillschweigend übergangen,
sondern lässt den Record ganz normal mit AttributeError fehlschlagen -
das ist ja gerade das gesuchte Signal für eine echte Schema-Änderung.
"""
import argparse
import decimal
import datetime
import json
import sys
import traceback
from pathlib import Path
try:
import yaml
except ImportError:
yaml = None
from proteus import Model, config as proteus_config
# Bekannte Feld-Umbenennungen zwischen Tryton-Versionen: Modell -> {einer
# der beiden Feldnamen: der jeweils andere}. Nur eine Richtung eintragen
# (z. B. die 5.0->8.0-Richtung) - _bidirectional_field_renames() ergänzt
# die Rückrichtung automatisch, damit die Auflösung unabhängig davon
# funktioniert, mit welcher Version die dataset.yaml ursprünglich gebaut
# wurde. Bei Bedarf ergänzen, sobald ein compare_snapshots.py-Lauf einen
# weiteren Fall aufdeckt.
FIELD_RENAMES = {
"stock.move": {"uom": "unit"},
}
def _bidirectional_field_renames(field_renames):
result = {}
for model_name, renames in field_renames.items():
both = dict(renames)
both.update({new: old for old, new in renames.items()})
result[model_name] = both
return result
BIDIRECTIONAL_FIELD_RENAMES = _bidirectional_field_renames(FIELD_RENAMES)
def resolve_field_name(RecordModel, model_name, field_name, fields_cache):
"""Liefert den auf DIESEM Server tatsächlich existierenden Feldnamen.
Existiert field_name direkt (fields_get()), wird er unverändert
zurückgegeben. Sonst wird in FIELD_RENAMES nachgeschaut (in beide
Richtungen), ob ein bekannter Alias existiert UND auf diesem Server
tatsächlich vorhanden ist. Andernfalls bleibt field_name unverändert,
damit ein wirklich unbekanntes Feld weiterhin als Fehler auffällt.
"""
if model_name not in fields_cache:
try:
fields_cache[model_name] = set(RecordModel.fields_get().keys())
except Exception:
fields_cache[model_name] = None # unbekannt - keine Alias-Auflösung möglich
available = fields_cache[model_name]
if available is None or field_name in available:
return field_name
alias = BIDIRECTIONAL_FIELD_RENAMES.get(model_name, {}).get(field_name)
if alias and alias in available:
return alias
return field_name
def load_spec(path):
text = Path(path).read_text(encoding="utf-8")
if path.endswith((".yaml", ".yml")):
if yaml is None:
raise RuntimeError(
"PyYAML nicht installiert (pip install pyyaml) - "
"oder --config auf eine .json-Datei zeigen lassen."
)
return yaml.safe_load(text)
return json.loads(text)
def resolve_value(value, created, search_cache):
"""
Löst Referenzen der Form {"$ref": "irgendein_key"} auf bereits in
diesem Lauf erzeugte Datensätze auf (z. B. um eine Adresse mit der
vorher angelegten Party zu verknüpfen). Referenzen können nur auf
Records verweisen, die im YAML VOR der aktuellen Stelle stehen.
Versteht außerdem die von rst_to_dataset.py erzeugten Marker für
Werte, die kein einfacher JSON-Typ sind:
{"$decimal": "12.34"} -> decimal.Decimal("12.34")
{"$date": "2024-01-15"} -> datetime.date(2024, 1, 15)
{"$search": {"model": "product.uom",
"domain": [["name", "=", "Unit"]]}}
-> sucht den Record live auf dem
Zielserver (Model.find(domain)) -
für Stammdaten, die nicht Teil des
Testdatensatzes sind, sondern beim
Modul-Aktivieren per XML-Fixture
angelegt werden (Länder, Währungen,
Einheiten, Standard-Lagerorte, ...).
Wirft einen Fehler, wenn nichts
gefunden wird, statt einen neuen
Record anzulegen - ein fehlender
Treffer bedeutet meist, dass sich
die Fixture-Daten zwischen den
Versionen geändert haben.
{"$manual": "<ausdruck>"} -> Fehler mit Klartext, da diese
Stelle noch von Hand ausgefüllt
werden muss.
"""
if isinstance(value, dict) and "$ref" in value:
if value["$ref"] not in created:
raise KeyError(
f"Referenz '{value['$ref']}' unbekannt - Datensatz mit "
f"diesem key wurde noch nicht angelegt oder ist "
f"fehlgeschlagen."
)
return created[value["$ref"]]
if isinstance(value, dict) and "$search" in value:
spec = value["$search"]
cache_key = (spec["model"], json.dumps(spec["domain"], sort_keys=True))
if cache_key not in search_cache:
matches = Model.get(spec["model"]).find(spec["domain"])
if not matches:
raise ValueError(
f"$search fand keinen Treffer: model={spec['model']!r} "
f"domain={spec['domain']!r} - Stammdaten auf diesem "
f"Server geändert/entfernt?"
)
search_cache[cache_key] = matches[0].id
return search_cache[cache_key]
if isinstance(value, dict) and "$decimal" in value:
return decimal.Decimal(value["$decimal"])
if isinstance(value, dict) and "$date" in value:
return datetime.date.fromisoformat(value["$date"])
if isinstance(value, dict) and "$manual" in value:
raise ValueError(
f"Nicht ausgefüllter $manual-Wert: {value['$manual']!r} - "
f"bitte im YAML durch einen echten Wert ersetzen, bevor "
f"dieser Datensatz angelegt wird."
)
if isinstance(value, list):
return [resolve_value(v, created, search_cache) for v in value]
if isinstance(value, dict):
return {k: resolve_value(v, created, search_cache) for k, v in value.items()}
return value
def serialize(value):
"""Proteus-/Tryton-Werte in eine JSON-taugliche, vergleichbare Form bringen."""
if value is None:
return None
if hasattr(value, "id") and hasattr(value, "__class__"):
# Verknüpfter Record (Many2One o. ä.) - Modellname + id vergleichen,
# nicht das Objekt selbst.
return {
"__record__": getattr(value, "__class__").__name__,
"id": value.id,
}
if isinstance(value, (list, tuple)):
return [serialize(v) for v in value]
try:
json.dumps(value)
return value
except TypeError:
# Decimal, date, datetime, etc. - als String vergleichen
return str(value)
def create_records(spec, created, results):
fields_cache = {} # model_name -> Set der auf DIESEM Server bekannten Felder
search_cache = {} # (model, domain-json) -> id, damit dieselbe Stammdaten-Suche nicht mehrfach läuft
for entry in spec["records"]:
key = entry["key"]
model_name = entry["model"]
fields = entry.get("fields", {})
record_result = {
"key": key,
"model": model_name,
"status": "ok",
"error": None,
"stored": {},
}
try:
RecordModel = Model.get(model_name)
record = RecordModel()
# actual_name je YAML-Feldname merken: fürs Zurücklesen unten
# brauchen wir denselben (ggf. per Alias aufgelösten) Namen,
# im Snapshot aber weiterhin den originalen YAML-Namen als Key.
actual_names = {}
for field_name, raw_value in fields.items():
actual_name = resolve_field_name(RecordModel, model_name, field_name, fields_cache)
actual_names[field_name] = actual_name
setattr(record, actual_name, resolve_value(raw_value, created, search_cache))
record.save()
created[key] = record.id
# Bewusst NEU vom Server laden statt das lokale Proteus-Objekt
# weiterzuverwenden - das lokale Objekt kann noch den Wert
# zeigen, den WIR gesetzt haben, nicht den, den der Server
# tatsächlich abgespeichert (und ggf. reformatiert) hat.
reloaded = RecordModel(record.id)
for field_name in fields:
try:
record_result["stored"][field_name] = serialize(
getattr(reloaded, actual_names[field_name])
)
except Exception as e:
record_result["stored"][field_name] = f"<Lesefehler: {e}>"
except Exception as e:
record_result["status"] = "error"
record_result["error"] = f"{type(e).__name__}: {e}"
record_result["traceback"] = traceback.format_exc()
results.append(record_result)
def main():
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument("--config", required=True, help="Pfad zur dataset.yaml/json")
parser.add_argument("--database", required=True, help="Name der Tryton-Datenbank")
parser.add_argument(
"--config-file", default=None,
help="Pfad zu trytond.conf, falls nicht der Standardpfad verwendet wird",
)
parser.add_argument("--output", required=True, help="Wohin der JSON-Snapshot geschrieben wird")
args = parser.parse_args()
# ACHTUNG: set_trytond() ist die lokale Variante (Proteus + trytond im
# selben Prozess/Server, kein separater Client-Server-Aufbau). Läuft
# euer trytond als eigener Prozess, braucht ihr stattdessen
# proteus_config.set_xmlrpc(url) mit einer URL wie
# "http://admin:PASSWORT@localhost:8000/mydb_68/".
proteus_config.set_trytond(database=args.database, config_file=args.config_file)
spec = load_spec(args.config)
created = {}
results = []
create_records(spec, created, results)
snapshot = {"database": args.database, "results": results}
Path(args.output).write_text(
json.dumps(snapshot, indent=2, ensure_ascii=False), encoding="utf-8"
)
ok = sum(1 for r in results if r["status"] == "ok")
err = sum(1 for r in results if r["status"] == "error")
print(f"{ok} Datensätze ok, {err} Fehler -> {args.output}")
if err:
print("Fehlgeschlagene Datensätze:")
for r in results:
if r["status"] == "error":
print(f" - {r['key']} ({r['model']}): {r['error']}")
if __name__ == "__main__":
sys.exit(main())
+162 -1
View File
@@ -1,5 +1,166 @@
{ {
"version": "5.0", "version": "5.0",
"module": "company", "module": "company",
"files": [] "files": [
{
"module": "company",
"file": "party.py",
"class": "PartyConfigurationLang",
"method": "__register__",
"line": 22,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 23,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 24,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 27,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 33,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
}
]
},
{
"module": "company",
"file": "party.py",
"class": "PartyLang",
"method": "__register__",
"line": 46,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 47,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 48,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 51,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 62,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 57
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 62,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 57
}
]
}
]
}
]
} }
+26 -1
View File
@@ -1,5 +1,30 @@
{ {
"version": "5.0", "version": "5.0",
"module": "currency", "module": "currency",
"files": [] "files": [
{
"module": "currency",
"file": "currency.py",
"class": "Currency",
"method": "__register__",
"line": 55,
"operations": [
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 64,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
}
]
}
]
} }
+381
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 499, "line": 499,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 502,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 503,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 694, "line": 694,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 695,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 695,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -170,6 +214,28 @@
"method": "__register__", "method": "__register__",
"line": 60, "line": 60,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -236,6 +302,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -289,6 +385,28 @@
"method": "__register__", "method": "__register__",
"line": 1100, "line": 1100,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1101,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1101,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -329,6 +447,67 @@
"method": "__register__", "method": "__register__",
"line": 102, "line": 102,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 103,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 105,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 108,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 108,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 113,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -421,6 +600,56 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 137,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
}
]
},
{
"module": "ir",
"file": "module.py",
"class": "ModuleDependency",
"method": "__register__",
"line": 362,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 363,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 368,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
} }
] ]
}, },
@@ -431,6 +660,67 @@
"method": "__register__", "method": "__register__",
"line": 401, "line": 401,
"operations": [ "operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 402,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 403,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 403,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 404,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 411,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -519,6 +809,28 @@
"method": "__register__", "method": "__register__",
"line": 99, "line": 99,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 100,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -574,6 +886,28 @@
"method": "__register__", "method": "__register__",
"line": 74, "line": 74,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 75,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 75,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -607,6 +941,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 88,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 89,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 89,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
+290
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 61, "line": 61,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 62,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 62,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 71,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 72,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 73,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 73,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -80,6 +162,66 @@
} }
] ]
}, },
{
"module": "party",
"file": "configuration.py",
"class": "_ConfigurationValue",
"method": "__register__",
"line": 42,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 43,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 44,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 55,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 49
}
]
}
]
},
{ {
"module": "party", "module": "party",
"file": "party.py", "file": "party.py",
@@ -111,6 +253,65 @@
"method": "__register__", "method": "__register__",
"line": 265, "line": 265,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 266,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 268,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 269,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 269,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 270,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "insert", "operation": "insert",
@@ -171,6 +372,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 291,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 285
}
]
} }
] ]
}, },
@@ -181,6 +408,39 @@
"method": "__register__", "method": "__register__",
"line": 329, "line": 329,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 330,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 332,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 332,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -215,6 +475,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "cls",
"tables": [],
"line": 353,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 354,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+395
View File
@@ -2,6 +2,127 @@
"version": "5.0", "version": "5.0",
"module": "product", "module": "product",
"files": [ "files": [
{
"module": "product",
"file": "configuration.py",
"class": "ConfigurationDefaultCostPriceMethod",
"method": "__register__",
"line": 43,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 44,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 45,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 57,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 51
}
]
}
]
},
{
"module": "product",
"file": "product.py",
"class": "ProductListPrice",
"method": "__register__",
"line": 346,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 347,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 348,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 360,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 353
}
]
}
]
},
{ {
"module": "product", "module": "product",
"file": "product.py", "file": "product.py",
@@ -9,6 +130,119 @@
"method": "__register__", "method": "__register__",
"line": 374, "line": 374,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 375,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 377,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 380,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 380,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 382,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 383,
"args": [
"ProductCostPrice._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(ProductCostPrice._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 406,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 389
}
]
},
{
"object": "",
"operation": "TableHandler",
"tables": [],
"line": 391,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "(backend.get('TableHandler'))(ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -42,6 +276,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 397,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -56,6 +305,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 399,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -66,6 +330,65 @@
"method": "__register__", "method": "__register__",
"line": 429, "line": 429,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 430,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 432,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 435,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 435,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 437,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "add_column", "operation": "add_column",
@@ -82,6 +405,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 471,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 445
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -113,6 +462,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 452,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -128,6 +492,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 454,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 457,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -2,6 +2,66 @@
"version": "5.0", "version": "5.0",
"module": "production", "module": "production",
"files": [ "files": [
{
"module": "production",
"file": "configuration.py",
"class": "ConfigurationProductionSequence",
"method": "__register__",
"line": 45,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 46,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 47,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 59,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 52
}
]
}
]
},
{ {
"module": "production", "module": "production",
"file": "production.py", "file": "production.py",
@@ -25,6 +85,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 235,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 235,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 200, "line": 200,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 201,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 201,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 208,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 208,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 209,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 209,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+162 -1
View File
@@ -1,5 +1,166 @@
{ {
"version": "5.2", "version": "5.2",
"module": "company", "module": "company",
"files": [] "files": [
{
"module": "company",
"file": "party.py",
"class": "PartyConfigurationLang",
"method": "__register__",
"line": 22,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 23,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 24,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 27,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 33,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
}
]
},
{
"module": "company",
"file": "party.py",
"class": "PartyLang",
"method": "__register__",
"line": 46,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 47,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 48,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 51,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 62,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 57
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 62,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 57
}
]
}
]
}
]
} }
+26 -1
View File
@@ -1,5 +1,30 @@
{ {
"version": "5.2", "version": "5.2",
"module": "currency", "module": "currency",
"files": [] "files": [
{
"module": "currency",
"file": "currency.py",
"class": "Currency",
"method": "__register__",
"line": 53,
"operations": [
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 62,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
}
]
}
]
} }
+395
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 529, "line": 529,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 532,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 533,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 729, "line": 729,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 730,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 730,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 60, "line": 60,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 66, "line": 66,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 74,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -361,6 +471,28 @@
"method": "__register__", "method": "__register__",
"line": 1135, "line": 1135,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1136,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1136,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -417,6 +549,67 @@
"method": "__register__", "method": "__register__",
"line": 103, "line": 103,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 104,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 106,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 109,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 109,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 114,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -509,6 +702,56 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 138,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
}
]
},
{
"module": "ir",
"file": "module.py",
"class": "ModuleDependency",
"method": "__register__",
"line": 363,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 364,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 369,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
} }
] ]
}, },
@@ -519,6 +762,67 @@
"method": "__register__", "method": "__register__",
"line": 396, "line": 396,
"operations": [ "operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 397,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 398,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 398,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 399,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 406,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -622,6 +926,28 @@
"method": "__register__", "method": "__register__",
"line": 85, "line": 85,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 86,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 87,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -707,6 +1033,28 @@
"method": "__register__", "method": "__register__",
"line": 76, "line": 76,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 77,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 77,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -740,6 +1088,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 90,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 91,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 91,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
+319
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 66, "line": 66,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 67,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 67,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 77,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 78,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 78,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -80,6 +162,66 @@
} }
] ]
}, },
{
"module": "party",
"file": "configuration.py",
"class": "_ConfigurationValue",
"method": "__register__",
"line": 42,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 43,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 44,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 55,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 49
}
]
}
]
},
{ {
"module": "party", "module": "party",
"file": "party.py", "file": "party.py",
@@ -111,6 +253,65 @@
"method": "__register__", "method": "__register__",
"line": 278, "line": 278,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 279,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 281,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 282,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 282,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 283,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "insert", "operation": "insert",
@@ -171,6 +372,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 304,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 298
}
]
} }
] ]
}, },
@@ -181,6 +408,39 @@
"method": "__register__", "method": "__register__",
"line": 439, "line": 439,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 440,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 442,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 442,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -215,6 +475,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 460,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 460,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 466,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 467,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+395
View File
@@ -2,6 +2,127 @@
"version": "5.2", "version": "5.2",
"module": "product", "module": "product",
"files": [ "files": [
{
"module": "product",
"file": "configuration.py",
"class": "ConfigurationDefaultCostPriceMethod",
"method": "__register__",
"line": 43,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 44,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 45,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 57,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 51
}
]
}
]
},
{
"module": "product",
"file": "product.py",
"class": "ProductListPrice",
"method": "__register__",
"line": 354,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 355,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 356,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 368,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 361
}
]
}
]
},
{ {
"module": "product", "module": "product",
"file": "product.py", "file": "product.py",
@@ -9,6 +130,119 @@
"method": "__register__", "method": "__register__",
"line": 382, "line": 382,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 383,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 385,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 388,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 388,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 390,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 391,
"args": [
"ProductCostPrice._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(ProductCostPrice._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 414,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 397
}
]
},
{
"object": "",
"operation": "TableHandler",
"tables": [],
"line": 399,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "(backend.get('TableHandler'))(ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -42,6 +276,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 405,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -56,6 +305,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 407,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -66,6 +330,65 @@
"method": "__register__", "method": "__register__",
"line": 437, "line": 437,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 438,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 440,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 443,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 443,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 445,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "add_column", "operation": "add_column",
@@ -82,6 +405,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 479,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 453
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -113,6 +462,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 460,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -128,6 +492,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 462,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 465,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -2,6 +2,66 @@
"version": "5.2", "version": "5.2",
"module": "production", "module": "production",
"files": [ "files": [
{
"module": "production",
"file": "configuration.py",
"class": "ConfigurationProductionSequence",
"method": "__register__",
"line": 45,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 46,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 47,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 59,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 52
}
]
}
]
},
{ {
"module": "production", "module": "production",
"file": "production.py", "file": "production.py",
@@ -25,6 +85,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 233,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 233,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 194, "line": 194,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 195,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 195,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 202,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 202,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 203,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 203,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+162 -1
View File
@@ -1,5 +1,166 @@
{ {
"version": "5.4", "version": "5.4",
"module": "company", "module": "company",
"files": [] "files": [
{
"module": "company",
"file": "party.py",
"class": "PartyConfigurationLang",
"method": "__register__",
"line": 22,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 23,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 24,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 27,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 33,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
}
]
},
{
"module": "company",
"file": "party.py",
"class": "PartyLang",
"method": "__register__",
"line": 46,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 47,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 48,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 51,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 62,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 57
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 62,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 57
}
]
}
]
}
]
} }
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 32, "line": 32,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 33,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 36,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 36,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 216, "line": 216,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 217,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 220,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 220,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 53, "line": 53,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 54,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 57,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 57,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 67,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+395
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 529, "line": 529,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 532,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 533,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 729, "line": 729,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 730,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 730,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 60, "line": 60,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 69, "line": 69,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 77,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -361,6 +471,28 @@
"method": "__register__", "method": "__register__",
"line": 1135, "line": 1135,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1136,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1136,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -417,6 +549,67 @@
"method": "__register__", "method": "__register__",
"line": 103, "line": 103,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 104,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 106,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 109,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 109,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 114,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -509,6 +702,56 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 138,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
}
]
},
{
"module": "ir",
"file": "module.py",
"class": "ModuleDependency",
"method": "__register__",
"line": 363,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 364,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 369,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
} }
] ]
}, },
@@ -519,6 +762,67 @@
"method": "__register__", "method": "__register__",
"line": 396, "line": 396,
"operations": [ "operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 397,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 398,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 398,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 399,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_rename",
"tables": [],
"line": 406,
"args": [
"old_table",
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_rename(old_table, cls._table)",
"unresolved": true,
"phase": "before_super",
"condition": "TableHandler.table_exist(old_table)"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -622,6 +926,28 @@
"method": "__register__", "method": "__register__",
"line": 86, "line": 86,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 87,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 88,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -707,6 +1033,28 @@
"method": "__register__", "method": "__register__",
"line": 76, "line": 76,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 77,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 77,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -740,6 +1088,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 90,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 91,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 91,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
+368
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 73, "line": 73,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 83,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 84,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 85,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 85,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -64,6 +146,39 @@
"method": "__register__", "method": "__register__",
"line": 271, "line": 271,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 272,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 278,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 278,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -160,6 +275,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 299,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -213,6 +344,66 @@
} }
] ]
}, },
{
"module": "party",
"file": "configuration.py",
"class": "_ConfigurationValue",
"method": "__register__",
"line": 42,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 43,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 44,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 55,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 49
}
]
}
]
},
{ {
"module": "party", "module": "party",
"file": "party.py", "file": "party.py",
@@ -244,6 +435,65 @@
"method": "__register__", "method": "__register__",
"line": 278, "line": 278,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 279,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 281,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 282,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 282,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 283,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "insert", "operation": "insert",
@@ -304,6 +554,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 304,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 298
}
]
} }
] ]
}, },
@@ -314,6 +590,39 @@
"method": "__register__", "method": "__register__",
"line": 439, "line": 439,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 440,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 442,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 442,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -348,6 +657,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 460,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 460,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 466,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 467,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+395
View File
@@ -2,6 +2,127 @@
"version": "5.4", "version": "5.4",
"module": "product", "module": "product",
"files": [ "files": [
{
"module": "product",
"file": "configuration.py",
"class": "ConfigurationDefaultCostPriceMethod",
"method": "__register__",
"line": 48,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 49,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 50,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 62,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 56
}
]
}
]
},
{
"module": "product",
"file": "product.py",
"class": "ProductListPrice",
"method": "__register__",
"line": 411,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 412,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 413,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 425,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 418
}
]
}
]
},
{ {
"module": "product", "module": "product",
"file": "product.py", "file": "product.py",
@@ -9,6 +130,119 @@
"method": "__register__", "method": "__register__",
"line": 439, "line": 439,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 440,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 442,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 445,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 445,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 447,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 448,
"args": [
"ProductCostPrice._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(ProductCostPrice._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 471,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 454
}
]
},
{
"object": "",
"operation": "TableHandler",
"tables": [],
"line": 456,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "(backend.get('TableHandler'))(ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -42,6 +276,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 462,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -56,6 +305,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 464,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -66,6 +330,65 @@
"method": "__register__", "method": "__register__",
"line": 494, "line": 494,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 495,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 497,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 500,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 500,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 502,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "add_column", "operation": "add_column",
@@ -82,6 +405,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 536,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 510
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -113,6 +462,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 517,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -128,6 +492,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 519,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 522,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -2,6 +2,66 @@
"version": "5.4", "version": "5.4",
"module": "production", "module": "production",
"files": [ "files": [
{
"module": "production",
"file": "configuration.py",
"class": "ConfigurationProductionSequence",
"method": "__register__",
"line": 45,
"operations": [
{
"object": "backend",
"operation": "get",
"tables": [],
"line": 46,
"args": [
"'TableHandler'"
],
"kwargs": {},
"code": "backend.get('(backend.get('TableHandler'))')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "TableHandler",
"operation": "table_exist",
"tables": [],
"line": 47,
"args": [
"cls._table"
],
"kwargs": {},
"code": "(backend.get('TableHandler')).table_exist(cls._table)",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 59,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 52
}
]
}
]
},
{ {
"module": "production", "module": "production",
"file": "production.py", "file": "production.py",
@@ -25,6 +85,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 233,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 233,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 194, "line": 194,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 195,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 195,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 202,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 202,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 203,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 203,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 29, "line": 29,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 30,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 31,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 36,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 38,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 39,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 41,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 47,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 48,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 50,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 55,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 55,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 55,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 61,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 62,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 62,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 65,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 67,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+90
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 24,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 30,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 47,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 58,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 53
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 58,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 53
}
]
} }
] ]
} }
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 30, "line": 30,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 31,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 34,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 34,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 214, "line": 214,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 215,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 218,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 218,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 51, "line": 51,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 52,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 55,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 55,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 65,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+344
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 545, "line": 545,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 548,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 549,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 745, "line": 745,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 746,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 746,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 63, "line": 63,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 80,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 80,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 69, "line": 69,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 77,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -361,6 +471,28 @@
"method": "__register__", "method": "__register__",
"line": 1157, "line": 1157,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1158,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1158,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -417,6 +549,39 @@
"method": "__register__", "method": "__register__",
"line": 103, "line": 103,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 104,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 108,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 108,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -526,6 +691,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 137,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -562,6 +740,39 @@
"method": "__register__", "method": "__register__",
"line": 393, "line": 393,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 394,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 394,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 395,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -682,6 +893,28 @@
"method": "__register__", "method": "__register__",
"line": 86, "line": 86,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 87,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 88,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -767,6 +1000,28 @@
"method": "__register__", "method": "__register__",
"line": 77, "line": 77,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 78,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 78,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -800,6 +1055,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 93,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 94,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 94,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -815,6 +1117,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 103,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -863,6 +1177,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 110,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 110,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 67, "line": 67,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 78,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 79,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 79,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -64,6 +146,39 @@
"method": "__register__", "method": "__register__",
"line": 265, "line": 265,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 266,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 272,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 272,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -160,6 +275,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 293,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -231,6 +362,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 52,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 46
}
]
} }
] ]
}, },
@@ -265,6 +421,39 @@
"method": "__register__", "method": "__register__",
"line": 268, "line": 268,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 269,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 271,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 271,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -339,6 +528,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 293,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 287
}
]
} }
] ]
}, },
@@ -349,6 +564,39 @@
"method": "__register__", "method": "__register__",
"line": 428, "line": 428,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 429,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 431,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 431,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -383,6 +631,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 449,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 449,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 455,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 456,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+308
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 61,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 55
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 360, "line": 360,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 364,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 365,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 367,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 367,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 564,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 557
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 578, "line": 578,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 579,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 583,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 583,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,47 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 611,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 593
}
]
},
{
"object": "backend",
"operation": "TableHandler",
"tables": [],
"line": 595,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "backend.TableHandler(\n ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +327,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 602,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +356,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 604,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +381,39 @@
"method": "__register__", "method": "__register__",
"line": 634, "line": 634,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 635,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 639,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 639,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +444,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 675,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 649
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +501,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 656,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +531,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 658,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 661,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 56,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 49
}
]
} }
] ]
}, },
@@ -48,6 +73,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 260,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 260,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+82
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 195, "line": 195,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 196,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 196,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 203,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 203,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 204,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 204,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 29, "line": 29,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 30,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 31,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 36,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 38,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 39,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 41,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 47,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 48,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 50,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 55,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 55,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 55,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 61,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 62,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 62,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 65,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 67,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+90
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 24,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 30,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 47,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 58,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 53
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 58,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 53
}
]
} }
] ]
} }
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 30, "line": 30,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 31,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 34,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 34,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 214, "line": 214,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 215,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 218,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 218,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 51, "line": 51,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 52,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 55,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 55,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 65,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+344
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 525, "line": 525,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 528,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 529,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 705, "line": 705,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 706,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 706,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 63, "line": 63,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 80,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 80,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 71, "line": 71,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 79,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -361,6 +471,28 @@
"method": "__register__", "method": "__register__",
"line": 1159, "line": 1159,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1160,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1160,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -417,6 +549,39 @@
"method": "__register__", "method": "__register__",
"line": 95, "line": 95,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 96,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 100,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 100,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -526,6 +691,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 129,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -562,6 +740,39 @@
"method": "__register__", "method": "__register__",
"line": 385, "line": 385,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 386,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 386,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -682,6 +893,28 @@
"method": "__register__", "method": "__register__",
"line": 80, "line": 80,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 81,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -767,6 +1000,28 @@
"method": "__register__", "method": "__register__",
"line": 73, "line": 73,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -800,6 +1055,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 89,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -815,6 +1117,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 99,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -863,6 +1177,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,88 @@
"method": "__register__", "method": "__register__",
"line": 67, "line": 67,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 77,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 78,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 79,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 79,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -64,6 +146,39 @@
"method": "__register__", "method": "__register__",
"line": 265, "line": 265,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 266,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 272,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 272,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -160,6 +275,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 293,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -231,6 +362,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 52,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 46
}
]
} }
] ]
}, },
@@ -265,6 +421,39 @@
"method": "__register__", "method": "__register__",
"line": 270, "line": 270,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 271,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 273,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 273,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -339,6 +528,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 295,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 289
}
]
} }
] ]
}, },
@@ -349,6 +564,39 @@
"method": "__register__", "method": "__register__",
"line": 445, "line": 445,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 446,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 448,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 448,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -383,6 +631,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 466,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 466,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 472,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 473,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+308
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 66,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 401, "line": 401,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 405,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 406,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 408,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 408,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 608,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 601
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 622, "line": 622,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 623,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 627,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 627,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,47 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 655,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 637
}
]
},
{
"object": "backend",
"operation": "TableHandler",
"tables": [],
"line": 639,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "backend.TableHandler(\n ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +327,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 646,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +356,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 648,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +381,39 @@
"method": "__register__", "method": "__register__",
"line": 678, "line": 678,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 679,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 683,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 683,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +444,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 719,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 693
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +501,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 700,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +531,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 702,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 705,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 56,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 49
}
]
} }
] ]
}, },
@@ -48,6 +73,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 265,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 265,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+93
View File
@@ -9,6 +9,99 @@
"method": "__register__", "method": "__register__",
"line": 191, "line": 191,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 192,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 195,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 195,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 202,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 202,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 203,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 203,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 29, "line": 29,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 30,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 31,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 36,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 38,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 39,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 41,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 47,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 48,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 50,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 55,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 55,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 55,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 61,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 62,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 62,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 65,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 67,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+123
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 25,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 31,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 55,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 66,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 66,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -55,6 +145,39 @@
"method": "__register__", "method": "__register__",
"line": 72, "line": 72,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 73,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 75,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 31, "line": 31,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 32,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 219, "line": 219,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 220,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 223,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 223,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 59, "line": 59,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 63,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 63,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 73,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+377
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 558, "line": 558,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 561,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 562,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 732, "line": 732,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 733,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 733,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 58, "line": 58,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 59,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 59,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 75,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 75,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 84, "line": 84,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 92,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -361,6 +471,28 @@
"method": "__register__", "method": "__register__",
"line": 1203, "line": 1203,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1204,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1204,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -417,6 +549,39 @@
"method": "__register__", "method": "__register__",
"line": 96, "line": 96,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 97,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -526,6 +691,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 130,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -562,6 +740,39 @@
"method": "__register__", "method": "__register__",
"line": 386, "line": 386,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 388,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -683,6 +894,39 @@
"method": "__register__", "method": "__register__",
"line": 115, "line": 115,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 116,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 118,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 118,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -781,6 +1025,28 @@
"method": "__register__", "method": "__register__",
"line": 80, "line": 80,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 81,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -866,6 +1132,28 @@
"method": "__register__", "method": "__register__",
"line": 73, "line": 73,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -899,6 +1187,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 89,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -914,6 +1249,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 99,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -962,6 +1309,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 67, "line": 67,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "column_rename", "operation": "column_rename",
@@ -24,6 +46,66 @@
"code": "table.column_rename('zip', 'postal_code')", "code": "table.column_rename('zip', 'postal_code')",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 81,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 82,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 83,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 83,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -79,6 +161,39 @@
"method": "__register__", "method": "__register__",
"line": 278, "line": 278,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 279,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 285,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 285,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -175,6 +290,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 306,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -246,6 +377,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 109,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 103
}
]
} }
] ]
}, },
@@ -280,6 +436,39 @@
"method": "__register__", "method": "__register__",
"line": 322, "line": 322,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 323,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 325,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 325,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -354,6 +543,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 347,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 341
}
]
} }
] ]
}, },
@@ -364,6 +579,39 @@
"method": "__register__", "method": "__register__",
"line": 515, "line": 515,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 516,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 518,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 518,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -398,6 +646,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 537,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 537,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 543,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 544,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+308
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 67,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 416, "line": 416,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 420,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 421,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 423,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 423,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 629,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 622
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 647, "line": 647,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 648,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 652,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 652,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,47 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 680,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 662
}
]
},
{
"object": "backend",
"operation": "TableHandler",
"tables": [],
"line": 664,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "backend.TableHandler(\n ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +327,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 671,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +356,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 673,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +381,39 @@
"method": "__register__", "method": "__register__",
"line": 707, "line": 707,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 708,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 712,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 712,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +444,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 748,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 722
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +501,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 729,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +531,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 731,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 734,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 58,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 51
}
]
} }
] ]
}, },
@@ -48,6 +73,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 275,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 275,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+93
View File
@@ -9,6 +9,99 @@
"method": "__register__", "method": "__register__",
"line": 197, "line": 197,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 198,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 201,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 201,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 208,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 208,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 209,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 209,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 65, "line": 65,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 66,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 67,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 72,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 74,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 75,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 77,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 83,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 84,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 86,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 91,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 91,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 91,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 97,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 98,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 98,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 101,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 103,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+123
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 25,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 31,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 55,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 66,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 66,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -55,6 +145,39 @@
"method": "__register__", "method": "__register__",
"line": 72, "line": 72,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 73,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 75,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 31, "line": 31,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 32,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 219, "line": 219,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 220,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 223,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 223,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 61, "line": 61,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 62,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 65,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 65,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 75,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+377
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 562, "line": 562,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 565,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 566,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 759, "line": 759,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 760,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 760,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 58, "line": 58,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 59,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 59,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 75,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 75,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 86, "line": 86,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 94,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -361,6 +471,28 @@
"method": "__register__", "method": "__register__",
"line": 1199, "line": 1199,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1200,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1200,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -417,6 +549,39 @@
"method": "__register__", "method": "__register__",
"line": 96, "line": 96,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 97,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -526,6 +691,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 130,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -562,6 +740,39 @@
"method": "__register__", "method": "__register__",
"line": 386, "line": 386,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 388,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -683,6 +894,39 @@
"method": "__register__", "method": "__register__",
"line": 119, "line": 119,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 122,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 122,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -781,6 +1025,28 @@
"method": "__register__", "method": "__register__",
"line": 80, "line": 80,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 81,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -866,6 +1132,28 @@
"method": "__register__", "method": "__register__",
"line": 73, "line": 73,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -899,6 +1187,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 89,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -914,6 +1249,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 99,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -962,6 +1309,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 67, "line": 67,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 68,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "column_rename", "operation": "column_rename",
@@ -24,6 +46,66 @@
"code": "table.column_rename('zip', 'postal_code')", "code": "table.column_rename('zip', 'postal_code')",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 81,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 82,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 83,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 83,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -79,6 +161,39 @@
"method": "__register__", "method": "__register__",
"line": 271, "line": 271,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 272,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 278,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 278,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -175,6 +290,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 299,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -246,6 +377,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 109,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 103
}
]
} }
] ]
}, },
@@ -280,6 +436,39 @@
"method": "__register__", "method": "__register__",
"line": 357, "line": 357,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 358,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 360,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 360,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -354,6 +543,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 382,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 376
}
]
} }
] ]
}, },
@@ -364,6 +579,39 @@
"method": "__register__", "method": "__register__",
"line": 625, "line": 625,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 626,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 628,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 628,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -398,6 +646,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 647,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 647,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 653,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 654,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+308
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 67,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 432, "line": 432,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 436,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 437,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 439,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 439,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 659,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 652
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 677, "line": 677,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 678,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 682,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 682,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,47 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 710,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 692
}
]
},
{
"object": "backend",
"operation": "TableHandler",
"tables": [],
"line": 694,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "backend.TableHandler(\n ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +327,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 701,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +356,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 703,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +381,39 @@
"method": "__register__", "method": "__register__",
"line": 742, "line": 742,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 743,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 747,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 747,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +444,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 783,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 757
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +501,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 764,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +531,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 766,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 769,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -45,6 +45,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 58,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 51
}
]
} }
] ]
}, },
@@ -71,6 +96,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 276,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 276,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+93
View File
@@ -9,6 +9,99 @@
"method": "__register__", "method": "__register__",
"line": 205, "line": 205,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 209,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 209,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 216,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 216,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 217,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 217,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 62, "line": 62,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 63,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 69,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 71,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 72,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 74,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 80,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 81,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 83,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 88,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 88,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 88,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 94,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 95,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 95,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 98,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 100,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+123
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 25,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 31,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 54,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 65,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 65,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
} }
] ]
}, },
@@ -55,6 +145,39 @@
"method": "__register__", "method": "__register__",
"line": 69, "line": 69,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 70,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 72,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 79,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 31, "line": 31,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 32,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 256, "line": 256,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 257,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 260,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 260,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 59, "line": 59,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 63,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 63,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 73,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+377
View File
@@ -33,6 +33,28 @@
"method": "__register__", "method": "__register__",
"line": 565, "line": 565,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 568,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 569,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -87,6 +109,28 @@
"method": "__register__", "method": "__register__",
"line": 765, "line": 765,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 766,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 766,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -218,6 +262,28 @@
"method": "__register__", "method": "__register__",
"line": 59, "line": 59,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -284,6 +350,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -337,6 +433,20 @@
"method": "__register__", "method": "__register__",
"line": 87, "line": 87,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 95,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -384,6 +494,28 @@
"method": "__register__", "method": "__register__",
"line": 1228, "line": 1228,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1229,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1229,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -440,6 +572,39 @@
"method": "__register__", "method": "__register__",
"line": 96, "line": 96,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 97,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -549,6 +714,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 130,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -585,6 +763,39 @@
"method": "__register__", "method": "__register__",
"line": 386, "line": 386,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 388,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -706,6 +917,39 @@
"method": "__register__", "method": "__register__",
"line": 117, "line": 117,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 118,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -804,6 +1048,28 @@
"method": "__register__", "method": "__register__",
"line": 79, "line": 79,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 80,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 81,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -889,6 +1155,28 @@
"method": "__register__", "method": "__register__",
"line": 73, "line": 73,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 74,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -922,6 +1210,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 89,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 90,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -937,6 +1272,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 99,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -985,6 +1332,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 106,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 76, "line": 76,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 77,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 77,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "column_rename", "operation": "column_rename",
@@ -24,6 +46,66 @@
"code": "table.column_rename('zip', 'postal_code')", "code": "table.column_rename('zip', 'postal_code')",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 90,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 91,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 92,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 92,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -79,6 +161,39 @@
"method": "__register__", "method": "__register__",
"line": 295, "line": 295,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 296,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 302,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 302,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -175,6 +290,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 323,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -246,6 +377,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 111,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 105
}
]
} }
] ]
}, },
@@ -280,6 +436,39 @@
"method": "__register__", "method": "__register__",
"line": 356, "line": 356,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 357,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 359,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 359,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -354,6 +543,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 381,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 375
}
]
} }
] ]
}, },
@@ -364,6 +579,39 @@
"method": "__register__", "method": "__register__",
"line": 636, "line": 636,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 637,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 639,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 639,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -398,6 +646,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 658,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 658,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 664,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 665,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+308
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 67,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 424, "line": 424,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 428,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 429,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 431,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 431,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 651,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 644
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 669, "line": 669,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 670,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 674,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 674,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,47 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 702,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 684
}
]
},
{
"object": "backend",
"operation": "TableHandler",
"tables": [],
"line": 686,
"args": [
"ProductCostPrice",
"module_name"
],
"kwargs": {},
"code": "backend.TableHandler(\n ProductCostPrice, module_name)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and cost_price_exist"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +327,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 693,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +356,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 695,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +381,39 @@
"method": "__register__", "method": "__register__",
"line": 734, "line": 734,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 735,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 739,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 739,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +444,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 775,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 749
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +501,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 756,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +531,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 758,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 761,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -45,6 +45,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 57,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 50
}
]
} }
] ]
}, },
@@ -71,6 +96,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 261,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 261,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+93
View File
@@ -9,6 +9,99 @@
"method": "__register__", "method": "__register__",
"line": 202, "line": 202,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 203,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 213,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 213,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 214,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 214,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 60, "line": 60,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 62,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 67,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 69,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 70,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 72,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 78,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 79,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 81,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 86,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 86,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 86,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 92,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 93,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 93,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 96,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 98,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+123
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 25,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 31,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 54,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 65,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 65,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
} }
] ]
}, },
@@ -55,6 +145,39 @@
"method": "__register__", "method": "__register__",
"line": 69, "line": 69,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 70,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 72,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 79,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 178, "line": 178,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 179,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 182,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 182,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 433, "line": 433,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 434,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 437,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 437,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 60, "line": 60,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 74,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+377
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 570, "line": 570,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 573,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 574,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -63,6 +85,28 @@
"method": "__register__", "method": "__register__",
"line": 770, "line": 770,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 771,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 771,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -194,6 +238,28 @@
"method": "__register__", "method": "__register__",
"line": 59, "line": 59,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -260,6 +326,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -313,6 +409,20 @@
"method": "__register__", "method": "__register__",
"line": 92, "line": 92,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 100,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -360,6 +470,28 @@
"method": "__register__", "method": "__register__",
"line": 1208, "line": 1208,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1209,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1209,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -416,6 +548,39 @@
"method": "__register__", "method": "__register__",
"line": 96, "line": 96,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 97,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 101,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -525,6 +690,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 130,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -561,6 +739,39 @@
"method": "__register__", "method": "__register__",
"line": 386, "line": 386,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 387,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 388,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -657,6 +868,39 @@
"method": "__register__", "method": "__register__",
"line": 117, "line": 117,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 118,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -731,6 +975,28 @@
"method": "__register__", "method": "__register__",
"line": 110, "line": 110,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 111,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 112,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -801,6 +1067,28 @@
"method": "__register__", "method": "__register__",
"line": 74, "line": 74,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 75,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 75,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -834,6 +1122,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 90,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 91,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 91,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -849,6 +1184,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 100,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -897,6 +1244,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 107,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 107,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 85, "line": 85,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 86,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 86,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "column_rename", "operation": "column_rename",
@@ -24,6 +46,66 @@
"code": "table.column_rename('zip', 'postal_code')", "code": "table.column_rename('zip', 'postal_code')",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 99,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 100,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 101,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 101,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -79,6 +161,39 @@
"method": "__register__", "method": "__register__",
"line": 312, "line": 312,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 313,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 319,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 319,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -175,6 +290,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 340,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -246,6 +377,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 111,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 105
}
]
} }
] ]
}, },
@@ -280,6 +436,39 @@
"method": "__register__", "method": "__register__",
"line": 345, "line": 345,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 346,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 348,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 348,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -354,6 +543,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 370,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 364
}
]
} }
] ]
}, },
@@ -364,6 +579,39 @@
"method": "__register__", "method": "__register__",
"line": 625, "line": 625,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 626,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 628,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 628,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -398,6 +646,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 647,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 647,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 653,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 654,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+293
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 67,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 444, "line": 444,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 448,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 449,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 451,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 451,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 690,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 683
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 708, "line": 708,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 709,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 713,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 713,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,32 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 740,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 723
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +312,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 731,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +341,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 733,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +366,39 @@
"method": "__register__", "method": "__register__",
"line": 772, "line": 772,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 773,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 777,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 777,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +429,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 813,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 787
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +486,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 794,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +516,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 796,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 799,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -45,6 +45,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 57,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 50
}
]
} }
] ]
}, },
@@ -71,6 +96,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 277,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 277,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+93
View File
@@ -9,6 +9,99 @@
"method": "__register__", "method": "__register__",
"line": 202, "line": 202,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 203,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 213,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 213,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 214,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 214,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 60, "line": 60,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 61,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 62,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 67,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 69,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 70,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 72,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 78,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 79,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 81,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 86,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 86,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 86,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 92,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 93,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 93,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 96,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 98,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+123
View File
@@ -22,6 +22,39 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 25,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 31,
"args": [
"'party.configuration'",
"cls._configuration_value_field",
"cls",
"cls._configuration_value_field"
],
"kwargs": {
"fields": "['company']"
},
"code": "migrate_property(\n 'party.configuration', cls._configuration_value_field,\n cls, cls._configuration_value_field, fields=['company'])",
"unresolved": true,
"phase": "after_super",
"condition": "not exist"
} }
] ]
}, },
@@ -45,6 +78,63 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "table",
"operation": "column_exist",
"tables": [],
"line": 54,
"args": [
"'company'"
],
"kwargs": {},
"code": "table.column_exist('company')",
"unresolved": true,
"phase": "before_super",
"condition": "exist"
},
{
"object": "super(PartyLang, cls)",
"operation": "_migrate_property",
"tables": [],
"line": 65,
"args": [
"field_names",
"value_names",
"fields"
],
"kwargs": {},
"code": "super(PartyLang, cls)._migrate_property(\n field_names, value_names, fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
},
{
"object": "",
"operation": "super",
"tables": [],
"line": 65,
"args": [
"PartyLang",
"cls"
],
"kwargs": {},
"code": "super(PartyLang, cls)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 60
}
]
} }
] ]
}, },
@@ -55,6 +145,39 @@
"method": "__register__", "method": "__register__",
"line": 69, "line": 69,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 70,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 72,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 79,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 178, "line": 178,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 179,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 182,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 182,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -89,6 +122,39 @@
"method": "__register__", "method": "__register__",
"line": 433, "line": 433,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 434,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 437,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 437,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 72, "line": 72,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 73,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 76,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 76,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "not_null_action",
"tables": [
"currency_currency"
],
"line": 86,
"args": [
"col",
"'remove'"
],
"kwargs": {},
"code": "table_h.not_null_action(col, 'remove')",
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+377
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 582, "line": 582,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 585,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 586,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -63,6 +85,28 @@
"method": "__register__", "method": "__register__",
"line": 774, "line": 774,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 775,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 775,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -194,6 +238,28 @@
"method": "__register__", "method": "__register__",
"line": 59, "line": 59,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 60,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -260,6 +326,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')" "condition": "table.column_exist('digest') and table.column_exist('collision')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"Concat(attachment.digest, '-')",
"attachment.collision"
],
"kwargs": {},
"code": "Concat(Concat(attachment.digest, '-'),\n attachment.collision)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 76,
"args": [
"attachment.digest",
"'-'"
],
"kwargs": {},
"code": "Concat(attachment.digest, '-')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('digest') and table.column_exist('collision')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -313,6 +409,20 @@
"method": "__register__", "method": "__register__",
"line": 92, "line": 92,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 100,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -360,6 +470,28 @@
"method": "__register__", "method": "__register__",
"line": 1227, "line": 1227,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 1228,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 1228,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -416,6 +548,39 @@
"method": "__register__", "method": "__register__",
"line": 97, "line": 97,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 98,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 102,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 102,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -525,6 +690,19 @@
}, },
"code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))", "code": "model_data_sql_table.update(\n [model_data_sql_table.module], ['ir'],\n where=((model_data_sql_table.module == 'res')\n & (model_data_sql_table.fs_id.in_(button_fs_ids))))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "model_data_sql_table.fs_id",
"operation": "in_",
"tables": [],
"line": 131,
"args": [
"button_fs_ids"
],
"kwargs": {},
"code": "model_data_sql_table.fs_id.in_(button_fs_ids)",
"unresolved": true,
"phase": "after_super"
} }
] ]
}, },
@@ -561,6 +739,39 @@
"method": "__register__", "method": "__register__",
"line": 370, "line": 370,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 371,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 371,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 372,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_rename", "operation": "table_rename",
@@ -657,6 +868,39 @@
"method": "__register__", "method": "__register__",
"line": 117, "line": 117,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 118,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 120,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -731,6 +975,28 @@
"method": "__register__", "method": "__register__",
"line": 111, "line": 111,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 112,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 113,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "drop_constraint", "operation": "drop_constraint",
@@ -801,6 +1067,28 @@
"method": "__register__", "method": "__register__",
"line": 79, "line": 79,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 80,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 80,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -834,6 +1122,53 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "datetime",
"operation": "timedelta",
"tables": [],
"line": 95,
"args": [],
"kwargs": {
"hours": "delay"
},
"code": "datetime.timedelta(hours=(datetime.timedelta(hours=delay)))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"ir_trigger"
],
"line": 96,
"args": [
"*sql_table.update([sql_table.minimum_time_delay], [delay], where=sql_table.id == id_)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_))",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{
"object": "sql_table",
"operation": "update",
"tables": [
"ir_trigger"
],
"line": 96,
"args": [
"[sql_table.minimum_time_delay]",
"[delay]"
],
"kwargs": {
"where": "sql_table.id == id_"
},
"code": "sql_table.update(\n [sql_table.minimum_time_delay],\n [(datetime.timedelta(hours=delay))],\n where=sql_table.id == id_)",
"phase": "after_super",
"condition": "table.column_exist('minimum_delay')"
},
{ {
"object": "table", "object": "table",
"operation": "drop_column", "operation": "drop_column",
@@ -849,6 +1184,18 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('minimum_delay')" "condition": "table.column_exist('minimum_delay')"
}, },
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 105,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -897,6 +1244,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 112,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 112,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+307
View File
@@ -9,6 +9,28 @@
"method": "__register__", "method": "__register__",
"line": 85, "line": 85,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 86,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 86,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "column_rename", "operation": "column_rename",
@@ -24,6 +46,66 @@
"code": "table.column_rename('zip', 'postal_code')", "code": "table.column_rename('zip', 'postal_code')",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 99,
"args": [
"Coalesce(sql_table.street, '')",
"Concat('\\n', Coalesce(sql_table.streetbis, ''))"
],
"kwargs": {},
"code": "Concat(\n Coalesce(sql_table.street, ''),\n Concat('\\n', Coalesce(sql_table.streetbis, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 100,
"args": [
"sql_table.street",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.street, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 101,
"args": [
"'\\n'",
"Coalesce(sql_table.streetbis, '')"
],
"kwargs": {},
"code": "Concat('\\n', Coalesce(sql_table.streetbis, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 101,
"args": [
"sql_table.streetbis",
"''"
],
"kwargs": {},
"code": "Coalesce(sql_table.streetbis, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('streetbis')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -79,6 +161,39 @@
"method": "__register__", "method": "__register__",
"line": 312, "line": 312,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 313,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 319,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 319,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -175,6 +290,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 340,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -246,6 +377,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 111,
"args": [
"'party.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'party.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 105
}
]
} }
] ]
}, },
@@ -280,6 +436,39 @@
"method": "__register__", "method": "__register__",
"line": 345, "line": 345,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 346,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 348,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 348,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -354,6 +543,32 @@
"code": "party_h.drop_column('lang')", "code": "party_h.drop_column('lang')",
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('lang')" "condition": "party_h.column_exist('lang')"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 370,
"args": [
"'party.party'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'party'",
"fields": "fields"
},
"code": "migrate_property(\n 'party.party', field_names, cls, value_names,\n parent='party', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 364
}
]
} }
] ]
}, },
@@ -364,6 +579,39 @@
"method": "__register__", "method": "__register__",
"line": 625, "line": 625,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 626,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 628,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 628,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -398,6 +646,65 @@
"phase": "after_super", "phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')" "condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
}, },
{
"object": "",
"operation": "get_cc_module",
"tables": [],
"line": 647,
"args": [
"*type.split('_', 1)"
],
"kwargs": {},
"code": "get_cc_module(*type.split('_', 1))",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "type",
"operation": "split",
"tables": [],
"line": 647,
"args": [
"'_'",
"1"
],
"kwargs": {},
"code": "type.split('_', 1)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 653,
"args": [],
"kwargs": {
"party": "party_id",
"code": "code",
"type": "type"
},
"code": "cls(party=party_id, code=code, type=type)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{
"object": "cls",
"operation": "save",
"tables": [],
"line": 654,
"args": [
"identifiers"
],
"kwargs": {},
"code": "cls.save(identifiers)",
"unresolved": true,
"phase": "after_super",
"condition": "party_h.column_exist('vat_number') and party_h.column_exist('vat_country')"
},
{ {
"object": "party_h", "object": "party_h",
"operation": "drop_column", "operation": "drop_column",
+293
View File
@@ -22,6 +22,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 67,
"args": [
"'product.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'product.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 61
}
]
} }
] ]
}, },
@@ -32,6 +57,54 @@
"method": "__register__", "method": "__register__",
"line": 447, "line": 447,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 451,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 452,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 454,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 454,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -85,6 +158,32 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 714,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 707
}
]
} }
] ]
}, },
@@ -95,6 +194,39 @@
"method": "__register__", "method": "__register__",
"line": 732, "line": 732,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 733,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 737,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 737,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -121,6 +253,32 @@
"code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)", "code": "backend.TableHandler.table_exist(\n ProductCostPrice._table)",
"phase": "before_super" "phase": "before_super"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 764,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist and (not cost_price_exist)",
"via": [
{
"method": "_migrate_property",
"line": 747
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -154,6 +312,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 755,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
},
{ {
"object": "cost_price", "object": "cost_price",
"operation": "select", "operation": "select",
@@ -168,6 +341,21 @@
"code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])", "code": "cost_price.select(\n *[Column(cost_price, c) for c in columns])",
"phase": "after_super", "phase": "after_super",
"condition": "cost_price_table.column_exist('template')" "condition": "cost_price_table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 757,
"args": [
"cost_price",
"c"
],
"kwargs": {},
"code": "Column(cost_price, c)",
"unresolved": true,
"phase": "after_super",
"condition": "cost_price_table.column_exist('template')"
} }
] ]
}, },
@@ -178,6 +366,39 @@
"method": "__register__", "method": "__register__",
"line": 796, "line": 796,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 797,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 801,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 801,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "backend.TableHandler", "object": "backend.TableHandler",
"operation": "table_exist", "operation": "table_exist",
@@ -208,6 +429,32 @@
"phase": "after_super", "phase": "after_super",
"condition": "not exist" "condition": "not exist"
}, },
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 837,
"args": [
"'product.template'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"parent": "'template'",
"fields": "fields"
},
"code": "migrate_property(\n 'product.template', field_names, cls, value_names,\n parent='template', fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 811
}
]
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -239,6 +486,21 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "",
"operation": "Column",
"tables": [],
"line": 818,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "sql_table.join(product, condition=sql_table.template == product.template)", "object": "sql_table.join(product, condition=sql_table.template == product.template)",
"operation": "select", "operation": "select",
@@ -254,6 +516,37 @@
"phase": "after_super", "phase": "after_super",
"condition": "table.column_exist('template')" "condition": "table.column_exist('template')"
}, },
{
"object": "sql_table",
"operation": "join",
"tables": [],
"line": 820,
"args": [
"product"
],
"kwargs": {
"condition": "sql_table.template == product.template"
},
"code": "sql_table.join(product,\n condition=sql_table.template == product.template\n )",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{
"object": "",
"operation": "Column",
"tables": [],
"line": 823,
"args": [
"sql_table",
"c"
],
"kwargs": {},
"code": "Column(sql_table, c)",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('template')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+47
View File
@@ -45,6 +45,31 @@
"kwargs": {}, "kwargs": {},
"code": "backend.TableHandler.table_exist(cls._table)", "code": "backend.TableHandler.table_exist(cls._table)",
"phase": "before_super" "phase": "before_super"
},
{
"object": "",
"operation": "migrate_property",
"tables": [],
"line": 57,
"args": [
"'production.configuration'",
"field_names",
"cls",
"value_names"
],
"kwargs": {
"fields": "fields"
},
"code": "migrate_property(\n 'production.configuration', field_names, cls, value_names,\n fields=fields)",
"unresolved": true,
"phase": "after_super",
"condition": "not exist",
"via": [
{
"method": "_migrate_property",
"line": 50
}
]
} }
] ]
}, },
@@ -71,6 +96,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('code')" "condition": "table_h.column_exist('code')"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 274,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 274,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+93
View File
@@ -9,6 +9,99 @@
"method": "__register__", "method": "__register__",
"line": 202, "line": 202,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 203,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 206,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 213,
"args": [
"'sha1$'",
"Concat(sqltable.password, Concat('$', Coalesce(sqltable.salt, '')))"
],
"kwargs": {},
"code": "Concat('sha1$', Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, ''))))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 213,
"args": [
"sqltable.password",
"Concat('$', Coalesce(sqltable.salt, ''))"
],
"kwargs": {},
"code": "Concat(sqltable.password,\n Concat('$', Coalesce(sqltable.salt, '')))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 214,
"args": [
"'$'",
"Coalesce(sqltable.salt, '')"
],
"kwargs": {},
"code": "Concat('$', Coalesce(sqltable.salt, ''))",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{
"object": "",
"operation": "Coalesce",
"tables": [],
"line": 214,
"args": [
"sqltable.salt",
"''"
],
"kwargs": {},
"code": "Coalesce(sqltable.salt, '')",
"unresolved": true,
"phase": "after_super",
"condition": "table.column_exist('password') and table.column_exist('salt')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+243
View File
@@ -9,6 +9,128 @@
"method": "__register__", "method": "__register__",
"line": 63, "line": 63,
"operations": [ "operations": [
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 64,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 65,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 70,
"args": [
"'table'",
"'product.template-stock.lot.type'"
],
"kwargs": {
"default": "'product.template-stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'product.template-stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 72,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'product.template-stock.lot.type' .replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "config",
"operation": "get",
"tables": [],
"line": 73,
"args": [
"'table'",
"'stock.lot.type'"
],
"kwargs": {
"default": "'stock.lot.type'.replace('.', '_')"
},
"code": "config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))",
"unresolved": true,
"phase": "after_super"
},
{
"object": "'stock.lot.type'",
"operation": "replace",
"tables": [],
"line": 75,
"args": [
"'.'",
"'_'"
],
"kwargs": {},
"code": "'stock.lot.type'.replace('.', '_')",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 81,
"args": [
"template_lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "",
"operation": "Table",
"tables": [],
"line": 82,
"args": [
"lot_type_table_name"
],
"kwargs": {},
"code": "Table((config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "connection",
"operation": "cursor",
"tables": [],
"line": 84,
"args": [],
"kwargs": {},
"code": "connection.(connection.cursor())()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{ {
"object": "cursor_select", "object": "cursor_select",
"operation": "execute", "operation": "execute",
@@ -36,6 +158,127 @@
"code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)", "code": "template_lot_type.select(\n template_lot_type.template,\n distinct_on=template_lot_type.template)",
"phase": "after_super", "phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)" "condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [],
"line": 89,
"args": [
"*template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id).select(lot_type.code, where=template_lot_type.template == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type.join(lot_type, condition=template_lot_type.type == lot_type.id)",
"operation": "select",
"tables": [],
"line": 89,
"args": [
"lot_type.code"
],
"kwargs": {
"where": "template_lot_type.template == template_id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)\n .select(\n lot_type.code,\n where=template_lot_type.template == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "template_lot_type",
"operation": "join",
"tables": [],
"line": 89,
"args": [
"lot_type"
],
"kwargs": {
"condition": "template_lot_type.type == lot_type.id"
},
"code": "template_lot_type\n .join(lot_type,\n condition=template_lot_type.type == lot_type.id)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cls.lot_required",
"operation": "sql_format",
"tables": [],
"line": 95,
"args": [
"[t for t, in cursor]"
],
"kwargs": {},
"code": "cls.lot_required.sql_format([t for t, in (connection.cursor())])",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"product_template"
],
"line": 96,
"args": [
"*table.update([table.lot_required], [value], where=table.id == template_id)"
],
"kwargs": {},
"code": "(connection.cursor()).execute(*table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id))",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table",
"operation": "update",
"tables": [
"product_template"
],
"line": 96,
"args": [
"[table.lot_required]",
"[value]"
],
"kwargs": {
"where": "table.id == template_id"
},
"code": "table.update(\n [table.lot_required], [(cls.lot_required.sql_format([t for t, in cursor]))],\n where=table.id == template_id)",
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 99,
"args": [
"'product.template-stock.lot.type'",
"template_lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('product.template-stock.lot.type',\n (config.get(\n 'table', 'product.template-stock.lot.type',\n default='product.template-stock.lot.type' .replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
},
{
"object": "table_h",
"operation": "drop_table",
"tables": [],
"line": 101,
"args": [
"'stock.lot.type'",
"lot_type_table_name"
],
"kwargs": {},
"code": "table_h.drop_table('stock.lot.type', (config.get(\n 'table', 'stock.lot.type',\n default='stock.lot.type'.replace('.', '_'))))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.table_exist(template_lot_type_table_name) and table_h.table_exist(lot_type_table_name)"
} }
] ]
} }
+33
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 116, "line": 116,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 117,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 119,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "transaction.connection",
"operation": "cursor",
"tables": [],
"line": 126,
"args": [],
"kwargs": {},
"code": "transaction.connection.(transaction.connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+66
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 178, "line": 178,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 179,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 182,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 182,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -46,6 +79,39 @@
"method": "__register__", "method": "__register__",
"line": 424, "line": 424,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 425,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 428,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 428,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+33
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 72, "line": 72,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 73,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 76,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 76,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+146
View File
@@ -57,6 +57,20 @@
"method": "__register__", "method": "__register__",
"line": 92, "line": 92,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "drop_column",
"tables": [
"ir_cron"
],
"line": 100,
"args": [
"column"
],
"kwargs": {},
"code": "table_h.drop_column(column)",
"phase": "after_super"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "not_null_action", "operation": "not_null_action",
@@ -81,6 +95,41 @@
"method": "__register__", "method": "__register__",
"line": 56, "line": 56,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 59,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 59,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 61,
"args": [
"'user'"
],
"kwargs": {},
"code": "table_h.column_exist('user')",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -218,6 +267,39 @@
"method": "__register__", "method": "__register__",
"line": 122, "line": 122,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 123,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 125,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 125,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -331,6 +413,40 @@
"method": "__register__", "method": "__register__",
"line": 79, "line": 79,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 82,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 89,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "model", "object": "model",
"operation": "select", "operation": "select",
@@ -379,6 +495,36 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')" "condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
}, },
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 96,
"args": [
"action_model",
"Concat('|', sql_table.action_function)"
],
"kwargs": {},
"code": "Concat((model.select(\n model.model, where=model.id == sql_table.action_model)), Concat(\n '|', sql_table.action_function))",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{
"object": "",
"operation": "Concat",
"tables": [],
"line": 96,
"args": [
"'|'",
"sql_table.action_function"
],
"kwargs": {},
"code": "Concat(\n '|', sql_table.action_function)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('action_model') and table_h.column_exist('action_function')"
},
{ {
"object": "table_h", "object": "table_h",
"operation": "drop_column", "operation": "drop_column",
+193
View File
@@ -33,6 +33,39 @@
"method": "__register__", "method": "__register__",
"line": 303, "line": 303,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 304,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 310,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 310,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "table", "object": "table",
"operation": "update", "operation": "update",
@@ -129,6 +162,22 @@
"phase": "after_super", "phase": "after_super",
"condition": "table_h.column_exist('language')" "condition": "table_h.column_exist('language')"
}, },
{
"object": "",
"operation": "Substring",
"tables": [],
"line": 331,
"args": [
"language.code",
"0",
"2"
],
"kwargs": {},
"code": "Substring(language.code, 0, 2)",
"unresolved": true,
"phase": "after_super",
"condition": "table_h.column_exist('language')"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -166,6 +215,70 @@
"method": "__register__", "method": "__register__",
"line": 34, "line": 34,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 35,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "cls",
"tables": [],
"line": 39,
"args": [
"1"
],
"kwargs": {},
"code": "cls(1)",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "tuple",
"tables": [],
"line": 41,
"args": [
"map(replace_vat, configuration.identifier_types)"
],
"kwargs": {},
"code": "tuple(map(\n replace_vat, configuration.identifier_types))",
"unresolved": true,
"phase": "after_super",
"condition": "configuration.identifier_types"
},
{
"object": "",
"operation": "map",
"tables": [],
"line": 41,
"args": [
"replace_vat",
"configuration.identifier_types"
],
"kwargs": {},
"code": "map(\n replace_vat, configuration.identifier_types)",
"unresolved": true,
"phase": "after_super",
"condition": "configuration.identifier_types"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -196,6 +309,20 @@
"code": "table.update(\n [table.identifier_types],\n [cls.identifier_types.sql_format(identifier_types)]\n )", "code": "table.update(\n [table.identifier_types],\n [cls.identifier_types.sql_format(identifier_types)]\n )",
"phase": "after_super", "phase": "after_super",
"condition": "configuration.identifier_types != identifier_types" "condition": "configuration.identifier_types != identifier_types"
},
{
"object": "cls.identifier_types",
"operation": "sql_format",
"tables": [],
"line": 47,
"args": [
"identifier_types"
],
"kwargs": {},
"code": "cls.identifier_types.sql_format(identifier_types)",
"unresolved": true,
"phase": "after_super",
"condition": "configuration.identifier_types != identifier_types"
} }
] ]
}, },
@@ -206,6 +333,28 @@
"method": "__register__", "method": "__register__",
"line": 780, "line": 780,
"operations": [ "operations": [
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 781,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 781,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
@@ -236,6 +385,50 @@
}, },
"code": "table.update([table.type], ['cn_ric'],\n where=(table.type == 'cn_rit'))", "code": "table.update([table.type], ['cn_ric'],\n where=(table.type == 'cn_rit'))",
"phase": "after_super" "phase": "after_super"
},
{
"object": "",
"operation": "replace_vat",
"tables": [],
"line": 792,
"args": [
"old"
],
"kwargs": {},
"code": "replace_vat(old)",
"unresolved": true,
"phase": "after_super"
},
{
"object": "cursor",
"operation": "execute",
"tables": [
"party_identifier"
],
"line": 793,
"args": [
"*table.update([table.type], [new], where=table.type == old)"
],
"kwargs": {},
"code": "(Transaction().connection.cursor()).execute(*table.update(\n [table.type], [new],\n where=table.type == old))",
"phase": "after_super"
},
{
"object": "table",
"operation": "update",
"tables": [
"party_identifier"
],
"line": 793,
"args": [
"[table.type]",
"[new]"
],
"kwargs": {
"where": "table.type == old"
},
"code": "table.update(\n [table.type], [new],\n where=table.type == old)",
"phase": "after_super"
} }
] ]
} }
+48
View File
@@ -9,6 +9,54 @@
"method": "__register__", "method": "__register__",
"line": 494, "line": 494,
"operations": [ "operations": [
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 498,
"args": [
"'code'"
],
"kwargs": {},
"code": "table_h.column_exist('code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "table_h",
"operation": "column_exist",
"tables": [],
"line": 499,
"args": [
"'suffix_code'"
],
"kwargs": {},
"code": "table_h.column_exist('suffix_code')",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 501,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 501,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+22
View File
@@ -64,6 +64,28 @@
"phase": "before_super", "phase": "before_super",
"condition": "table_h.column_exist('uom') and (not table_h.column_exist('unit'))" "condition": "table_h.column_exist('uom') and (not table_h.column_exist('unit'))"
}, },
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 275,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "after_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 275,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "after_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",
+33
View File
@@ -9,6 +9,39 @@
"method": "__register__", "method": "__register__",
"line": 207, "line": 207,
"operations": [ "operations": [
{
"object": "",
"operation": "Pool",
"tables": [],
"line": 208,
"args": [],
"kwargs": {},
"code": "Pool()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "Transaction().connection",
"operation": "cursor",
"tables": [],
"line": 211,
"args": [],
"kwargs": {},
"code": "Transaction().connection.(Transaction().connection.cursor())()",
"unresolved": true,
"phase": "before_super"
},
{
"object": "",
"operation": "Transaction",
"tables": [],
"line": 211,
"args": [],
"kwargs": {},
"code": "Transaction()",
"unresolved": true,
"phase": "before_super"
},
{ {
"object": "cursor", "object": "cursor",
"operation": "execute", "operation": "execute",

Some files were not shown because too many files have changed in this diff Show More