Bug 33262: Store the biblionumber of a deleted record in the order line
authorKatrin Fischer <katrin.fischer@bsz-bw.de>
Thu, 4 May 2023 12:15:36 +0000 (12:15 +0000)
committerTomas Cohen Arazi <tomascohen@theke.io>
Fri, 5 May 2023 13:18:33 +0000 (10:18 -0300)
commitc8faeac4cd4cfdeab04c25bedb534d3823bbe83c
tree1fd03cacde9e180f12877e3207aad84b8c69b976
parent0cf7687e833986d95ce9fa49bdb33252944fbbea
Bug 33262: Store the biblionumber of a deleted record in the order line

When a bibliographic record is deleted and linked to an order
in the acquisition module, the biblionumber in the order line is
currently deleted as well. This makes it impossible to tell what
was ordered in the first place. This is a big issue for libraries
that need to be able to track how money was spent over long periods
of time.

With this patch the biblionumber of the deleted record will be moved
to a new column deleted_biblionumber in the order line, keeping the FK
on biblionumber.

To test:
* Apply patch, run dataase update
* Create a order/basket in the acquisitions module
* Order several things, you can use existing records from the sample data
* Make sure you order one of the records at least twice
* Take a look at the aqorders table in your database, using a report:

  SELECT biblionumber, deleted_biblionumber, ordernumber from aqorders;

* From the catalog, delete the items on the records and then the records

  Note: There is a warning about attached orders warning about consequences
  for acquisitions. I have chosen to keep it at this point in time, as
  there are still visible side effects of deleting the record, like bug 10758.

* Re-run the report and compare results to the first run. deleted_biblionumber
  should now be filled with the biblionumber of the deleted record.
  biblionumber should be NULL/empty.

Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Nick Clemens <nick@bywatersolutions.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
C4/Biblio.pm