MARC Instance - Confirmation screen (MarcInstanceUpdateProcessor)

Description

Purpose/Overview:
Provide a way to confirm the changes after they are committed to the database.
Requirements/Scope:

  1. The functionality is available only for instances with their source set to MARC.

  2. From the existing Confirmation form user can download .mrc file with the MARC records and the record reflect changes made to the existing SRS record:

    1. new fields and subfields are added

    2. existing fields are updated or removed as specified on the bulk edit form.

  3. The is in MARC format and contain the changes committed to the database.

  4. MARC fields provided on the MARC field bulk edit form are matched to the inventory instance note fields according to the existing matching profiles.

    1. Not all subfields will have their inventory instance representation

    2. Some MARC fields cannot be mapped to inventory instance record and the note will be displayed as the general note.

  5. Multiple notes of the same type are separated with the “|” character.

  6. If the note is staff only, the note is followed with “(staff only)” information.

  7. The columns with all updated notes are visible.

Out of scope:

Preview of the records is covered in

Approach:

  1. Prepared .mrc file should be imported with using data-import capabilities.

  2. Unchanged records should be excluded from final mrc file that will be sanded to data-import.

  3. Importing profile should be created and saved in data-import - separate component . Note: Profiles should be narked as hidden in scope of this story.

  4. InstanceUpdateProcessor should be renamed to FolioInstanceUpdateProcessor, existing logic for source FOLIO should be saved.

  5. MarcInstanceUpdateProcessor should be implemented to use data-import capabilities for updating instances with source MARC.

  6. UpdateProcessorFactory should be reworked to support new processor type.

  7. DataImport client should be implemented to cover full cycle of updating instances with source MARC based on already prepared .mrc file .

  8. MarcUpdateService should be implemented to save marc files. This service should be integrated in the commit method of BulkOperationService.

  9. MarcUpdateService should be resolved based on information on BulkOperation and used for saving changes.

  10. Importing errors should be handled and saved according to existing errors handling flow .

Additional information

  • UI representation:

 

  • MARC 21 Note fields:

  • Mapping profiles documentation:

Acceptance criteria:

  • All requirements are met

  • Unit and API tests are written/updated.

Environment

None

Potential Workaround

None

Attachments

10

Checklist

hide

Activity

Show:

Tatsiana HryhoryevaOctober 9, 2024 at 12:07 PM
Edited

Hi ,

Verified on https://folio-snapshot.dev.folio.org/ environment, works as expected

Discrepancies on Confirmation screen are to be addressed in

The following ticket is opened to hide logs from Data import UIDATIMP-1665

Scenario 1 (non-ecs) - Bulk edit MARC Instances with actions add field, append subfield

Scenario 2 (ecs, central tenant) - Bulk edit MARC&FOLIO Instances with actions find&remove field, find&remove subfield

Scenario 3 (ecs, member tenant) - Bulk edit MARC Instances with actions replace data, remove all. Some records do not need changes

 

Tatsiana HryhoryevaOctober 7, 2024 at 9:53 AM

Hi , please take a look to the following issues found during verification on https://folio-snapshot.dev.folio.org/ environment:

Issue 1 - Progress bar is unstable on Confirmation screen

 

Issue 2 - Empty .mrc file is downloaded when “0 records changed“

 

Issue 3 - Once faced the issue of endless “Committing“ in “Bulk edit“ while Data import job completed successfully and records were updated. Could you please take a look at logs?

 

Issue 4 - File with changed records is available for downloading before commit is completed, This might be fixed in

Tatsiana HryhoryevaSeptember 30, 2024 at 12:36 PM

On https://folio-snapshot.dev.folio.org/ environment “Committing“ is displayed endlessly. Should be rechecked after fix

Viachaslau KhandramaiJune 26, 2024 at 11:35 AM

To discuss with job finalization.

Viachaslau KhandramaiJune 5, 2024 at 11:33 AM

Possibly duplicate

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Firebird

Fix versions

Release

Ramsons (R2 2024)

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs

Created March 11, 2024 at 3:42 AM
Updated November 5, 2024 at 9:00 AM
Resolved October 9, 2024 at 9:04 PM
TestRail: Cases
TestRail: Runs