X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FReconciliation.pm;h=6f8ebfe8f8dceb2224d34bcca2ed5f67bf404eb2;hb=333c3b918b2a1aead73151eca91a70f3b5c8ca11;hp=c9d415f1e62184cf8b1dbb59f0aa693decd82d12;hpb=3810d658da001bdf828e6a19b194d0876c7b63e1;p=kivitendo-erp.git diff --git a/SL/Controller/Reconciliation.pm b/SL/Controller/Reconciliation.pm index c9d415f1e..6f8ebfe8f 100644 --- a/SL/Controller/Reconciliation.pm +++ b/SL/Controller/Reconciliation.pm @@ -88,7 +88,7 @@ sub action_update_reconciliation_table { my $output = $self->render('reconciliation/assigning_table', { output => 0 }, bt_sum => $::form->format_amount(\%::myconfig, $self->{bt_sum}, 2), bb_sum => $::form->format_amount(\%::myconfig, -1 * $self->{bb_sum}, 2), - show_button => !@errors + errors => @errors, ); my %result = ( html => $output ); @@ -183,9 +183,6 @@ sub action_reconcile_proposals { my $rec_group = SL::DB::Manager::ReconciliationLink->get_new_rec_group(); my $bank_transaction = SL::DB::Manager::BankTransaction->find_by(id => $bt_id); $bank_transaction->cleared('1'); - if ( $bank_transaction->isa('SL::DB::BankTransaction') ) { - $bank_transaction->invoice_amount($bank_transaction->amount); - } $bank_transaction->save; foreach my $acc_trans_id (@{ $::form->{proposal_list}->{$bt_id}->{BB} }) { SL::DB::ReconciliationLink->new( @@ -344,7 +341,7 @@ sub _get_elements_and_validate { } if ($::form->round_amount($bt_sum + $bb_sum, 2) != 0) { - push @errors, t8('Out of balance!'); + push @errors, t8('Out of balance!'), t8('Sum of bank #1 and sum of bookings #2',$bt_sum, $bb_sum); } $self->{ELEMENTS} = \@elements; @@ -360,7 +357,9 @@ sub _reconcile { # 1. step: set AccTrans and BankTransactions to 'cleared' foreach my $element (@{ $self->{ELEMENTS} }) { $element->cleared('1'); - $element->invoice_amount($element->amount) if $element->isa('SL::DB::BankTransaction'); + # veto either invoice_amount is fully assigned or not! No state tricks in later workflow! + # invoice_amount should be a distinct sign, that some bookings were really made from a bank transaction + # $element->invoice_amount($element->amount) if $element->isa('SL::DB::BankTransaction'); $element->save; }