|
Current situation or problem:
Item records need to be deleted manually one by one as there is no mechanism to delete a group of records that can be identified either by a submitted list of identifiers or by a simple query.
In scope:
- Identify records for the deletion by submitting a list of identifiers. Supported identifiers include: item barcodes, item ids (UUIDs), item HRIDs, holdings HRIDs, item accession numbers and item former ids
- Identify records for the deletion by submitting a simple query, for example by a item barcode
- Preview the records that will be deleted. The preview can be exported in the .csv format
- Errors encountered while identifying records are reported and can be exported in the .csv format. The log contains information about affected record (identifier) and the short description of the encountered problem
- Before the records are deleted, the user will have a chance to review them again before committing.
- Once committed records without outstanding dependencies are removed from the system (hard delete) and user is notified about the number of deleted records
- Records that cannot be removed due to the existing dependencies are reported in the error log. The log contains information about affected record (identifier) and short description. The list can be exported in the .csv format
- Honor the item records dependencies that have been implemented in inventory - for more details see additional information below
- All other errors encountered during the deletion are reported with the list of record identifiers and description of the problem. The list of errors can be exported and the .csv format
- Bulk delete of item records requires a separate permission that is independent of the other bulk edit permissions and item delete permissions granted for the deletion of a single record.
- Accessing matching record files, preview files and error messages through Export Manager
Out of scope:
- Soft delete - currently not implemented for item records
- Advance query and cross app searches - to be addressed in Orchid and Poppy (R1, R2 2023) releases
Questions:
- Should bulk edit overwrite the changes made by a user if they were made between the identifiers were submitted and changes were committed? Or should the record be skipped and error message in Error accordion should let the user know about the changes in the version
- Checking item dependencies will take time considering the number of checks that needs to happen. On larger data set it might take a significant amount of time. Should we limit the number of records that can be deleted or should we provide some visual cues to users when the deletion takes longer?
Use cases:
- Have the ability to load a text file with barcodes OR UUID for bulk deletion of items. Partial denial of deletions due to existing dependencies (e.g. checked out) must somehow be indicated and be accessible for further processing (e.g. download log file)
- Batch delete items: Identify a batch of item records (e.g. scan barcodes, list of UUIDs, file from query) and delete all of them. It should not be able to delete any that are tied to, e.g., order or user data (item status checked out, on order, etc.) – system either does not delete these or gives warning and requires approval before deleting
Mockups:
TBD
Additional information:
1. List of currently known item record dependencies (covered by
UIIN-534
Closed
,
UIIN-888
Closed
and
UIIN-2077
Closed
):
- item status : Checked out, On order
- there is a request associated with the item
- circulation log reference
- patron notices?
2. Bulk edit use cases: https://folio-org.atlassian.net/wiki/display/BULKEDIT/Bulk+Edit+Use+Cases
|