Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature gegenbuchung #138

Merged
merged 18 commits into from
Feb 8, 2024

Conversation

JohannMaierhofer
Copy link

Das Feature soll das Erstellen einer Gegenbuchung bei Umbuchungen in ein offline Konto vereinfachen.
Bei einer Umbuchung in ein offline Konto erhält man den Buchungseintrag nicht über Hibiscus und muss ihn deshalb manuell erzeugen.
Bisher benutze ich die Copy Funktion, lösche dann Kontoauszugsdaten, invertiere den Betrag und setzte das andere Konto. Das geht aber nicht immer weil die Copy Funktion nicht bei Elementen einer Splitbuchung existiert. Das ist aber nötig, z.B. Abbuchung eines Darlehens. Diese splitte ich in Zins und Tilgung. Die Tilgung braucht dann eine Gegenbuchung im offline Darlehenskonto.

Das neue Feature schaut jetzt so aus:

  • Es gibt einen neuen Menüpunkt Gegenbuchung in der Buchungsliste
    Screenshot_1
  • Der Eintrag ist freigeschaltet wenn die Buchung eine Buchungsart hat und diese von der Art Umbuchung ist. Auch bei Splitbuchung Elementen ist es erlaubt.
  • Selektiert man den Menüpunkt erscheint ein Dialog zur Auswahl des Gegenkontos.
  • Anschließend wird die neue Buchung angezeigt. Das Gegenkonto ist gesetzt, die Kontoauszugsdaten gelöscht, der Betrag invertiert und die Buchung von der Splitbuchung gelöst.
  • Um die Auswahl der Gegenkontos zu automatisieren habe ich beim Konto ein neues Attribut für eine Buchungsart eingeführt.
    Screenshot_2
  • Ist bei einem Konto eine Buchungsart gesetzt und sie stimmt mit der Buchungsart der selektierten Buchung überein, wird dieses Konto automatisch übernommen und es erscheint kein Kontoauswahl Dialog
  • Man kann beim Konto nur Buchungsarten der Art Umbuchung setzen
  • Auch kann man eine Buchungsart nur bei einem Konto setzen. Bei weiteren Konten werden bereits genutzte Buchungsarten nicht angeboten.

Ich hoffe, das können auch noch Andere brauchen.

@dippeal dippeal added documentation Improvements or additions to documentation enhancement New feature or request labels Jan 31, 2024
dippeal
dippeal previously approved these changes Feb 3, 2024
dippeal
dippeal previously approved these changes Feb 4, 2024
@willuhn
Copy link
Member

willuhn commented Feb 5, 2024

Ich hab mal das Review von @NicoB77 und/oder @MSchmalzl angefordert, da ich mich fachlich mit dem Thema zu wenig auskenne, um beurteilen zu können, ob das gemerged werden kann.

b.setAuszugsnummer(null);
b.setBlattnummer(null);
b.setMitgliedskonto(null);
GUI.startView(new BuchungView(), b);
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was ist mit den anderen Attributen (Abrechnungslauf, Projekt, Spendenbescheinigung, ...)? Wäre es nicht sinnvoller, eine neue Buchung zu erstellen und nur die gewünschten Attribute zu füllen?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ja, wahrscheinlich ist das besser. Ich werde das ändern.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ist übergeben

@JohannMaierhofer
Copy link
Author

Habe im letzten Commit ddie Eingabe der Buchungsart im Konto auf einen .setPleaseChoose("Bitte wählen...") abgeändert. Das ist ja anscheinen üblich so. Der Text ist wie beim Hibiscus Konto.

bu.setDatum(b.getDatum());
if (b.getBuchungsart() != null)
bu.setBuchungsart(b.getBuchungsartId());
if (b.getProjekt() != null)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Führt das Setzen des Projekts nicht dazu, dass sich die beiden Buchungen im Projektsaldo annullieren? Mir fällt gerade kein Szenario ein, in dem man das will.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also bei mir heben sich Umbuchungen auch im normalen Buchungsklassen Saldo gegenseitig auf. Dafür sind es ja Umbuchungen und keine Einnahmen oder Ausgaben. Und ich erlaube ja die Aktion nur bei Umbuchungen.
Z. B. Eine Umbuchung von Geld vom Girokonto auf ein Anlagekonto muss sich aufheben weil das weder Einnahmen noch Ausgaben sind. Der Geldbestand bleibt ja gleich.
Oder wenn ich eine Einzahlung für eine Kaution habe ist das auch keine Einnahme sondern ich mache eine Gegenbuchung im Kautionskonto. Ich habe mehr Geld auf dem Girokonto aber gleichzeitig mehr Schulden.
Wenn die Buchungen jetzt einem Projekt zugeordnet sind sollte das doch innerhalb des Projektes genauso sein nehme ich mal an.

Copy link

@MSchmalzl MSchmalzl Feb 7, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hier stimme ich @JohannMaierhofer zu.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Warum sollte die Umbuchung dann überhaupt einem Projekt zugeordnet werden?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ich denke, das hängt dann davon ab ob man auch an anderen Stellen die Buchungen als Teil des Projekts sehen möchte z.B. in den Buchungslisten.
Für das Feature ist das aber egal.
Entweder ist eine Buchung nicht Teil eines Projektes und dann wird auch nichts mit kopiert.
Oder es ist Teil eines Projektes und dann wird es halt mit kopiert. Sollte dann aus irgendeinem Grund das Projekt nicht in der Gegenbuchung gewünscht sein, dann kann man es ja vor dem abspeichern immer noch rauslöschen. Aber das Behalten dürfte in dem Fall wohl der Standard sein.

Copy link

@MSchmalzl MSchmalzl Feb 8, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ich ordne Umbuchungen auch immer einem Projekt zu -zumindest wenn sie zu einem Projekt gehören.

Es ist aber wie schon richtig beschrieben jedem selbst überlassen ob er das macht oder nicht.

@JohannMaierhofer
Copy link
Author

Nach dem Kommentar oben, beim Anlegen eine neue Buchungen zu erzeugen frage ich mich ob das nicht auch bei der bestehenden copy Funktion so gemacht werden sollte. Da werden ja dann auch versteckte Attribute kopiert die man dann im View nicht sieht.
Überträgt man genau die Attribute die man auch im View nachträglich editieren kann, könnte man das copy auch bei Splittbuchungen erlauben.

@JohannMaierhofer
Copy link
Author

Ich habe jetzt die Dateien die nicht direkt zum Feature gehören entfernt und werde sie separat übergeben. Das denke ich ist besser, dann kann man sie separat entscheiden. Die anderen Fixes sind in der Diskussion zu diesem Feature gefunden worden. Ich hatte sie halt gleich geändert.

@dippeal dippeal merged commit 5115f3a into openjverein:master Feb 8, 2024
@JohannMaierhofer JohannMaierhofer deleted the feature_gegenbuchung branch February 8, 2024 16:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants