From 8d3fc1a6fa4a5bebddcc91ebf28f41a5f923d14b Mon Sep 17 00:00:00 2001 From: Jonathan Druart Date: Wed, 3 Mar 2021 12:21:33 +0100 Subject: [PATCH] Bug 27842: Update serial.biblionumber when a subscription is linked with another record It seems that a librarian can edit the biblionumber for a given subscription, however, when receiving serials the biblionumber is pulled from the existing serials, so all new received issues are received on the old biblionumber. This is problematic in light of bug 21901 - you can change the biblionumber, the serials still point to the old biblionumber - and deleting the biblio deletes the serials. Additionally, the update will delete serials where this was the case Test plan: 1 - Create a new subscription 2 - Receive an issue 3 - Edit the subscription and change the biblionumber 4 - Receive another issue 5 - SELECT biblionumber FROM serial => the biblionumber link must have been updated Signed-off-by: Petro Vashchuk Signed-off-by: Kyle M Hall Signed-off-by: Tomas Cohen Arazi Signed-off-by: Jonathan Druart (cherry picked from commit 7e6f30e60eabcf3a18690fbe5eff3ec901d6f067) Signed-off-by: Fridolin Somers (cherry picked from commit 9f16f42953b106ed5fc249b2e41365d2bd5732f9) Signed-off-by: Andrew Fuerste-Henry --- C4/Serials.pm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/C4/Serials.pm b/C4/Serials.pm index b277871bee..709a24315a 100644 --- a/C4/Serials.pm +++ b/C4/Serials.pm @@ -1355,6 +1355,9 @@ sub ModSubscription { mana_id => $mana_id, } )->store; + # FIXME Must be $subscription->serials + # FIXME We shouldn't need serial.subscription (instead use serial->subscription->biblionumber) + Koha::Serials->search({ subscriptionid => $subscriptionid })->update({ biblionumber => $biblionumber }); logaction( "SERIAL", "MODIFY", $subscriptionid, "" ) if C4::Context->preference("SubscriptionLog"); -- 2.39.5