From: G. Richardson Date: Sun, 6 Mar 2016 19:29:40 +0000 (+0100) Subject: Payment Helper setzt $self->transactions zurück X-Git-Tag: release-3.4.1~370 X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/commitdiff_plain/0d34b38184fdd6a6f1dd1bc7ce509c560e326b4e?ds=inline;hp=0d34b38184fdd6a6f1dd1bc7ce509c560e326b4e Payment Helper setzt $self->transactions zurück Als es noch eine Methode transactions in SL::DB::Helper::Payment gab wurden die acc_trans-Einträge bei Zugriff per $self->transactions jedes Mal aus der Datenbank ausgelesen: (SL::DB::Manager::AccTransaction->get_all(query => [ trans_id => $self->id ]); Seit Commit 01b298ec3 wird stattdessen der aktuelle relationship Array verwendet, wenn die transactions noch nicht ausgelesen wurden werden sie wie oben geladen, wenn sie aber schon existieren dann werden die Transaktionen im Speicher benutzt. Bei den Tests gab es aber das Problem, daß in pay_invoice die acc_trans-Einträge der Zahlungen als AccTrans-Objekte unabhängig vom Rechnungsobjekt gespeichert wurden, und der transaction Array daher nicht aktualisiert wurde. Am Ende von pay_invoice wird nun per forget_related der transaction-Array zurückgesetzt, damit bei der nächsten Verwendung die aktuell gespeicherten Transaktionen nachgeladen werden. ---