X-Git-Url: http://wagnertech.de/git?a=blobdiff_plain;f=SL%2FDB%2FCsvImportProfile.pm;h=21dd4842d825a464296dbca931b41d8793619ea3;hb=6f74e4e27fcc35d7fb8955fe0de3b4ae5687df2d;hp=58e3d6838864041ae20191658d2bfe5fda646aa9;hpb=1abd784542136a7ce095ae97c754aae088acf1bb;p=kivitendo-erp.git diff --git a/SL/DB/CsvImportProfile.pm b/SL/DB/CsvImportProfile.pm index 58e3d6838..21dd4842d 100644 --- a/SL/DB/CsvImportProfile.pm +++ b/SL/DB/CsvImportProfile.pm @@ -4,7 +4,8 @@ use strict; use List::Util qw(first); -use SL::DB::MetaSetup::CsvImportProfile; +require SL::DB::MetaSetup::CsvImportProfile; +use Rose::DB::Object::Helpers qw(clone_and_reset); __PACKAGE__->meta->add_relationship( settings => { @@ -48,10 +49,9 @@ sub set_defaults { sellprice_adjustment => 0, sellprice_adjustment_type => 'percent', article_number_policy => 'update_prices', - part_group_sep_char => '!', shoparticle_if_missing => '0', parts_type => 'part', - default_buchungsgruppe => ($bugru ? $bugru->description : undef), + default_buchungsgruppe => ($bugru ? $bugru->id : undef), apply_buchungsgruppe => 'all', ); } else { @@ -95,6 +95,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->name(''); + + return $clone; +} + +sub flatten { + my ($self) = @_; + + return map { + $_->key => $_->value + } $self->settings; +} + # # hooks #