X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FCsvImport%2FBankTransaction.pm;h=addcb016dd53afbb9c272000a09bcb62e9f217e6;hb=a74845b3f77065c24ab39e7cf0cae01523ed1de7;hp=76e9020afb59a5e3722690a98988e6c4695c2679;hpb=a87694dc525b4eabff11029f1e5401621e2bd3bc;p=kivitendo-erp.git diff --git a/SL/Controller/CsvImport/BankTransaction.pm b/SL/Controller/CsvImport/BankTransaction.pm index 76e9020af..addcb016d 100644 --- a/SL/Controller/CsvImport/BankTransaction.pm +++ b/SL/Controller/CsvImport/BankTransaction.pm @@ -15,6 +15,15 @@ use Rose::Object::MakeMethods::Generic 'scalar --get_set_init' => [ qw(bank_accounts_by) ], ); +sub set_profile_defaults { + my ($self) = @_; + + $self->controller->profile->_set_defaults( + charset => 'UTF8', # override charset from defaults + update_policy => 'skip', + ); +}; + sub init_class { my ($self) = @_; $self->class('SL::DB::BankTransaction'); @@ -99,9 +108,9 @@ sub check_bank_account { my $object = $entry->{object}; - # Check whether or not local_bank_account ID exists and is valid. + # import via id: check whether or not local_bank_account ID exists and is valid. if ($object->local_bank_account_id && !$self->bank_accounts_by->{id}->{ $object->local_bank_account_id }) { - push @{ $entry->{errors} }, $::locale->text('Error: Invalid local bank account'); + push @{ $entry->{errors} }, $::locale->text('Error: unknown local bank account id'); return 0; } @@ -109,11 +118,11 @@ sub check_bank_account { if ($object->local_bank_account_id && $entry->{raw_data}->{local_account_number}) { my $bank_account = $self->bank_accounts_by->{id}->{ $object->local_bank_account_id }; if ($bank_account->account_number ne $entry->{raw_data}->{local_account_number}) { - push @{ $entry->{errors} }, $::locale->text('Error: Invalid local bank account'); + push @{ $entry->{errors} }, $::locale->text('Error: local bank account id doesn\'t match local bank account number'); return 0; } if ($entry->{raw_data}->{local_bank_code} && $entry->{raw_data}->{local_bank_code} ne $bank_account->bank_code) { - push @{ $entry->{errors} }, $::locale->text('Error: Invalid local bank account'); + push @{ $entry->{errors} }, $::locale->text('Error: local bank account id doesn\'t match local bank code'); return 0; } @@ -127,11 +136,11 @@ sub check_bank_account { $bank_account = $self->bank_accounts_by->{iban}->{ $entry->{raw_data}->{local_account_number} }; }; if (!$bank_account) { - push @{ $entry->{errors} }, $::locale->text('Error: Invalid local bank account'); + push @{ $entry->{errors} }, $::locale->text('Error: unknown local bank account') . ": " . $entry->{raw_data}->{local_account_number}; return 0; } if ($entry->{raw_data}->{local_bank_code} && $entry->{raw_data}->{local_bank_code} ne $bank_account->bank_code) { - push @{ $entry->{errors} }, $::locale->text('Error: Invalid local bank account'); + push @{ $entry->{errors} }, $::locale->text('Error: Found local bank account number but local bank code doesn\'t match') . ": " . $entry->{raw_data}->{local_bank_code}; return 0; }