X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FCsvImportProfile.pm;h=b816bedb80fedd0f0a643b4517c1a89b7e09af38;hb=1b032ef45d886922f1fe347ec234c9b0c8c50efd;hp=ea7b4fe287cec7addf07618f12477e77294593fa;hpb=dccc54aac0eadf75ce892976a0ec53b142291b26;p=kivitendo-erp.git diff --git a/SL/DB/CsvImportProfile.pm b/SL/DB/CsvImportProfile.pm index ea7b4fe28..b816bedb8 100644 --- a/SL/DB/CsvImportProfile.pm +++ b/SL/DB/CsvImportProfile.pm @@ -4,7 +4,7 @@ use strict; use List::Util qw(first); -use SL::DB::MetaSetup::CsvImportProfile; +require SL::DB::MetaSetup::CsvImportProfile; __PACKAGE__->meta->add_relationship( settings => { @@ -38,25 +38,10 @@ sub set_defaults { escape_char => '"', charset => 'CP850', numberformat => $::myconfig{numberformat}, + dateformat => $::myconfig{dateformat}, duplicates => 'no_check', ); - if ($self->type eq 'parts') { - my $bugru = SL::DB::Manager::Buchungsgruppe->find_by(description => { like => 'Standard%19%' }); - - $self->_set_defaults(sellprice_places => 2, - sellprice_adjustment => 0, - sellprice_adjustment_type => 'percent', - article_number_policy => 'update_prices', - shoparticle_if_missing => '0', - parts_type => 'part', - default_buchungsgruppe => ($bugru ? $bugru->id : undef), - apply_buchungsgruppe => 'all', - ); - } else { - $self->_set_defaults(table => 'customer'); - } - return $self; } @@ -94,6 +79,24 @@ sub _set_defaults { return $self; } +sub clone_and_reset_deep { + my ($self) = @_; + + my $clone = $self->clone_and_reset; + $clone->settings(map { $_->clone_and_reset } $self->settings); + $clone->is_default(0); + $clone->name(''); + return $clone; +} + +sub flatten { + my ($self) = @_; + + return map { + $_->key => $_->value + } $self->settings; +} + # # hooks #