IllegalArgumentException beim Umwandeln einer Umbuchung in Einlage/Entnahme

Wenn ich eine Umbuchung zwischen zwei Konten mit unterschiedlichen Währungen versuche in Einlage/Entnahme umzuwandeln, wird einen Internen Fehler geworfen (Ursache: java.lang.IllegalArgumentException)

Stack Trace:

!ENTRY org.eclipse.e4.ui.workbench 4 0 2023-05-01 11:51:02.631
!MESSAGE Internal Error
!STACK 0
java.lang.IllegalArgumentException
	at name.abuchen.portfolio.model.Account.addTransaction(Account.java:141)
	at name.abuchen.portfolio.ui.views.actions.ConvertTransferToDepositRemovalAction.run(ConvertTransferToDepositRemovalAction.java:56)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:474)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)
	at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256)
	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054)
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:168)
	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.base/java.lang.reflect.Method.invoke(Unknown Source)
	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
	at org.eclipse.equinox.launcher.Main.run(Main.java:1467)

Environment:

  • Version: 0.62.0 (Apr. 2023)
  • Platform: win32, x86_64
  • Java: 17.0.5+8-LTS, Azul Systems, Inc.

Bitte poste den Stack Trace hier im Forum (also die Aufrufhierarchie vom Code)
Du findest die Fehlermeldung unter Hilfe → Fehlerprotokoll → Doppelklick auf den Eintrag

Soll das überhaupt funktionieren? (Es soll natürlich keine Exception werfen, aber dass eine Umbuchung umgewandelt werden kann, habe ich noch nie gehört.)

Ich habe meinen Beitrag mit dem Stack Trace aktualisiert.
Übrigens bei mir passiert nichts, wenn ich auf Fehlerprotokoll anzeigen klicke. Ich müsste den Fehlerprotokoll speichern und im Editor aufmachen.

Naja, die Option wird im Kontextmenü angeboten. Es wäre sehr schön wenn es funktioniert hätte.

Es sollte dann eigentlich ein zusätzlicher Reiter aufgehen, neben den geöffneten Dateien und ggf. dem „Willkommen“-Reiter.

Dieser Fehler tritt immer noch auf. Anbei das Fehlerprotokoll:

Wed Feb 07 22:56:16 CET 2024
Internal Error

java.lang.IllegalArgumentException

	at name.abuchen.portfolio.model.Account.addTransaction(Account.java:141)

	at name.abuchen.portfolio.ui.views.actions.ConvertTransferToDepositRemovalAction.run(ConvertTransferToDepositRemovalAction.java:56)

	at org.eclipse.jface.action.Action.runWithEvent(Action.java:474)

	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)

	at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)

	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)

	at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4273)

	at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)

	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4071)

	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3659)

	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)

	at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:342)

	at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)

	at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)

	at org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:168)

	at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)

	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)

	at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)

	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)

	at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

	at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

	at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

	at java.base/java.lang.reflect.Method.invoke(Unknown Source)

	at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:651)

	at org.eclipse.equinox.launcher.Main.basicRun(Main.java:588)

	at org.eclipse.equinox.launcher.Main.run(Main.java:1459)


Kannst du mal eine exemplarische PP-Datei anlegen, bei der sich das Problem zeigt, wenn man den Vorgang startet und hier teilen?

Edit: Wobei… Der Fehler wird geschmissen, wenn die Währung des Accounts nicht mit der Währung in der umzuwandelnden Transaktion übereinstimmt. Vielleicht kannst du das bei dir mal prüfen. … Dass es verschiedene Währungen sind, stand ja in deinem OP. War ein langer Tag :wink: Scheint derzeit daher wohl nicht unterstützt zu werden, so wie es aussieht.