Seit der Installation der neusten Version habe ich bei einem meiner Portfolio Performance Dateien ein Problem. Die Anzeige bei Berichte Wertpapiere zeigt nichts an. Stattdessen erscheint diese Meldung:
No value present
java.util.NoSuchElementException: No value present
at java.base/java.util.Optional.orElseThrow(Unknown Source)
at name.abuchen.portfolio.ui.util.viewers.ClientFilterColumnOptions.valueOf(ClientFilterColumnOptions.java:30)
at name.abuchen.portfolio.ui.util.viewers.ClientFilterColumnOptions.valueOf(ClientFilterColumnOptions.java:1)
at name.abuchen.portfolio.ui.util.viewers.ShowHideColumnHelper.lambda$8(ShowHideColumnHelper.java:911)
at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(Unknown Source)
at java.base/java.util.stream.ReferencePipeline$Head.forEach(Unknown Source)
at name.abuchen.portfolio.ui.util.viewers.ShowHideColumnHelper.createFromColumnConfig(ShowHideColumnHelper.java:900)
at name.abuchen.portfolio.ui.util.viewers.ShowHideColumnHelper.createColumns(ShowHideColumnHelper.java:850)
at name.abuchen.portfolio.ui.views.SecuritiesPerformanceView.createBody(SecuritiesPerformanceView.java:782)
at name.abuchen.portfolio.ui.editor.AbstractFinanceView.createViewControl(AbstractFinanceView.java:171)
at name.abuchen.portfolio.ui.editor.PortfolioPart.createView(PortfolioPart.java:573)
at name.abuchen.portfolio.ui.editor.PortfolioPart.activateView(PortfolioPart.java:529)
at name.abuchen.portfolio.ui.editor.PortfolioPart.activateView(PortfolioPart.java:517)
at name.abuchen.portfolio.ui.editor.ClientEditorSidebar$1.select(ClientEditorSidebar.java:71)
at name.abuchen.portfolio.ui.editor.ClientEditorSidebar$1.select(ClientEditorSidebar.java:1)
at name.abuchen.portfolio.ui.editor.Sidebar$Entry.handleMouseDown(Sidebar.java:419)
at org.eclipse.swt.events.MouseListener$2.mouseDown(MouseListener.java:96)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:209)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:91)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4660)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1622)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1645)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1630)
at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:1392)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4427)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4003)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1151)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:339)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1042)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
at org.eclipse.e4.ui.internal.workbench.swt.E4Application.start(E4Application.java:165)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:208)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:143)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:109)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:439)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:271)
at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)
at java.base/java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:668)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:605)
at org.eclipse.equinox.launcher.Main.run(Main.java:1481)
Kann ich nicht anwählen. Benutze M2 MacBook Air übrigens. Ich habe eine separate .settings-Datei. An diese liegt es nicht. es liegt an der .portfolio Datei irgendwie… Komisch ist. Nehme ich eine Datei aus der TimeMachine bei welcher ich weiss das es funktionieren müsste (ging damals ja auch), taucht das gleiche Problem auf
Kannst mal versuchen ~/Library/Application Support/name.abuchen.portfolio.product/workspace
zu löschen (bei geschlossenem PP), das sollte nichts kaputtmachen.
Vielen Dank für den Vorschlag. Habe ich gemacht. Wurde alles zurückgesetzt (Fenstergrösse etc.). Leider besteht das Problem weiterhin. Habe mehrere solche Dateien und es ist nur bei der einen so (Aktien). Ich versuch wieder eine Daten von über einem Jahr aufzuladen. Mal schauen.
Weißt du, ob du dort bisher etwas gewählt hattest? Kannst du dort Alle entfernen klicken und bringt dir das erstmal die Tabelle wieder?
So 100% steig ich da noch nicht durch, aber hier knallt es:
Und zwar weil wohl kein item anhand des übergebenen strings gefunden wurde.
Aber der Aufrufer der Funktion valueOf würde eigentlich auch mit null arbeiten können:
Ein Fix um zumindest die Exception zu vermeiden wäre orElseThrow durch orElse(null) zu ersetzen (oder Optional zurückgeben, wenn null als Rückgabewert nicht gern gesehen ist).
Wir haben dann aber keine Info darüber wie es überhaupt zu dem Fehler kommen konnte. Anscheinend sind hier irgendwelche Einstellungen durcheinander gekommen.
@Supermario86 : Um dieser eigentlichen Ursache auf den Grund zu gehen, ist es wohl sinnvoll @Andreas deine XML und die dazugehörige .settings-Datei zur Verfügung zu stellen (Kontakt siehe Portfolio Performance - Impressum).
Ich vertmute fast der Fehler würde auch auftreten, wenn du deine Datei komplett von allen Buchungen und Wertpapieren befreist und ggfs Konto-Depotnummern änderst. Dann könntest du die Datei hier hochladen und wir könnten uns die ansehen. Ansonsten eben deine Originaldatei an Andreas direkt.
Vielen Dank für den ausführlichen Lösungsvorschlag.
Ich habe den Fehler gefunden in dem ich eine ältere Datei nachbilden wollte.
Verstehe nicht ganz wieso aber… sobald ich ein spezifisches Depot deaktivieren möchte (keine Aktien, verbundene Konti = CHF 0.00), kommt die Fehlermeldung und oben rechts habe ich keine Symbole mehr. Ich kann somit auch nichts anwählen (Menü und so).
Aktiviere ich das eine Depot wieder funktioniert alles… irgendwie strange. Kann sich jemand “ein Reim” machen woher das kommt?
Das ist ein guter Hinweis. Ich kann den Fehler nachstellen (du brauchst deine Datei nicht mehr einsenden):
Depot anlegen. Depot als Filter-Spalte verwenden. Depot deaktiveren. Dann kommt die Meldung beim Aufruf von Berichte - Wertpapiere.
Ein deaktiviertes Depot taucht nicht mehr unter den Allgemeinen Filtereinstellungen auf (Filtersymbol). Diese Daten sind aber auch Grundlage für das Aufbauen der Spalten, da wird dann eben für ein deaktiviertes Depot kein Item gefunden.