openjverein / jverein

Open JVerein - Open Source Vereinsverwaltung
https://openjverein.github.io
GNU General Public License v3.0
42 stars 15 forks source link

Adressfenster auch bei individueller Spendenbescheinigung #254

Closed JohannMaierhofer closed 1 month ago

JohannMaierhofer commented 2 months ago

Mit diesem Feature wird jetzt das Drucken des Adressfensters bei Spendenbescheinigungen auch für individuelles drucken unterstützt. Bildschirmfoto_20240703_134011

SchachtnerTh commented 2 months ago

Hallo @JohannMaierhofer, ich bin grad ziemlich eingespannt. Ich schau mir die Änderungen schon gerne an, aber es wird ein paar Tage dauern... Sry. Aber ich schau, dass ich es die nächsten Tage schaffe.

SchachtnerTh commented 1 month ago

Danke @dippeal, das hätte ich jetzt fast vergessen. Ich hab jetzt irgendwie ein bisschen den Überblick verloren: Was genau ist jetzt wieder der Unterschied zwischen "Drucken (..., Briefversand)" und "Drucken (..., Mailversand)"?

Das hat zwar jetzt nichts mit diesem PR zu tun, aber ich denke, für den Benutzer ist das vielleicht nicht ganz nachvollziehbar, was hier der Unterschied ist. (Ich erstelle auch gerne ein Issue dazu, wenn ich da keinen Denkfehler habt und ihr das ähnlich seht...)

Mir fällt jetzt ein Unterschied ein: In den Einstellungen kann man festlegen, ob man ein Extrablatt für Briefkuverts erstellen möchte (wegen Adressfenster). Das kann man abhängig davon machen, ob Bescheinigungen für Briefe oder für Mails versandt werden. Aber ist das der einzige Unterschied? Könnte man dann nicht statt zwischen Brief- und Mailversand zu unterscheiden und dann in den Einstellungen unterschiedliche Haken zu haben für die Adressblätter, einfach zwei Druckoptionen anbieten: "Mit Adressblatt" und "Ohne Adressblatt" und den Druck für Brief- und Mailversand ansonsten gleich machen?

Wahrscheinlich habe ich aber jetzt einen anderen wichtigen Unterschied nicht bedacht...

Außerdem: Wieso heißt es beim Rechtsklick auf eine Spendenbescheinigung "Drucken (..., ...)" und wenn man die Spendenbescheinigung doppelklickt, sind die Buttons mit "PDF (..., ...)" beschriftet. Ist das nicht eigentlich die selbe Funktion (außer dass aus der Liste ein Multi-Select möglich ist)? (Ich sehe gerade: bei der einen Variante hat man die Möglichkeit, einen Dateinamen anzugeben und die Datei wird anschließend in einem Viewer angezeigt und bei der anderen nicht, aber ansonsten sollte die Funktionalität doch nicht groß unterschiedlich sein, oder)

Mir ist dabei außerdem aufgefallen, dass es bei den Buttons im View einer Spendenbescheinigung folgende Funktionen gibt:

PDF (Standard, Briefversand) PDF (Standard, Mailversand) PDF (Individuell)

und bei der Liste alle Spendenbescheinigungen kriegt man im Kontextmenü angezeigt:

Drucken (Standard, Briefversand) Drucken (Standard, Mailversand) Drucken (Individuell, Briefversand) Drucken (Individuell, Mailversand)

Da wird auch bei den individuellen Vorlagen zwischen Brief- und Mailversand unterschieden.

Ist, wie erwähnt, eher ein allgemeines Thema und hat nicht unbedingt mit diesem PR was zu tun. Mir ist es halt da grad aufgefallen.

Ich würde den PR dann ansonsten approven, außer @JohannMaierhofer möchte noch was dran ändern.

JohannMaierhofer commented 1 month ago

