X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FBankTransaction.pm;h=b07cdf11f6ede506508ca1aafc2f20a520f1b12b;hb=c5057972d03f3546494fabe72224785e5a0a1714;hp=c02ebb93e76c9c94437421bc69498ffccee9f086;hpb=add79c20d936ac783f2c378dd5aa39e7b24148c2;p=kivitendo-erp.git diff --git a/SL/DB/BankTransaction.pm b/SL/DB/BankTransaction.pm index c02ebb93e..b07cdf11f 100644 --- a/SL/DB/BankTransaction.pm +++ b/SL/DB/BankTransaction.pm @@ -99,13 +99,16 @@ sub get_agreement_with_invoice { $bank_code = $invoice->vendor->bank_code if ! $invoice->is_sales; $iban = $invoice->vendor->iban if ! $invoice->is_sales; $account_number = $invoice->vendor->account_number if ! $invoice->is_sales; - if ( $bank_code eq $self->remote_bank_code && $account_number eq $self->remote_account_number ) { - $agreement += $points{remote_account_number}; - $rule_matches .= 'remote_account_number(' . $points{'remote_account_number'} . ') '; - } - if ( $iban eq $self->remote_account_number ) { - $agreement += $points{remote_account_number}; - $rule_matches .= 'remote_account_number(' . $points{'remote_account_number'} . ') '; + + # check only valid remote_account_number (with some content) + if ($self->remote_account_number) { + if ($bank_code eq $self->remote_bank_code && $account_number eq $self->remote_account_number) { + $agreement += $points{remote_account_number}; + $rule_matches .= 'remote_account_number(' . $points{'remote_account_number'} . ') '; + } elsif ($iban eq $self->remote_account_number) { # elsif -> do not add twice + $agreement += $points{remote_account_number}; + $rule_matches .= 'remote_account_number(' . $points{'remote_account_number'} . ') '; + } } my $datediff = $self->transdate->{utc_rd_days} - $invoice->transdate->{utc_rd_days}; @@ -122,7 +125,7 @@ sub get_agreement_with_invoice { # compare open amount, preventing double points when open amount = invoice amount if ( $invoice->amount != $invoice->open_amount && abs(abs($invoice->open_amount) - abs($self->amount)) < 0.01 && - $::form->format_amount(\%::myconfig,abs($invoice->amount_less_skonto),2) eq + $::form->format_amount(\%::myconfig,abs($invoice->open_amount),2) eq $::form->format_amount(\%::myconfig,abs($self->amount),2) ) { $agreement += $points{exact_open_amount};