X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FCsvImport%2FCustomerVendor.pm;h=9e0c4d5a0fc921ac3f5c0520b1d7ac898d6e0514;hb=228dfbdc7b671f8c8ac8254ae7cda2e3675351ae;hp=0d6db32c57ee8a69609aaaf22243f3a52fb94e13;hpb=5d7c5a5b1375c5b6cf29fb48ea5a3de97ba24154;p=kivitendo-erp.git diff --git a/SL/Controller/CsvImport/CustomerVendor.pm b/SL/Controller/CsvImport/CustomerVendor.pm index 0d6db32c5..9e0c4d5a0 100644 --- a/SL/Controller/CsvImport/CustomerVendor.pm +++ b/SL/Controller/CsvImport/CustomerVendor.pm @@ -3,6 +3,7 @@ package SL::Controller::CsvImport::CustomerVendor; use strict; use SL::Helper::Csv; +use SL::Controller::CsvImport::Helper::Consistency; use SL::DB::Business; use SL::DB::CustomVariable; use SL::DB::CustomVariableConfig; @@ -65,13 +66,20 @@ sub check_objects { $self->check_language($entry); $self->check_business($entry); $self->check_payment($entry); + $self->check_currency($entry, take_default => 1); $self->handle_cvars($entry); next if @{ $entry->{errors} }; + my @cleaned_fields = $self->clean_fields(qr{[\r\n]}, $object, qw(name department_1 department_2 street zipcode city country contact phone fax homepage email cc bcc + taxnumber account_number bank_code bank username greeting)); + + push @{ $entry->{information} }, $::locale->text('Illegal characters have been removed from the following fields: #1', join(', ', @cleaned_fields)) + if @cleaned_fields; + my $existing_vc = $vcs_by_number{ $object->$numbercolumn }; if (!$existing_vc) { - $vcs_by_number{ $object->$numbercolumn } = $object; + $vcs_by_number{ $object->$numbercolumn } = $object if $object->$numbercolumn; } elsif ($update_policy eq 'skip') { push(@{$entry->{errors}}, $::locale->text('Skipping due to existing entry in database')); @@ -247,6 +255,8 @@ sub setup_displayable_columns { { name => 'contact', description => $::locale->text('Contact') }, { name => 'country', description => $::locale->text('Country') }, { name => 'creditlimit', description => $::locale->text('Credit Limit') }, + { name => 'currency', description => $::locale->text('Currency') }, + { name => 'currency_id', description => $::locale->text('Currency (database ID)') }, { name => 'customernumber', description => $::locale->text('Customer Number') }, { name => 'department_1', description => $::locale->text('Department 1') }, { name => 'department_2', description => $::locale->text('Department 2') },