Mir fällt jetzt ein Unterschied ein: In den Einstellungen kann man festlegen, ob man ein Extrablatt für Briefkuverts erstellen möchte (wegen Adressfenster). Das kann man abhängig davon machen, ob Bescheinigungen für Briefe oder für Mails versandt werden. Aber ist das der einzige Unterschied? Könnte man dann nicht statt zwischen Brief- und Mailversand zu unterscheiden und dann in den Einstellungen unterschiedliche Haken zu haben für die Adressblätter, einfach zwei Druckoptionen anbieten: "Mit Adressblatt" und "Ohne Adressblatt" und den Druck für Brief- und Mailversand ansonsten gleich machen?

Ist dein Vorschlag so gemeint, dass man die Schalter in den Einstellungen ganz weg macht und einfach im Menü die Einträge ändert, also so: Drucken (Standard, Mit Adressblatt) Drucken (Standard, Ohne Adressblatt) Drucken (Individuell, Mit Adressblatt) Drucken (Individuell, Ohne Adressblatt)

Ich denke , das wäre für den Anwender einfacher zu verstehen. @dippeal was meinst du?

Danke für den Hinweis zu den Buttons. Das habe ich übersehen. Die sollten natürlich angeglichen werden. Ich werde das noch machen.

SchachtnerTh commented 1 month ago

Ist dein Vorschlag so gemeint, dass man die Schalter in den Einstellungen ganz weg macht und einfach im Menü die Einträge ändert, also so: Drucken (Standard, Mit Adressblatt) Drucken (Standard, Ohne Adressblatt) Drucken (Individuell, Mit Adressblatt) Drucken (Individuell, Ohne Adressblatt)

Ja, so hätte ich mir das vorstellen können. Alternativ könnte man vielleicht sogar "irgendwo" noch eine Checkbox einbauen, dass man die Adressblätter ausdrucken möchte, dann bräuchten wir nur noch zwei Schaltflächen.

Dass diese Checkbox nicht in den Einstellungen sein sollte, verstehe ich, weil man ja vielleicht die Bescheinigungen, die man per Mail ausdruckt ohne und die für Mailversand mit Adressblatt erstellen möchte. Dafür allerdings einen zusätzlichen Dialog einzublenden, der nur fragt, ob man Adressblätter drucken möchte, ist auch übertrieben.

Vier Schaltflächen sind andererseits auch nicht verkehrt, denke ich. Wenn sie dann noch so beschriftet sind, wie Du vorschlägst, versteht auch jeder, was genau passiert, wenn man die drückt.

JohannMaierhofer commented 1 month ago

Ich mache das dann so. Das mit den Schaltern in den Einstellung kommt hat von der Historie als es das per Mail verschicken noch nicht gab. Da wer ein Schalter einfacher und man musste im Menü nicht zwei Einträge machen. Jetzt mit dem Mailversand hat man sowieso zwei Einträge und dann ist es so verstämdlicher. Bezüglich dem Word "Drucken" im Menü und "PDF" auf dem Button werde ich wohl auch im Menü "PDF" nehmen weil auch in anderen Views öfter mal "PDF" vorkommt.

SchachtnerTh commented 1 month ago

👍 -- Diese Nachricht wurde von meinem Android-Mobiltelefon mit K-9 Mail gesendet.

dippeal commented 1 month ago

Drucken (Standard, Mit Adressblatt) Drucken (Standard, Ohne Adressblatt) Drucken (Individuell, Mit Adressblatt) Drucken (Individuell, Ohne Adressblatt)

Mein Vorschlag wäre: PDF (Standard) PDF (Standard, mit Adressblatt) PDF (Individuell) PDF (Individuell, mit Adressblatt)

JohannMaierhofer commented 1 month ago

Mein Vorschlag wäre: PDF (Standard) PDF (Standard, mit Adressblatt) PDF (Individuell) PDF (Individuell, mit Adressblatt)

Ok, mache ich so.

JohannMaierhofer commented 1 month ago

Jetzt habe ich noch eine Frage. Im Dialog für Mailversand hatte ich früher automatisch Mailversand gesetzt. Das gibt es jetzt nicht mehr. Jetzt brächte ich hier vier Drucken Buttens was auch nicht schön ist. Meine Idee wäre aber einer der Schalter in den Einstellungen wieder zu verwenden um zu entscheiden ob ein Adressblatt gedruckt werden soll, also etwa so: Bildschirmfoto_20240723_141212

