Frage zu Splitbuchungen

Gibt es das auch in Hibiskus?

 
helmutundarnold
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

Frage zu Splitbuchungen

 · 
Gepostet: 13.01.2020 - 21:31 Uhr  ·  #1
Hallo Forum,
gibt es eine Möglichkeit in Hibiskus Buchungen aufzusplitten?
Zum Beispiel beim Krediten - da wird ein Betrag eingezogen und der besteht aus einem Tilgungs und einem Zins Betrag. Bislang fand ich leider keine Möglichkeit - außer eine zweite Buchung manuell einzustellen und dann die Beträge entsprechend anzupassen.

Wie macht Ihr das?

Helmut
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10816
Dabei seit: 03 / 2005
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 14.01.2020 - 08:54 Uhr  ·  #2
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 14.01.2020 - 10:28 Uhr  ·  #3
An sich fände ich die Möglichkeit Buchungen aufzusplitten recht nützlich und vom Aufwand der Programmierung scheint mir das auch überschaubar. Bevor ich aber einen PR erstelle hätte ich aber zuvor ein paar Fragen zu Problemen die ich in dem Zusammenhang sehe.

Ich weiß vom Fidor-Import, dass die Möglichkeit besteht, dass die Bank keine IDs für Buchungen mitliefert und somit eine Buchung nur anhand des Datums, des Betrags und des Verwendungszwecks identifiziert werden kann. Bei der Fidor-Bank kommt erschwerend das Problem der nachträglichen Datumsänderung derselben Buchung hinzu. Würde man dort Buchungen nahe des letzten Abrufdatums aufsplitten wären die beim nächsten Abruf wieder weg, da das Plugin sie löscht, wenn sie nicht in der CSV stehen.

Können beim Abruf per FinTS auch solchen Probleme auftreten?
Werden beim Abruf per FinTS unter Umständen bestehende Buchungen aus der Hibisbus-Datenbank gelöscht, die in der Bankantwort fehlen (was bei aufgesplitteten Buchungen der Fall ist)?
Was wäre da die beste Lösung das zu umgehen?

Spontan fiel mir ein, einfach das Splitten nur für Buchungen zu erlauben, deren Buchungsdatum x Tage vor dem Datum des letzten Abrufs liegen und somit sicher nicht mehr von einem neuen Abruf behandelt werden. Das wäre aber aus Benutzersicht schon merkwürdig, wenn die Funktion bei gerade abgerufenen Buchungen ausgegraut wäre. Dementsprechend könnte die Funktion im Kern bei manchen Nutzern zu Verwirrung führen, also wäre auch eine Umsetzung als Plugin denkbar, das dann mit einer entsprechenden Beschreibung geliefert wird.
hibiscus
Benutzer
Avatar
Geschlecht: keine Angabe
Herkunft: Leipzig
Homepage: willuhn.de/
Beiträge: 10816
Dabei seit: 03 / 2005
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 14.01.2020 - 10:39 Uhr  ·  #4
Zitat geschrieben von ds10

An sich fände ich die Möglichkeit Buchungen aufzusplitten recht nützlich und vom Aufwand der Programmierung scheint mir das auch überschaubar.

Unterschätze das Thema nicht. Auch wenn das im Datenmodell vielleicht recht simpel aussieht, wirst du viele Stellen in Hibiscus und ggf. auch noch weiteren Plugins anfassen müssen. Das wird selbst auf JVerein, Scripting-Addons und weitere Addons Auswirkungen haben.

Zitat geschrieben von ds10

Ich weiß vom Fidor-Import, dass die Möglichkeit besteht, dass die Bank keine IDs für Buchungen mitliefert und somit eine Buchung nur anhand des Datums, des Betrags und des Verwendungszwecks identifiziert werden kann.

Das Fehlen von IDs ist der Normalfall. Gehe davon aus, dass es keine eindeutigen IDs für Buchungen gibt. Beim Abruf via CAMT gibt es zwar inzwischen ein Feld für sowas. Aber selbst auf das kann man sich nicht 100%ig verlassen.

Zitat geschrieben von ds10

Können beim Abruf per FinTS auch solchen Probleme auftreten?

Die können da nicht nur auftreten. Die existieren dort quasi immer.

Zitat geschrieben von ds10

Werden beim Abruf per FinTS unter Umständen bestehende Buchungen aus der Hibisbus-Datenbank gelöscht, die in der Bankantwort fehlen (was bei aufgesplitteten Buchungen der Fall ist)?

Ja. Das passiert u.a. bei Vormerkbuchungen.

Zitat geschrieben von ds10

