From b185fd3fe3801784186d9a35125f49d92960aa18 Mon Sep 17 00:00:00 2001 From: Katrin Fischer Date: Mon, 29 May 2023 15:41:44 +0000 Subject: [PATCH] Bug 22135: Display 'shelved out of order' error in inventory CSV export When using the inventory tool with an uploaded barcode file and checking the "Compare barcodes list to results", "Check barcodes list for items shelved out of order" and "Export to CSV file" checkboxes, the resulting CSV file showed a blank in the "problem" column for items with out of order callnumbers. With this patch, you'll see "Shelved out of order". To test: * Create 3 items with callnumbers and barcodes a, b, and c * Go to Cataloguing > Inventory * Enter a c b (each on its own line) into the barcode field * Check "Compare barcodes list to results" * Check "Check barcodes list for items shelved out of order" * Check "Export to CSV file" (at the bottom) * Verify the file has empty lines in the problem column * Apply patch * Repeat test, the empty lines should now read: "Shelved out of order" Note: Also fixes "problem" to "Problem" to make capitalization consistent. All those strings are currently not translatable, this will be filed separately. Co-authored-by: Mark Alexander Signed-off-by: David Nind Signed-off-by: Kyle M Hall Signed-off-by: Tomas Cohen Arazi (cherry picked from commit 5d35c3596da488b61f49fd605872de02f0f31fe4) Signed-off-by: Fridolin Somers --- tools/inventory.pl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tools/inventory.pl b/tools/inventory.pl index 6038931f62..ca52b8faba 100755 --- a/tools/inventory.pl +++ b/tools/inventory.pl @@ -395,7 +395,7 @@ if (defined $input->param('CSVexport') && $input->param('CSVexport') eq 'on'){ my ( $table, $column ) = split '\.', $key; push @translated_keys, NormalizeString($columns->{$table}->{$column} // ''); } - push @translated_keys, 'problem' if $uploadbarcodes; + push @translated_keys, 'Problem' if $uploadbarcodes; $csv->combine(@translated_keys); print $csv->string, "\n"; @@ -418,6 +418,8 @@ if (defined $input->param('CSVexport') && $input->param('CSVexport') eq 'on'){ $errstr .= "no barcode,"; } elsif( $key eq 'checkedout' ) { $errstr .= "checked out,"; + } elsif( $key eq 'out_of_order' ) { + $errstr .= "shelved out of order,"; } } $errstr =~ s/,$//; -- 2.39.5