$open_invoice->{skonto_type} = 'without_skonto';
foreach ( @{$all_open_sepa_export_items}) {
if ( $_->ap_id == $open_invoice->id || $_->ar_id == $open_invoice->id ) {
- my $factor = ($_->ar_id == $open_invoice->id?1:-1);
+ my $factor = ($_->ar_id == $open_invoice->id ? 1 : -1);
#$main::lxdebug->message(LXDebug->DEBUG2(),"sepa_exitem=".$_->id." for invoice ".$open_invoice->id." factor=".$factor);
$open_invoice->{realamount} = $::form->format_amount(\%::myconfig,$open_invoice->amount*$factor,2);
- push @{$open_invoice->{sepa_export_item}} , $_ ;
+ push @{$open_invoice->{sepa_export_item}}, $_;
$open_invoice->{skonto_type} = $_->payment_type;
$sepa_exports{$_->sepa_export_id} ||= { count => 0, is_ar => 0, amount => 0, proposed => 0, invoices => [], item => $_ };
- $sepa_exports{$_->sepa_export_id}->{count}++ ;
+ $sepa_exports{$_->sepa_export_id}->{count}++;
$sepa_exports{$_->sepa_export_id}->{is_ar}++ if $_->ar_id == $open_invoice->id;
$sepa_exports{$_->sepa_export_id}->{amount} += $_->amount * $factor;
push @{ $sepa_exports{$_->sepa_export_id}->{invoices} }, $open_invoice;
$self->transaction(SL::DB::Manager::BankTransaction->find_by(id => $::form->{bt_id}));
- my $vendor_of_transaction = SL::DB::Manager::Vendor->find_by(account_number => $self->transaction->{remote_account_number});
+ # This was dead code: We compared vendor.account_name with bank_transaction.iban.
+ # This did never match (Kontonummer != IBAN). It's kivis 09/02 (2013) day
+ # If refactored/improved, also consider that vendor.iban should be normalized
+ # user may like to input strings like: 'AT 3333 3333 2222 1111' -> can be checked strictly
+ # at Vendor code because we need the correct data for all sepa exports.
+
+ my $vendor_of_transaction = SL::DB::Manager::Vendor->find_by(iban => $self->transaction->{remote_account_number});
my $use_vendor_filter = $self->transaction->{remote_account_number} && $vendor_of_transaction;
my $templates = SL::DB::Manager::RecordTemplate->get_all(
{ layout => 0 },
title => t8('Create invoice'),
TEMPLATES => $templates,
- vendor_id => $use_vendor_filter ? $vendor_of_transaction->id : undef,
vendor_name => $use_vendor_filter ? $vendor_of_transaction->name : undef,
);
}
my ($self) = @_;
$self->{transaction} = SL::DB::Manager::BankTransaction->find_by(id => $::form->{bt_id});
- my $vendor_of_transaction = SL::DB::Manager::Vendor->find_by(account_number => $self->{transaction}->{remote_account_number});
my @filter;
- push @filter, ('vendor.id' => $::form->{vendor_id}) if $::form->{vendor_id};
push @filter, ('vendor.name' => { ilike => '%' . $::form->{vendor} . '%' }) if $::form->{vendor};
my $templates = SL::DB::Manager::RecordTemplate->get_all(