Spontan fiel mir ein, einfach das Splitten nur für Buchungen zu erlauben, deren Buchungsdatum x Tage vor dem Datum des letzten Abrufs liegen und somit sicher nicht mehr von einem neuen Abruf behandelt werden.

Der User kann jederzeit rückwirkend Buchungen abrufen. Da können dann nochmal Buchungen von vor 90 Tagen kommen. Und das wird von Usern auch genutzt.
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 14.01.2020 - 10:51 Uhr  ·  #5
Zitat geschrieben von hibiscus
Unterschätze das Thema nicht. Auch wenn das im Datenmodell vielleicht recht simpel aussieht, wirst du viele Stellen in Hibiscus und ggf. auch noch weiteren Plugins anfassen müssen. Das wird selbst auf JVerein, Scripting-Addons und weitere Addons Auswirkungen haben.
Genau deshalb habe ich ja auch gefragt, bevor ich das programmiere. D.h. eine Änderung im Kern scheidet schon einmal aus.

Jetzt könnte ich das aber theoretisch als Plugin ausführen, mit der Warnung es auf eigene Gefahr einzusetzen. Das Plugin wäre dann natürlich entsprechend dumm und würde stur die Buchungen aufsplitten. Die Folgen für SynTAX, jVerein oder die Scripting-Plugins wären dann allein Sache des Nutzers. Problem ist dann wohl nur, dass wieder irgendwelche besonders schlauen Nutzer die Hinweise nicht lesen und sich dann womöglich bei den anderen Plugin-Entwicklern beschweren, weil dort vermeintlich etwas nicht funktioniert.

Ich werde also erst einmal länger darüber nachdenken, ob die Vorteile die Nachteile tatsächlich überwiegen.
helmutundarnold
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

wäre schon hilfreich wenn es manuell machbar wäre

 · 
Gepostet: 14.01.2020 - 21:00 Uhr  ·  #6
Hallo Zusammen, vielen Dank für die schnellen Antworten :-)

In gnucash gibt es das auch - und deshalb kenne ich das auch. Es ist sehr praktisch bei Krediten um Tilgung und Zinsen zu verbuchen oder wenn man einen Einkauf auf verschiedene Kategorien verbuchen möchte. Es funktioniert dort allerdings nur Manuell. Kann ja auch nicht anders, denn woher kann die Software wissen was mit einem bestimmten Betrag von einer bestimmten Konto-Nummer passieren soll.

Ich stelle mir vor dass es eine Funktion gibt - rechte Maustaste -> Splitbuchung
+ eine neue Zeile wird dazu gesetzt.
+ jetzt kann man den original Betrag abändern
+ in der neuen Zeile wird dann der Restbetrag angezeigt
+ in der neuen Zeile kann ich eine Kategorie zuordnen
+ und in der original Zeile kann ich auch die Kategorie ändern


Wenn man jetzt die Buchungen noch mal neu abruft werden diese Splitbuchungen natürlich überschrieben.

Für mich wäre das eine sehr große Hilfe
infoman
Benutzer
Avatar
Geschlecht:
Beiträge: 7343
Dabei seit: 06 / 2008
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 14.01.2020 - 21:15 Uhr  ·  #7
wo zieht man die Grenze zwischen Onlinebanking und Buchhaltungsprogramm?
denn wie helmutundarnold schreibt "... verbuchen ..." somit geht das doch eher Richtung Buchhaltung
helmutundarnold
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 14.01.2020 - 22:34 Uhr  ·  #8
Ich dachte aber weniger an Buchhaltung sondern auf das Aufteilen eines Betrags in zwei Kategorien.
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 15.01.2020 - 00:27 Uhr  ·  #9
Also ich habe die Funktion zum Aufteilen von Umsätzen testweise als Plugin programmiert. Allerdings ist es genauso wie Olaf es bereits gesagt hatte nicht so simpel. Die Aufteilung der Umsätze funktioniert schon, aber der neue Umsatz wird in der Datenbank natürlich am Ende eingetragen, d.h. dieser wird nur dann direkt über dem bestehenden Umsatz sein, wenn der zu splittende Umsatz der letzte in der Datenbank ist bzw. wenn nach Datum sortiert wird der zu splittende Umsatz der letzte an diesem Datum ist. Auch nur dann ist garantiert, dass der Saldo, den der Umsatz zeigt, zu den Salden der Umsätze um diesen neuen Umsatz, passt.

