Hallo,
ich habe heute das Update auf Version 0.58.1 installiert.
Danach kam es zu 2 Fehlern:
Norton Virenscanner hat “reagiert”
Scheinbar reagiert Norten auf die Ecilipse - Komponente
Ich habe dann eine “Ausnahme” in Norton konfiguriert und dann PP nochmals neu gestartet.
Dabei taucht nun dieser 2. Fehler plötzlich auf:
Bin einigermaßen ratlos, warum es hier plötzlich zu diesem Fehler kommt und , wenn nötig, wie ich den Fehler bereinigen kann, da ich ja das xml-File nicht über PP öffnen und die Buchung suchen kann.
Im XML-File selber kann ich die die Zeichen “CHF -2.926,99” oder “2.926,99” auch nicht finden.
Da würde ich mir nichts denken. Es ist bei einem Update einfach so, daß Dateien überschrieben oder auch gelöscht werden.
In der XML-Datei wird es in Cent bzw. Rappen gespeichert, und natürlich ohne Tausendertrennzeichen oder sonstige Formatierung. Du solltest also mal nach 292699 suchen.
Die Minuszeichen bei Betrag und Wechselkurs sind natürlich offensichtlich Unsinn. (Der Wechselkurs wäre wahrscheinlich als 0.868055... angegeben.) Wenn die so im XML stehen, würde ich beide Minuszeichen versuchsweise entfernen und dann noch einmal probieren, die Datei zu öffnen. 2926,99×1,152 ist zwar auch nicht 3372,80 (sondern nur 3371,89), aber ich könnte mir vorstellen, daß da eine Gebühr o.ä. drinsteckt, die kein Minus bekommen hat.
Scheint mir ein Bug zu sein - @acdc014 kannst Du mir mal Deine Datei an portfolio dot performance dot help at gmail dot com schicken? Dann versuche ich zu verstehen, was da kaputt ist.
Norton Virenscanner hat “reagiert”
Das ist leider immer so. Mit jedem neuen Eclipse Framework wird auch die EXE Datei als neu eingestuft. Wenn die Zertifikaten für Windows nur nicht so teuer wären, würde ich ja signieren…
Nachdem ich im XML-File die Zahlen finden, aber nicht korrekt deuten konnte, habe ich nochmals die PP-Version 0.57.2 installiert und in den Buchungen gesucht (Stammdaten-> Alle Buchungen, nach Betrag bzw. Gesamtpreis sortiert.)
Und siehe da, ich habe die fehlerhafte Buchung gefunden:
Warum die nach so langer Zeit, mit der Version 0.58.1 schon beim Laden des XML-Files geprüft wird??? Unschön ist es auf jeden Fall, dass das XML-File dann nicht geladen werden kann…
Ich habe nach den alten Kursen geschaut und den Fehler so bereinigt:
Den Bug fixe ich. Mit Version 0.58.1 werden beim Laden Buchungen korrigiert, die durch falsche PDF Importer entstanden sind. Das ist deswegen nicht aufgefallen, weil mit den Forex Werten nur gearbeitet wird, wenn die Auswertung in der Fremdwährung stattfindet (und normalerweise schaut man sich das in der eigenen Währung an). Und dazu kommt, dass ich nicht mit negative Wechselkurs im Code gerechnet habe… mir ist nicht ganz klar, wie der anstanden sein könnte…
Das wäre sehr schön
Nach der Korrektur des 1. Fehlers, ist gleich der 2. Fehler aufgetaucht
Mon May 30 11:54:18 CEST 2022
Ungültige Buchungskomponente GROSS_VALUE: AUD -15.365,71 x -1,554 != EUR 23.886,00
java.lang.IllegalArgumentException: Ungültige Buchungskomponente GROSS_VALUE: AUD -15.365,71 x -1,554 != EUR 23.886,00
at name.abuchen.portfolio.model.Transaction$Unit.<init>(Transaction.java:86)
at name.abuchen.portfolio.model.Transaction$Unit.<init>(Transaction.java:67)
at name.abuchen.portfolio.model.ClientFactory.fixGrossValueUnit(ClientFactory.java:1463)
at name.abuchen.portfolio.model.ClientFactory.fixGrossValueUnits(ClientFactory.java:1421)
at name.abuchen.portfolio.model.ClientFactory.upgradeModel(ClientFactory.java:791)
at name.abuchen.portfolio.model.ClientFactory$XmlSerialization.load(ClientFactory.java:124)
at name.abuchen.portfolio.model.ClientFactory$PlainWriter.load(ClientFactory.java:156)
at name.abuchen.portfolio.model.ClientFactory.load(ClientFactory.java:533)
at name.abuchen.portfolio.ui.editor.LoadClientThread.run(LoadClientThread.java:34)
Ich kann die Buchungen nicht einfach korrigieren. Der Wechselkurs ist ja anscheinend nicht nur negativ, sondern auch falsch. (Es müssten ja viel mehr AUD als EUR sein).
Ich muss mir dann was überlegen wie man diese Buchungen finden und bereinigen kann. Wie gesagt: die Werte sind nur dann relevant, wenn Du die Auswertungen in AUD, also in Fremdwährung, machst.
@acdc014 weißt Du das noch? Das würde mich auch interessieren.
Ich weiß jetzt woher der Fehler kommt. Ich werden den Code an ein paar Stellen ändern: erstens sollte die Datei trotzdem geöffnet werden damit man den Fehler beheben kann, zweitens muss ich die Checks beim CSV Import verbessern damit falsche Daten erst mal gar nicht importiert werden, und drittens werde ich einen Check bauen mit dem man existierende Buchungen finden und ggf. manuell beheben kann.
Hi @jirgen, Danke für den Screenshot. Das ist ein weiterer Bug. Gerade bei sehr kleinen Werten ist meine Logik den Wechselkurs zu testen zu restriktiv. Hier gibt es keinen besseren Wechselkurs.
Vor allem aber sollte ich nicht das Öffnen der Datei verhindern (ansonsten hast Du ja keine Chance das zu korrigieren).