Revision ae9cf413
Von Jan Büren vor mehr als 2 Jahren hinzugefügt
| SL/Controller/BankTransaction.pm | ||
|---|---|---|
|       push @{ $self->problems }, $self->save_single_bank_transaction(
 | ||
|         bank_transaction_id => $bank_transaction_id,
 | ||
|         invoice_ids         => $invoice_ids,
 | ||
|         sources             => [  map { $::form->{"sources_${bank_transaction_id}_${_}"} } @{ $invoice_ids } ],
 | ||
|         memos               => [  map { $::form->{"memos_${bank_transaction_id}_${_}"}   } @{ $invoice_ids } ],
 | ||
|         sources             => [  map { $::form->{"sources_${bank_transaction_id}_${_}"}           } @{ $invoice_ids } ],
 | ||
|         memos               => [  map { $::form->{"memos_${bank_transaction_id}_${_}"}             } @{ $invoice_ids } ],
 | ||
|         book_fx_bank_fees   => [  map { $::form->{"book_fx_bank_fees_${bank_transaction_id}_${_}"} } @{ $invoice_ids } ],
 | ||
|         currency_ids        => [  map { $::form->{"currency_id_${bank_transaction_id}_${_}"}       } @{ $invoice_ids } ],
 | ||
|         exchangerates       => [  map { $::form->parse_amount(\%::myconfig, $::form->{"exchangerate_${bank_transaction_id}_${_}"}) } @{ $invoice_ids } ],
 | ||
|       );
 | ||
|       $count += scalar( @{$invoice_ids} );
 | ||
|     }
 | ||
| ... | ... | |
|     my $n_invoices   = 0;
 | ||
|  | ||
|     foreach my $invoice (@{ $data{invoices} }) {
 | ||
|       my $source = ($data{sources} // [])->[$n_invoices];
 | ||
|       my $memo   = ($data{memos}   // [])->[$n_invoices];
 | ||
|       my $source  = ($data{sources} // [])->[$n_invoices];
 | ||
|       my $memo    = ($data{memos}   // [])->[$n_invoices];
 | ||
|       my $fx_rate = ($data{exchangerates} // [])->[$n_invoices];
 | ||
|       my $fx_book = ($data{book_fx_bank_fees}   // [])->[$n_invoices];
 | ||
|       my $currency_id = ($data{currency_ids}   // [])->[$n_invoices];
 | ||
|  | ||
|       $n_invoices++ ;
 | ||
|       # safety check invoice open
 | ||
| ... | ... | |
|                           source        => $source,
 | ||
|                           memo          => $memo,
 | ||
|                           skonto_amount => $free_skonto_amount,
 | ||
|                           exchangerate  => $fx_rate,
 | ||
|                           fx_book       => $fx_book,
 | ||
|                           currency_id   => $currency_id,
 | ||
|                           bt_id         => $bt_id,
 | ||
|                           transdate     => $bank_transaction->valutadate->to_kivitendo);
 | ||
|     my $bank_amount = shift @acc_ids;
 | ||
|     die "Invalid state, calculated invoice_amount differs from expected invoice amount" unless (abs($bank_amount->{return_bank_amount}) - abs($amount_for_booking) < 0.001);
 | ||
|     my $booked_amount = shift @acc_ids;
 | ||
|     use Data::Dumper;
 | ||
|     $main::lxdebug->message(0, 'hier1:' .Dumper $booked_amount);
 | ||
|     $main::lxdebug->message(0, 'hier2:' .Dumper @acc_ids);
 | ||
|     $bank_transaction->invoice_amount($bank_transaction->invoice_amount + $booked_amount * $sign);
 | ||
|     # ... and record the origin via BankTransactionAccTrans
 | ||
|     if (scalar(@acc_ids) < 2) {
 | ||
|       return {
 | ||
Auch abrufbar als: Unified diff
Wechselkurs für Bankverbuchungen eingeben