X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/kivitendo-erp.git/blobdiff_plain/2c6717d9653f11fd560fdac0a2aa06b4096ba2b6..28d69bb85e934088a56e6e8458cd08d3794e1f8b:/SL/Controller/CsvImport/Base.pm diff --git a/SL/Controller/CsvImport/Base.pm b/SL/Controller/CsvImport/Base.pm index b6bf80117..6a66e8ca1 100644 --- a/SL/Controller/CsvImport/Base.pm +++ b/SL/Controller/CsvImport/Base.pm @@ -30,6 +30,10 @@ sub run { strict_profile => 1, map { ( $_ => $self->controller->profile->get($_) ) } qw(sep_char escape_char quote_char), )); + + my $old_numberformat = $::myconfig{numberformat}; + $::myconfig{numberformat} = $self->controller->profile->get('numberformat'); + $self->csv->parse; $self->controller->errors([ $self->csv->errors ]) if $self->csv->errors; @@ -50,6 +54,8 @@ sub run { $self->check_objects; $self->check_duplicates if $self->controller->profile->get('duplicates', 'no_check') ne 'no_check'; $self->fix_field_lengths; + + $::myconfig{numberformat} = $old_numberformat; } sub add_columns { @@ -296,7 +302,9 @@ sub save_objects { foreach my $entry (@{ $data }) { next if @{ $entry->{errors} }; - if (!$entry->{object}->save) { + my $object = $entry->{object_to_save} || $entry->{object}; + + if (!$object->save) { push @{ $entry->{errors} }, $::locale->text('Error when saving: #1', $entry->{object}->db->error); } else { $self->controller->num_imported($self->controller->num_imported + 1);