Als Proof of Concept funktioniert das Plugin also durchaus und es würde deine Aufteilung auch deutlich erleichtern, aber es wäre eben auch nicht perfekt.
sektion_J
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 15.01.2020 - 09:59 Uhr  ·  #10
Ich behelfe mir für Splitbuchungen schon seit langer Zeit mit folgendem Workaround und bin auch so zufrieden damit, dass ich das Feature eigentlich gar nicht mehr vermisse: Ich habe ein eigenes Offline-Konto für Splitbuchungen angelegt, dessen Saldo standardmäßig immer 0 ist. Taucht auf einem der anderen Konten eine Buchung auf, die gesplittet werden soll, lege ich eine Gegenbuchung auf diesem Offline-Konto an (geht ja seit einiger Zeit ganz bequem per rechter Maustaste --> "Gegenbuchung erzeugen auf..." [vielen Dank nochmal an Olaf, diese kleine Erweiterung hat für mich das Arbeiten mit Hibiscus um ein Vielfaches vereinfacht]). Für diese Umbuchungen habe ich auch eine eigene Kategorie, die Summe der Umsätze dieser Kategorie ist immer 0 (wegen des entgegengesetzten Vorzeichens bei der Gegenbuchung). Auf dem Offline-Konto nehme ich dann die Aufteilung in die richtigen Kategorien vor, in dem ich dementsprechend weitere Umsätze anlege, bis der Saldo des Kontos wieder 0 ist.
helmutundarnold
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 16.01.2020 - 21:28 Uhr  ·  #11
vielen Dank sektion_J, das werde ich mal ausprobieren - vielleicht kann ich es ja auch als Workaround einbauen.
helmutundarnold
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 16.01.2020 - 21:33 Uhr  ·  #12
Hallo ds10,
das ich kenne die Struktur der Datenbank nicht - heißt das, dass es von der Architektur her nicht möglich ist - Datensätze einzufügen? Jedenfalls klingt das mit dem plugin schon interessant. Ich bin gespannt wie es damit so weiter geht.
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 17.01.2020 - 20:59 Uhr  ·  #13
So die erste Testversion des Plugins ist verfügbar.
Man folge der Anleitung zum Hinzufügen des Repositories von hier: https://github.com/ds10git/ibankstatement
Dann aber statt des dort angegebenen Plugins das Plugin Umsätze aufsplitten installieren.

Die Benutzung sollte selbst erklärend sein, einfach mit rechts auf auf den Umsatz klicken und Umsatz aufsplitten... auswählen.
Bitte auch die wichtigen Hinweise im sich öffnenden Fenster lesen.
helmutundarnold
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 10
Dabei seit: 01 / 2020
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 19.01.2020 - 01:15 Uhr  ·  #14
Hallo ds10,
das ging ja schnell :-) Ich habs eingespielt und schon mal ein Test-Split gestartet - und es sieht schon gut aus. Werde noch weiter testen. Erstmal Vielen Dank.
quasimodoz
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 19
Dabei seit: 02 / 2009
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 18.12.2021 - 17:00 Uhr  ·  #15
Zitat geschrieben von ds10
...
Dann aber statt des dort angegebenen Plugins das Plugin Umsätze aufsplitten installieren.


Hallo ds10,

das Plugin 'Umsätze aufsplitten' gibt es wohl nicht mehr. Heißt der Nachfolger 'hibiscus.splittransaction'?

Und falls ja: Irgendwie geht folgendes nicht:
Abgerufener Umsatz € 3200,--
Splitting: 5000,-- Gehalt
-1000,-- Steuern
-700,-- Krankenkasse
-100,-- Zusatzversorgung

Der OK Knopf wird einfach nicht grün. Was ist zu tun?
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 08.02.2022 - 01:11 Uhr  ·  #16
Dafür habe ich keine Erklärung, bei mir funktioniert es unter Linux.
Es wird einfach nur kontrolliert, ob die Summe der geteilten Umsätze dem Orginalumsatz entspricht und ob auch alle Verwendungszwecke ausgefüllt sind.
Code
  private synchronized void updateButton() {
    double betrag = 0;
    
    for(int i = 0; i < mInputs.length; i++) {
      UmsatzInput input = mInputs[i];
      if(input.mBetrag.getValue() != null) {
        betrag += (double)input.mBetrag.getValue();
      }
    }
    
    boolean enabled = false;
    
    try {
     enabled = mOriginal.getBetrag() == betrag;
      
      if(enabled) {
        for(int i = 0; i < mInputs.length; i++) {
          enabled = ((String)mInputs[i].mVerwendungszweck.getValue()).trim().length() > 0 && mInputs[i].mBetrag.getValue() != null;
          
          if(!enabled && i >= 2) {
            enabled = ((String)mInputs[i].mVerwendungszweck.getValue()).trim().isEmpty() && mInputs[i].mBetrag.getValue() == null;
          }
          
          if(!enabled) {
            break;
          }
        }
      }
    } catch (RemoteException e) {
      enabled = false;
      // TODO Auto-generated catch block
      e.printStackTrace();
    }
    
    mOk.setEnabled(enabled);
  }

