From 8244792f264baaa2a81afd90fde3b74755d4e549 Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Tue, 16 Mar 2021 11:36:17 +0100 Subject: [PATCH] Bug 27963: (bug 23463 follow-up) Fix touch_all_items.pl MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit This script is used to fix inconsistencies in the items table. Prior to bug 23463, ModItem dealt with that. We need to make some attributes as dirty to make sure the Koha::Item->store method will fix them. Test plan: Be familiar with how touch_all_items is supposed to work and confirm that the different inconsistencies are fixed. Signed-off-by: Joonas Kylmälä Signed-off-by: Martin Renvoize Signed-off-by: Jonathan Druart (cherry picked from commit 8f071b01f5c851a6b066e7084643bd6430e6e8d5) Signed-off-by: Fridolin Somers --- misc/maintenance/touch_all_items.pl | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/misc/maintenance/touch_all_items.pl b/misc/maintenance/touch_all_items.pl index 648190502e..dbf1609221 100755 --- a/misc/maintenance/touch_all_items.pl +++ b/misc/maintenance/touch_all_items.pl @@ -83,8 +83,15 @@ $sth_fetch->execute(); # fetch info from the search while (my ($biblionumber, $itemnumber, $itemcallnumber) = $sth_fetch->fetchrow_array){ - - eval { Koha::Items->find($itemnumber)->itemcallnumber($itemcallnumber)->store; }; + + my $item = Koha::Items->find($itemnumber); + next unless $item; + + for my $c (qw( itemcallnumber cn_source ) ){ + $item->make_column_dirty($c); + } + + eval { $item->store }; my $modok = $@ ? 0 : 1; if ($modok) { -- 2.39.5