X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/mfinanz.git/blobdiff_plain/280cbfe97461e08c8dbc604dd487b08b79ffd8ed..8ae2bc4fb4c72f3ac907a3e47c0cbd5da23f62c5:/SL/Controller/CsvImport/Part.pm diff --git a/SL/Controller/CsvImport/Part.pm b/SL/Controller/CsvImport/Part.pm index 3c781aad6..30c3719ca 100644 --- a/SL/Controller/CsvImport/Part.pm +++ b/SL/Controller/CsvImport/Part.pm @@ -103,9 +103,15 @@ sub check_objects { return unless @{ $self->controller->data }; + $self->controller->track_progress(phase => 'building data', progress => 0); + $self->makemodel_columns({}); + my $i; + my $num_data = scalar @{ $self->controller->data }; foreach my $entry (@{ $self->controller->data }) { + $self->controller->track_progress(progress => $i/$num_data * 100) if $i % 100 == 0; + $self->check_buchungsgruppe($entry); $self->check_type($entry); $self->check_unit($entry); @@ -120,6 +126,8 @@ sub check_objects { $self->handle_cvars($entry); $self->handle_makemodel($entry); $self->set_various_fields($entry); + } continue { + $i++; } $self->add_columns(qw(type)) if $self->settings->{parts_type} eq 'mixed'; @@ -365,7 +373,7 @@ sub handle_makemodel { my $found_any; my @makemodels; - foreach my $idx (map { substr $_, 5 } grep { m/^make_\d+$/ && $entry->{raw_data}->{$_} } keys %{ $entry->{raw_data} }) { + foreach my $idx (sort map { substr $_, 5 } grep { m/^make_\d+$/ && $entry->{raw_data}->{$_} } keys %{ $entry->{raw_data} }) { my $vendor = $entry->{raw_data}->{"make_${idx}"}; $vendor = $self->vc_by->{id}-> { $vendor } || $self->vc_by->{number}->{vendors}->{ $vendor } @@ -457,10 +465,10 @@ sub setup_displayable_columns { { name => 'image', description => $::locale->text('Image') }, { name => 'lastcost', description => $::locale->text('Last Cost') }, { name => 'listprice', description => $::locale->text('List Price') }, - { name => 'make_X', description => $::locale->text('Make (with X being a number)') }, + { name => 'make_X', description => $::locale->text('Make (vendor\'s database ID, number or name; with X being a number)') . ' [1]' }, { name => 'microfiche', description => $::locale->text('Microfiche') }, - { name => 'model_X', description => $::locale->text('Model (with X being a number)') }, - { name => 'lastcost_X', description => $::locale->text('Lastcost (with X being a number)') }, + { name => 'model_X', description => $::locale->text('Model (with X being a number)') . ' [1]' }, + { name => 'lastcost_X', description => $::locale->text('Lastcost (with X being a number)') . ' [1]' }, { name => 'not_discountable', description => $::locale->text('Not Discountable') }, { name => 'notes', description => $::locale->text('Notes') }, { name => 'obsolete', description => $::locale->text('Obsolete') }, @@ -496,4 +504,4 @@ sub setup_displayable_columns { } } -1; \ No newline at end of file +1;