Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision e83fcf3a

Von Jan Büren vor fast 6 Jahren hinzugefügt

  • ID e83fcf3aa3394efdf2293ea60d5510fcfbf41b52
  • Vorgänger c301c2b3
  • Nachfolger d2e07831

Dialogbuchungen aus Bankbewegungen teilweise Verbuchungen erlauben

Da vorher nur komplette Bankbewegungen verbucht werden konnten,
war es nicht sinnvoll Teilbeträge im Dialog zu buchen.
Das Verfahren ist jetzt geändert und übergeben wird der aktuelle
Rest-Betrag der Bankbewegung

Unterschiede anzeigen:

SL/Controller/BankTransaction.pm
569 569
    my $payment_received      = $bank_transaction->amount > 0;
570 570
    my $payment_sent          = $bank_transaction->amount < 0;
571 571

  
572
    croak("No amount left to assign") if ($not_assigned_amount <= 0);
573 572

  
574 573
    foreach my $invoice_id (@{ $params{invoice_ids} }) {
575 574
      my $invoice = SL::DB::Manager::Invoice->find_by(id => $invoice_id) || SL::DB::Manager::PurchaseInvoice->find_by(id => $invoice_id);
......
860 859
    controller                           => 'gl.pl',
861 860
    action                               => 'load_record_template',
862 861
    id                                   => $template->id,
863
    'form_defaults.amount_1'             => abs($self->transaction->amount), # always positive
862
    'form_defaults.amount_1'             => abs($self->transaction->not_assigned_amount), # always positive
864 863
    'form_defaults.transdate'            => $self->transaction->transdate_as_date,
865 864
    'form_defaults.callback'             => $self->callback,
866 865
    'form_defaults.bt_id'                => $self->transaction->id,
bin/mozilla/gl.pl
1365 1365
      die "guru meditation error: Can only assign amount to one bank account booking" if scalar @{ $payment } > 1;
1366 1366

  
1367 1367
      # credit/debit * -1 matches the sign for bt.amount and bt.invoice_amount
1368
      die "Can only assign the full bank amount to a single general ledger booking" unless $bt->amount == $payment->[0]->amount * -1;
1368
      die "Can only assign the full (partial) bank amount to a single general ledger booking"
1369
        unless $bt->not_assigned_amount == $payment->[0]->amount * -1;
1370

  
1369 1371
      $bt->update_attributes(invoice_amount => $bt->invoice_amount + ($payment->[0]->amount * -1));
1370 1372

  
1371 1373
      # create record_link

Auch abrufbar als: Unified diff