Es könnte also nur noch daran liegen, dass die Prüfung zur Aktivierung des Buttons gar nicht aufgerufen wird. Allerdings wäre dann der Button nie ausgegraut, da er beim ersten Öffnen des Dialogs aktiviert ist und somit nie deaktiviert würde, wenn die Aktivierung nicht aufgerufen würde.
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 08.02.2022 - 01:58 Uhr  ·  #17
Ich habe ein mögliches Problem gefunden. Bei deinen Zahlen aber nicht sehr wahrscheinlich.
Bei gewissen Kommazahlen konnte sich eine Ungenauigkeit bei der Berechnung ergeben, was sich einfach aus dem Zahlenbereich ergibt. Ich habe das jetzt entsprechend geändert, so dass das Problem mit dem Zahlenbereich nicht mehr auftreten sollte.
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 09.02.2022 - 16:26 Uhr  ·  #18
Ich habe es jetzt noch etwas erweitert und auch die automatische Berechnung überarbeitet. Das Plugin merkt sich jetzt pro Kategorie die durchgeführten Splits. So kann man die einfach auswählen und die Werte der Umsätze werden dann anhand des Prozentanteils des letzten Splits für diese Vorlage berechnet und die beim letzten Mal ausgewählten Kategorien gesetzt. Für Umsätze, die keine Kategorie haben und aufgeteilt werden, gibt es weiterhin keine Vorlagen.
Thomas.M.
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 45
Dabei seit: 08 / 2022
Betreff:

Mehr als vier Splits

 · 
Gepostet: 19.08.2022 - 21:14 Uhr  ·  #19
Hallo ds10,

ich möchte von StarMoney 13 Deluxe auf Hibiscus wechseln und habe in diesem Zusammenhang Ihr PlugIn ausprobiert. Allerdings sind vier Splits für meinen Anwendungsfall deutlich zu wenig. Ich bin auch bereit, Sie finanziell dabei zu unterstützen, das PlugIn zu erweitern. Lassen Sie mich kurz meine Anforderung schildern:

Ich überweise monatlich einen größeren Betrag auf ein Tagesgeldkonto. Diesen Betrag splitte ich auf einzelne Kostenstellen (es können natürlich auch Kategorien sein) auf, welche regelmäßig wiederkehrenden Zahlungen zugeordnet sind, bspw. Versicherungsverträge mit jährlicher Zahlweise, Abonnements mit halbjährlicher Zahlweise, Rundfunkbeitrag (vierteljährliche Zahlweise), Grundsteuer, Reifen für KFZ (unregelmäßige Entnahme), Reparaturen, Studiengebühren für den Nachwuchs, usw. Insgesamt kommen aktuell 57 Posten zusammen. Genau daran scheitert es, dass ich Hibuscus nicht nutzen kann.

Mein Ansatz ist wie folgt:
- Die Anzahl der Splits darf gerne dynamisch sein. Sobald der letzte Datensatz (Split) in die Form eingetragen wurde und die Summe der Teilbeträge nicht der Summe der Transaktion entsprechen, darf gerne ein weiterer Datensatz (Textfeld für Strings, Textfeld für Währung und Drop-Down-Feld für Kategorie) generiert werden.
- Diese Splits sollen regelmäßig (bei mir monatlich) erfolgen und sinnvoller Weise auf einen bestimmten Suchbegriff ansprechen (z.B. Ansparen für große Ausgaben). Gerne darf diese - ich nenne es kurzerhand - Regel auch nur auf ein bestimmtes Konto beschränkt sein.

Denken Sie, dass Sie das machbar ist?

Viele Grüße
Thomas
ds10
Benutzer
Avatar
Geschlecht: keine Angabe
Beiträge: 165
Dabei seit: 08 / 2018
Betreff:

Re: Frage zu Splitbuchungen

 · 
Gepostet: 25.08.2022 - 20:44 Uhr  ·  #20
Bei so vielen Splits ist dann Hibiscus wohl einfach nicht geeignet. Eine Erweiterung über vier Buchungen hinaus kann gerne jemand programmieren, aber ich werde es nicht machen. Das Plugin ist OpenSoruce und kann als Ausgangsbasis für eine Anpassung verwendet werden: https://github.com/ds10git/ibankstatement

Ansonsten bleiben halt nur sukzessive Splits.
Gewählte Zitate für Mehrfachzitierung:   0