Bildschirmfoto_20240723_140512

Was meint ihr?

JohannMaierhofer commented 1 month ago

@dippeal und @willuhn Ich ahbe eine Frage an euch. Ich habe ein Update0437 welches ich wegen der Modifikation hier nicht mehr brauche. Es ereugt eine Column die jetzt wegfällt. Es ist noch nicht in einer offiziellen Version enthalten. Ich könnte jetzt eine Migration machen die die Column wieder löscht. Ich habe aber gesehen, dass es einen Ordner DDLTool.Updates.deaktiviert gibt. Könnte ich die Migrationsklasse dort hineinschieben? Laufen dann die anderen Migrationen durch und die 437 wird ausgelassen?

Nachdem ich gesehen habe, dass es in den deaktivierten eine 400 gibt und in den regulären ist das wohl nicht so gedacht.

dippeal commented 1 month ago

Hat bei mir nicht geklappt mit dem verschieben von Update0437 in deaktiviert. Das "spendenbescheinigungadressem" (Typofehler inklusive) wird trotzdem angelegt/versucht anzulegen. Ich wäre dafür den PR zu erweitern und die Updates aufzuräumen, so dass 0439 das letzte Update ist.

JohannMaierhofer commented 1 month ago

Habe es jetzt wie vorgeschlagen gelöst. Bildschirmfoto_20240723_151722 Bildschirmfoto_20240723_151755 Bildschirmfoto_20240723_141212

In einer Migration lösche ich die nicht benötigte Column. Ich glaube so ist es am besten. Muss halt jetzt die anderen Pull Requests hochziehen.

JohannMaierhofer commented 1 month ago

Hat bei mir nicht geklappt mit dem verschieben von Update0437 in deaktiviert. Das "spendenbescheinigungadressem" (Typofehler inklusive) wird trotzdem angelegt/versucht anzulegen. Ich wäre dafür den PR zu erweitern und die Updates aufzuräumen, so dass 0439 das letzte Update ist.

Ich hatte jetzt einen 0440 angelegt zum Löschen der Column. Um als letztes die 0439 zu lassen hätte ich auch den Code in 0437 auskommentieren können. Dann würde er auch nicht mehr laufen. Alle die aber die Nightly Builds schon benutzen hätten aber die zusätzliche Spalte. So schlimm wäre das wohl auch nicht.

SchachtnerTh commented 1 month ago

Was meint ihr?

Vielleicht sollte dieser Dialog überhaupt keine Möglichkeit bieten, PDFs zu erstellen? Was, wenn wir das als Zwei-Schritt-Prozess sehen:

  1. Erstellen der Spendenbescheinigungen
  2. Verteilen der Spendenbescheinigungen

Werden die Spendenbescheinigungen auf einem Drucker ausgedruckt, kann man nur die drucken, die vorher auch erstellt worden sind. Was, wenn wir das beim Versenden per Mail auch so machen und dort nur geprüft wird, ob die zugehörigen PDFs bereits gedruckt sind? Sie können aber nicht gedruckt werden. Dafür haben wir ja bereits zwei andere Möglichkeiten.

Der Satz "Wenn sie schon gedruckt wurden, ..." würde mich vermutlich sowieso verunsichern und ich würde die nochmal alle neu erstellen, weil ich ja veilleicht vergessen habe, eine auszudrucken.

Wenn nicht für alle markierten Bescheinigungen bereits ein PDF vorliegt, kann dieser Dialog angezeigt werden mit einem Text wie: "Es sind noch nicht für alle Spendenbescheinigungen PDFs erzeugt worden. Bitte vor dem Versand erst die PDF-Dateien erzeugen." Dieser Dialog könnte zwei Buttons haben: einen Button "OK" und einen Button "OK, fehlende Bescheinigungen auswählen". Mit diesem Button könnte man dann alle die Bescheinigungen in der Ausgangsliste markieren, für die es noch kein PDF gibt und dann hat der Anwender in der Spendenbescheinigungen-Liste die Möglichkeit, die Bescheinigungen mit dem richtigen Button zu erstellen.

