X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FController%2FCsvImport%2FBaseMulti.pm;h=5168ae28c8c0edbd8ca736e1910c20ec947d760b;hb=7a3c31d44c832fbd4f7af132308b9a51bb1395d4;hp=7ab7062c077ad0a2778b94f4e712d2f52ac572d8;hpb=320664922d387971c50ff1070abc2b73050a024f;p=kivitendo-erp.git diff --git a/SL/Controller/CsvImport/BaseMulti.pm b/SL/Controller/CsvImport/BaseMulti.pm index 7ab7062c0..5168ae28c 100644 --- a/SL/Controller/CsvImport/BaseMulti.pm +++ b/SL/Controller/CsvImport/BaseMulti.pm @@ -22,7 +22,7 @@ sub run { my $profile = $self->profile; - $self->csv(SL::Helper::Csv->new(file => $self->file->file_name, + $self->csv(SL::Helper::Csv->new(file => ('SCALAR' eq ref $self->file)? $self->file: $self->file->file_name, encoding => $self->controller->profile->get('charset'), profile => $profile, ignore_unknown_columns => 1, @@ -94,6 +94,17 @@ sub run { $::myconfig{numberformat} = $old_numberformat; } +sub init_manager_class { + my ($self) = @_; + + my @manager_classes; + foreach my $class (@{ $self->class }) { + $class =~ m/^SL::DB::(.+)/; + push @manager_classes, "SL::DB::Manager::" . $1; + } + $self->manager_class(\@manager_classes); +} + sub add_columns { my ($self, $row_ident, @columns) = @_; @@ -158,6 +169,8 @@ sub init_cvar_columns_by { sub handle_cvars { my ($self, $entry, %params) = @_; + return if @{ $entry->{errors} }; + my %type_to_column = ( text => 'text_value', textfield => 'text_value', select => 'text_value',