+sub new_with_default {
+ my ($class, $type) = @_;
+
+ return $class->new(type => $type)->set_defaults;
+}
+
+sub set_defaults {
+ my ($self) = @_;
+
+ $self->_set_defaults(sep_char => ',',
+ quote_char => '"',
+ escape_char => '"',
+ charset => 'CP850',
+ numberformat => $::myconfig{numberformat},
+ 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',
+ part_group_sep_char => '!',
+ shoparticle_if_missing => '0',
+ parts_type => 'part',
+ default_buchungsgruppe => ($bugru ? $bugru->description : undef),
+ apply_buchungsgruppe => 'all',
+ );
+ } else {
+ $self->_set_defaults(table => 'customer');
+ }
+
+ return $self;
+}
+