Nachteil: Wenn man den Button "OK, fehlende Bescheinigungen auswählen" anklickt, sind die ursprünglich ausgewählten Spendenbescheinigungen nicht mehr ausgewählt und man weiß vielleicht nicht mehr, für wen man eine Quittung drucken wollte. Wenn man "OK" auswählt, bleiben zwar die ursprünglich ausgewählten Spendenbescheinigungen ausgewählt, aber man weiß dann nicht, bei wem genau das PDF noch fehlt.

Oder noch eine andere Möglichkeit: Wir lassen dem Anwender die Wahl, das Versenden abzubrechen und in der Liste der Spendenbescheinigungen die automatisch auszuwählen, für die es noch keine PDF-Datei gibt. Dann kann sie der Anwender gleich erstellen. Er muss halt dann wieder alle Bescheinigungen auswählen, die versandt werden sollen und den Mailversand noch einmal starten. (genau das selbe wie oben...)

Die andere Auswahlmöglichkeit ist die, dass in einem ersten Schritt nur die versandt werden, für die es bereits PDFs gibt. Die anderen werden dann im Anschluss an den Versand in der Liste markiert und der Anwender kann dann für die mit seinen vier Buttons die richtigen Spendenquittungen erzeugen und dann gleich im Anschluss in einem zweiten Batch versenden.

Das heißt, wir verwenden den gleichen Dialog wie oben, aber mit folgendem Text:

"Es sind noch nicht für alle Spendenbescheinigungen PDFs erzeugt worden. Wie möchten Sie fortfahren?

Sollen die Bescheinigungen ausgewählt werden für die noch keine PDF-Dateien vorhanden sind? Bitte dann auf "Fehlende markieren" klicken.

Sollen die Spendenbescheinigungen versandt werden, für die es bereits PDF-Dateien gibt? Dann "Bestehende versenden" auswählen. Die fehlenden Bescheinigungen bleiben im Anschluss ausgewählt, so dass im Nachgang die PDF-Dateien erzeugt und diese dann verschickt werden können."

Keine Ahnung, ob das so elegant ist, aber wir würden uns die zusätzlichen vier Buttons sparen...

JohannMaierhofer commented 1 month ago

Ich sehe schon, dass es hier Verwirrungen geben kann. Ich bin selbst auch nicht mehr so ganz glücklich über diesen Dialog. Nachdem ich mich mit den Mahnungen und Rechnungen beschäftigt hatte habe ich auch hinzugelernt, dass es den ZipMailer gibt. Den habe ich auch beim Feature #236 eingebaut um Kontoauszüge zu verschicken. Ich denke ich sollte das hier analog machen. Dann werden keine PDFs gedruckt sondern nur ein ZIP File mit den PDFs und das immer unabhängig ob schon separate PDFs erzeugt wurden. Im Mail Dialog kann man dann auswählen ob man das Adressblatt haben will oder nicht.

JohannMaierhofer commented 1 month ago

Jetzt habe ich beide Einstellungen entfernt. Der Auswahldialog beim Mailversand ist entfernt und es wird immer gedruckt. Bestehende Bescheinigungen werden halt überschrieben. Die Auswahl der Ausgabeart und des Adressblattes erfolgt im Mail View. Da die Einstellung in den Settings gespeichert wird muss man die auch nicht immer ändern. Mir gefällt das jetzt auch besser. Bildschirmfoto_20240723_182455

PS: Das mit dem ZipMailer war mir hier doch zu aufwändig, also habe ich das bestehende Versenden gelassen.

JohannMaierhofer commented 1 month ago

Stimmt. Dann wäre alles gleich implementiert.

Aber mir würde es jetzt scho so reichen, wie es jetzt ist. Das ist jetzt sehr viel besser als vorher. Und man muss auch mal mit was zufrieden sein können ;-) Vielleicht können wir uns das ja mal vormerken. Es hängt halt auch jede Menge Arbeit dran. Ich hab jetzt ein paar Tage Zeit, weil ich Urlaub hab. Aber ich kann dieses Tempo nicht dauernd durchhalten...