@@ -, +, @@ file uploads $barcode = ; $barcode =~ s/\r/\n/g; $barcode =~ s/\n\n/\n/g; $barcode =~ s/\n$//; $barcode =~ s/^\n//; my @data = split(/\n/, $barcode); push @uploadedbarcodes,@data; --------- --- BEGIN EXAMPLE --- --- END EXAMPLE --- -- This will take a LONG time, at least 1 minute. -- eventual results will be wrong. -- This time correct number of barcodes will be given. --- tools/inventory.pl | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) --- a/tools/inventory.pl +++ a/tools/inventory.pl @@ -161,6 +161,7 @@ if ( $uploadbarcodes && length($uploadbarcodes) > 0 ) { my $count = 0; my @barcodes; + my @uploadedbarcodes; my $sth = $dbh->column_info(undef,undef,"items","barcode"); my $barcode_def = $sth->fetchall_hashref('COLUMN_NAME'); @@ -169,8 +170,15 @@ if ( $uploadbarcodes && length($uploadbarcodes) > 0 ) { my $err_data=0; my $lines_read=0; binmode($uploadbarcodes, ":encoding(UTF-8)"); - while (my $barcode=<$uploadbarcodes>){ - $barcode =~ s/\r?\n$//; + while (my $barcode=<$uploadbarcodes>) { + $barcode =~ s/\r/\n/g; + $barcode =~ s/\n\n/\n/g; + $barcode =~ s/\n$//; + $barcode =~ s/^\n//; + my @data = split(/\n/,$barcode); + push @uploadedbarcodes, @data; + } + for my $barcode (@uploadedbarcodes) { next unless $barcode; ++$lines_read; if (length($barcode)>$barcode_size) { --