Projekt

Allgemein

Profil

Fehler #243

Kontoauszug verbuchen: Nach dem Buchen in Belegen (Vorlagen) wird beim Rücksprung die aktuelle Ansicht nicht erneuert

Von Jan Büren vor fast 7 Jahren hinzugefügt. Vor fast 7 Jahren aktualisiert.

Status:
Gelöst
Priorität:
Normal
Zugewiesen an:
-
Zielversion:
Beginn:
21.06.2017
Abgabedatum:
% erledigt:

100%

Geschätzter Aufwand:

Beschreibung

Das kann im schlechtesten Fall dazu führen, dass Zahlungen mehrfach verbucht werden, da der Anwender ansonsten eine andere Erwartung hat.

Zusätzlich wird auch keine Verknüpfung von Zahlungen nach Beleg (aus Vorlage erstellt) erzeugt.

Zugehörige Revisionen

Revision da6ff55e (diff)
Von Jan Büren vor fast 7 Jahren hinzugefügt

behebt #243

Kontoauszug verbuchen: Buchung erstellen ist jetzt ein Schritt
Falls die Zahlung für die Buchung entsprechend passend ist, wird
diese automatisch im zweiten Schritt als Vorschlag angezeigt.
Entsprechende Info an den Benutzer.

Revision bdc9bdd0 (diff)
Von Jan Büren vor fast 7 Jahren hinzugefügt

Behebt #243 Nach Aufruf von Buchung erstellen, keine weitere Kontoverbuchung möglich

Kontoauszug verbuchen: Nach dem Buchen in Belegen (Vorlagen) wird beim Rücksprung die aktuelle Ansicht nicht erneuert
Problem: form->{redirect) verträgt sich nicht mit Controller-Code, von
daher in ap.pl direkt die CallBack URL an den Browser zurückgeben ohne
weitere Rücksicht auf Session-Werte (in diesem Fall auch nicht sinnvoll).

Historie

#1

Von Jan Büren vor fast 7 Jahren aktualisiert

Folgendes müsste passieren:

a)
Buchung erstellen macht wirklich nur das was es sagt: Es erstellt eine Buchung aus einer Vorlagen und macht KEINE zusätzliche Zahlungsverbuchung

oder

b)
Buchung wird erstellt. Zahlung wird gebucht. Zahlung wird verknüpft. bank_transactions.invoice_amount wird gesetzt. Liste der aktuell zu verbuchenden Bankbewegungen wird aktualisiert.

Für den Fall b) fände ich es trotzdem besser, beide Schritte zu trennen, sodass das Zahlungsfeld nicht im Beleg gesetzt wird, sondern durch den Aufruf von assign_invoice im Controller BankTransactions.pm

Ich tendiere zu a), da einfach zuviel im Hintergrund bei dem Prozess passiert OHNE eine wirkliche Rückmeldung an den Benutzer zu geben.

Ich hab folgendes zum Testen ausprobiert:

i) Zahlungswert und Zahlungskonto nicht an ap.pl übergeben
ii) Callback dann nach ajax_accept_invoices anstatt nach list und die gerade generierte id übergeben

In einem Optimal-Fall lande ich direkt beim Vorschlag Rechnung verbuchen und kann noch einmal kontrollieren sowie Beleg und Memo setzen.
Alle weiteren Fehlerroutinen und Rückmeldung an dem Benutzer aus dem Controller werden DANACH sauber durchgeführt.

Offen wäre dann noch:
a) Eingabe von Zahlungen in ap.pl verhindern
b) Die erstellte Buchung so verhunzen, dass sie nicht mehr zur Bankbewegung passt, um zu sehen ob BankTransactions umkippt oder ggf. auch nicht.

Hier der diff:

BankTransactions.pm

304a305,313
> #  $self->callback($self->url_for(
> #    action                => 'list',
> #    'filter.bank_account' => $::form->{filter}->{bank_account},
> #    'filter.todate'       => $::form->{filter}->{todate},
> #    'filter.fromdate'     => $::form->{filter}->{fromdate},
> #  ));
> 
> 
> 
306c315
<     action                => 'list',
---
>     action                => 'ajax_accept_invoices',
309a319,321
>      bt_id                => $::form->{bt_id},
>      invnumber            => $::form->{invnumber},
>      invoice_id           => $::form->{id},
311a324
> 
899,901c912,914
<     'form_defaults.paid_1'     => $::form->format_amount(\%::myconfig, -1 * $self->transaction->amount, 2),
<     'form_defaults.currency'   => $self->transaction->currency->name,
<     'form_defaults.AP_paid_1'  => $self->transaction->local_bank_account->chart->accno,
---
>     #'form_defaults.paid_1'     => $::form->format_amount(\%::myconfig, -1 * $self->transaction->amount, 2),
>     #'form_defaults.currency'   => $self->transaction->currency->name,
>     #'form_defaults.AP_paid_1'  => $self->transaction->local_bank_account->chart->accno,

#2

Von Jan Büren vor fast 7 Jahren aktualisiert

So wie das Verfahren in der beta ist, ist es nicht sinnvoll.

Ich implementiere Variante a), da sind die beiden Schritte klar getrennt und die Zahlungsverbuchungen kann vorher nochmal visuell kontrolliert werden und Warnungen, bzw. Fehlerbehandlung wird auch durchgeführt.

#3

Von Jan Büren vor fast 7 Jahren aktualisiert

  • Status wurde von Neu zu Gelöst geändert
  • % erledigt wurde von 0 zu 100 geändert

Status geändert durch Changeset kivitendo-erp|commit:da6ff55e68bf46e8aef1047f39e59784b090a650.

#4

Von Jan Büren vor fast 7 Jahren aktualisiert

Der Rücksprung scheint doch noch nicht ganz sauber zu sein.

Folgendes Szenario:

a) Einige Rechnungen zuweisen aus der Liste
b) Danach eine Rechnung über Buchung erstellen ->
c) Rücksprung landet auf Vorschlagsauswahl,die vorherige Auswahl wurde vergessen
c.1) Vorschlag speichern löst keine Aktion mehr aus

#5

Von Jan Büren vor fast 7 Jahren aktualisiert

  • Status wurde von Gelöst zu In Bearbeitung geändert
  • Beginn wurde von 08.05.2017 zu 21.06.2017 geändert
  • % erledigt wurde von 100 zu 50 geändert
#6

Von Jan Büren vor fast 7 Jahren aktualisiert

  • Zielversion wurde auf 3.5 gesetzt
#7

Von Jan Büren vor fast 7 Jahren aktualisiert

  • Status wurde von In Bearbeitung zu Gelöst geändert
  • % erledigt wurde von 50 zu 100 geändert

Status geändert durch Changeset kivitendo-erp|commit:bdc9bdd01791fa83f307b937caeae0eab7fc70d2.

Auch abrufbar als: Atom PDF