Beim Update von Elexis 1.4 zu 2.1 erschien die Fehlermeldung, dass das Feld "tarmed.lastupdate" nicht
existiere.
--------------Exception--------------
org.postgresql.util.PSQLException
ERROR: column "lastupdate" of relation "tarmed" does not exist
ch.elexis.data.PersistentObject.set(Unknown Source)
ch.elexis.data.TarmedLeistung.<clinit>(Unknown Source)
ch.elexis.data.ArzttarifFactory.createFromString(Unknown Source)
ch.elexis.data.PersistentObjectFactory.createFromString(Unknown Source)
ch.elexis.data.Verrechnet.getVerrechenbar(Unknown Source)
ch.elexis.data.Verrechnet.getBruttoPreis(Unknown Source)
ch.elexis.data.Verrechnet.getNettoPreis(Unknown Source)
ch.elexis.views.VerrechnungsDisplay.setLeistungen(Unknown Source)
ch.elexis.views.KonsDetailView.setKons(Unknown Source)
ch.elexis.views.KonsDetailView.access$000(Unknown Source)
ch.elexis.views.KonsDetailView$1.runInUi(Unknown Source)
ch.elexis.actions.ElexisEventListenerImpl$1.run(Unknown Source)
ch.elexis.Desk.start(Unknown Source)
-----------End Exception handler-----
12.07.2010, 20:45:08 |ERROR| - PersistentObject: Fehler bei: UPDATE TARMED SET Nickname=?, lastupdate=? WHERE ID='Version'(Nick=1.1.1)
Log-Datei mit obigem Fehler
In TarmedLeistung Initializer:
Mit diesem Codes werden die Updates ausgelassen, falls die Zeile mit ID "Version" in alten Datenbanken (Elexis < 2.0) noch nicht existiert. Falls die Zeile nicht existiert, wird sie mit einem Wert von "1.1.1" (VERSION) angelegt.
Danach wird "vi" geladen. In diesem Fall hat "vi" bereits den Wert 1.1.1, so dass die Updates nicht durchgeführt
werden.
Der beiliegende Patch korrigiert das Problem.
Patch "CorrectUpdateOrder"
thx, ist drin
Ich hatte leider meinen Patch zu wenig gut getestet. Es gibt einen Fehler, weil beim ersten tlv.set(FLD_NICK, VERSION_000); die Spalte "lastupdate" ja noch nicht existiert.
Der beiliegende Patch sollte das Problem nun beheben.
Patch zum Kommentar vom 2010-10-06 22:33:41 CEST