Fehler "Ungültige Buchungskomponente TAX"

Guten Tag

Ich habe versucht die Schweiz als Region hinzuzufügen. Hat vorerst alles geklappt und ich konnte auch zwei Unternehmen zu der Schweiz kategorisieren. Als ich dann auf Vermögensaufstellung klickte, kamen dort wirre Zahlen und die vorherige super Vermögensaufstellung war verschwunden. Folgende Fehlermeldung taucht auf:

Sat May 11 22:51:31 CEST 2019
Ungültige Buchungskomponente TAX: EUR 0.05 x 1.139 != CHF 0.05

java.lang.IllegalArgumentException: Ungültige Buchungskomponente TAX: EUR 0.05 x 1.139 != CHF 0.05
	at name.abuchen.portfolio.model.Transaction$Unit.<init>(Transaction.java:73)
	at name.abuchen.portfolio.snapshot.SecurityPosition.lambda$1(SecurityPosition.java:361)
	at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1382)
	at java.util.stream.ReferencePipeline$Head.forEach(ReferencePipeline.java:580)
	at name.abuchen.portfolio.snapshot.SecurityPosition.split(SecurityPosition.java:344)
	at name.abuchen.portfolio.snapshot.GroupByTaxonomy.createCategoriesAndAllocate(GroupByTaxonomy.java:140)
	at name.abuchen.portfolio.snapshot.GroupByTaxonomy.doGrouping(GroupByTaxonomy.java:89)
	at name.abuchen.portfolio.snapshot.GroupByTaxonomy.<init>(GroupByTaxonomy.java:70)
	at name.abuchen.portfolio.snapshot.ClientSnapshot.groupByTaxonomy(ClientSnapshot.java:121)
	at name.abuchen.portfolio.ui.views.StatementOfAssetsViewer.setInput(StatementOfAssetsViewer.java:884)
	at name.abuchen.portfolio.ui.views.StatementOfAssetsView.notifyModelUpdated(StatementOfAssetsView.java:66)
	at name.abuchen.portfolio.ui.views.StatementOfAssetsView.createBody(StatementOfAssetsView.java:169)
	at name.abuchen.portfolio.ui.editor.AbstractFinanceView.createViewControl(AbstractFinanceView.java:119)
	at name.abuchen.portfolio.ui.editor.PortfolioPart.createView(PortfolioPart.java:468)
	at name.abuchen.portfolio.ui.editor.PortfolioPart.activateView(PortfolioPart.java:438)
	at name.abuchen.portfolio.ui.editor.PortfolioPart.activateView(PortfolioPart.java:423)
	at name.abuchen.portfolio.ui.editor.ClientEditorSidebar.lambda$8(ClientEditorSidebar.java:299)
	at name.abuchen.portfolio.ui.editor.Sidebar.select(Sidebar.java:282)
	at name.abuchen.portfolio.ui.editor.ClientEditorSidebar.selectDefaultView(ClientEditorSidebar.java:120)
	at name.abuchen.portfolio.ui.editor.PortfolioPart.createContainerWithViews(PortfolioPart.java:176)
	at name.abuchen.portfolio.ui.editor.PortfolioPart.rebuildContainer(PortfolioPart.java:267)
	at name.abuchen.portfolio.ui.editor.PortfolioPart.onLoaded(PortfolioPart.java:298)
	at java.util.ArrayList.forEach(ArrayList.java:1257)
	at name.abuchen.portfolio.ui.editor.ClientInput.setClient(ClientInput.java:469)
	at name.abuchen.portfolio.ui.editor.LoadClientThread.lambda$0(LoadClientThread.java:36)
	at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
	at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
	at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4068)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3735)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1173)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1062)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:165)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:199)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:391)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:246)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:595)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1501)

Fettgedruckter Text Was konkret kann/muss ich machen?

Drei möglicherweise verwandte Themen:

Hallo Thomas, danke für dein Verweis auf die ähnlichen Themen. Leider sind sie ähnlich aber es hilft mir nicht. Ich finde den Fehler nicht.

Also 5 Euro-Cent bei einem Wechselkurs von 1,139 sollten eigentlich 0,05695, also gerundet 0,06 CHF ergeben.

Das Problem tritt wohl in der Vermögensaufstellung auf. Du hast eine Position auf mehrere Kategorien verteilt. Diese Position muss jetzt aufgeteilt werden. Inklusive der Steuern.

Warum? Ich teile die Steuern einfach durch 2 (nehmen wir an, Du hast das Wertpapier zu 50% der Kategorie hinzugefügt). Also EUR und CHF Wert durch zwei. Dadurch entsteht der Rundungsfehler.

@Matthias_Maier Könntest Du mir eine Kopie Deiner Datei schicken - Alle Wertpapiere und Buchungen löschen bis auf dieses eine. Und die Klassifikation bestehen lassen. Dann schaue ich wie ich mit solchen Rundungsfehlern besser umgehen kann. Email: portfolio dot performance dot help at gmail dot com

Guten Abend Andreas. Ich kann dir eine Kopie der Datei schicken. Bedeutet, dass für mich, dass ich das PortfolioP komplett neu erstellen und einrichten muss?

Um die Datei zu erstellen: einfach Deine Datei öffnen, Speichern unter einem anderen Namen, Daten rauslöschen, mir schicken.

Ansonsten werde ich den Bug versuchen zu beheben. Dann sollte die Vermögensaufstellung auch wieder tun. Wie gesagt, es ist ein Rundungsfehler.

Guten Abend Andreas. Ich habe die Datei neu geöffnet und unter anderem Namen abgespeichert, wie genau ich die Daten löschen kann ohne die Wertpapiere zu verkaufen verstehe ich nicht. Ich sende dir im Anhang die Datei. Übrigens ein absolut klasse Tool, ich bin zwar erst seit kurzem dabei, jedoch macht das PP als Werkzeug das investieren erst richtig interessant.

Guten Tag Andreas

Entschuldigung für die erneute Frage. Habe ich dich richtig verstanden, mir bleibt nichts neues übrig als das Portfolio Performance neu aufzusetzen respektiv komplett neu zu eröffnen?

Freundliche Grüsse

Matthias

Hallo Matthias,

Nein, du musst nicht von vorne anfangen.

Andreas möchte das du dein bisheriges Portfolio als neue Datei (als quasi Sicherheitskopie) abspeicherst und alle Wertpapiere mit der rechten Maustaste löschst und dann hier bspw postest.

Hallo Ragas

Danke für die Antwort. Wenn ich das Wertpapier löschen möchte, kommt die Meldung, dass dies nicht möglich ist, da es zur Berechnung der Performance benötigt wird. “Wertpapiere mit Umsätze können nicht gelöscht werden”

Oder probiere ich es am falschen Ort?

Hm, da war ja noch was. Es gibt da mE irgendwo noch die Option alle Buchungen zu löschen. Aber ich kann gerade nicht nachsehen da ich ohne PC bin.

Nicht direkt. Leider.

Aber in der Portfolio oder Konten Ansicht kann man die Buchungen nach Wertpapier sortieren, dann den Rest markieren und löschen.

Es braucht wohl mal eine Ansicht mit allen Buchungen - egal auf welchem Konto oder Depot…

Ich habe den Bug jetzt gefunden und behoben. Mit der nächsten Version sollte es wieder gehen.

Das Problem tritt bei Dir auf wenn Du die Vermögensaufstellung nach “Branchen” gruppierst.

Du solltest Deine Datei weiterverwenden können, wenn Du zunächst das Workspace Verzeichnis löscht (da speichert sich PP welche Gruppierung Du zuletzt ausgewählt hast) und dann PP erneut startest. Und natürlich erst mal nicht nach Branchen gruppierst.

Hallo @AndreasB,

unter “Alle Wertpapiere” / “Umsätze” gibt es die Funktion “Alle Buchungen löschen”.

1 Like

Guten Abend Andreas

Vielen Dank! Ich bin froh, muss ich es nicht neu aufsetzen und freue mich, dieses tolle Tool weiterhin nutzen zu können.

Hat etwas gedauert… aber mit Version 0.39.2 sollte das jetzt keine Fehlermeldung mehr produzieren.

Bei mir erscheint der Fehler auch, aber er wird mit der Version 0.39.2 nicht behoben. Es gibt eine Verkaufsbuchung die den Fehler erzeugt, aber leider entsprechen die Beträge keiner Zahl in der Buchung. Das “Anpassen” des Wechselkurses führt zu keiner Lösung, ebenso wenig wie das Löschen und Neuerfassen der Buchung - das Problem scheint tiefer zu liegen.
Der Fehler führt dazu, dass der Trades-Report im Dashboard nicht funktioniert. Der Klick auf das graue Viereck löst die obige Fehlermeldung aus. Ausserdem erscheint die gleiche Meldung, wenn man im vertikalen Menü links unter Berichte->Performance->Wertpapiere auf das Asset klickt.
Ein Minimalbeispiel ist im Anhang.
BugTaxError.xml (138,3 KB)
Es wäre toll, wenn es dafür eine Lösung gäbe.
Grüsse
Christoph

1 Like

Ähnlicher Bug, andere Stelle im Code.

Mit dem Beispiel konnte ich das jetzt super schnell reproduzieren und auch beheben. Kommt mit der nächsten Version.

Super, danke.
PP ist ein ganz cooles Programm. Vielen Dank, dass du es aufgesetzt hast und ständig weiterentwickelst! :raised_hands::+1:

Der Fix ist jetzt in Version 0.40.0 drin.