"Call number type" doesn't map from "Holdings" record with source "MARC"

Description

Overview: "Call number type" doesn't map from "Holdings" record with source "MARC" when Create/Edit/Import "MARC Holdings" record.
Steps to Reproduce:
Scenario 1: Create "MARC Holdings" record

  1. Log into Snapshot FOLIO environment as User with following permissions:
    Inventory: All permissions
    quickMARC: Create a new MARC holdings record.

  2. Go to "Inventory" >> Open detail view pane of "Instance" record with source "MARC"

  3. Click on the "Actions" button and select the "Add MARC holdings record" option 

  4. Fill in the "852" with the following value:
    First indicator: "1"
    Second indicator "\"
    Fourth box: "$b KU/CC/DI/A $h 331.0413"

  5. Click on the "Save & close" button.

  6. Check "Call number type" and "Call number" fields under "Location" accordion.

Expected Results:
"Call number type" is filled with "Dewey Decimal classification";
"Call number" is filled with "331.0413"
Actual Results:
"Call number type" is empty;
"Call number" is filled with "331.0413"

Scenario 2: Edit "MARC Holdings" record

  1. Log into Snapshot FOLIO environment as User with following permissions:
    Inventory: All permissions
    quickMARC: View, edit MARC holdings record

  2. Go to "Inventory" >> Open detail view pane of "Instance" record with source "MARC" >> Open detail view of "Holdings" record with source "MARC".

  3. Click on the "Actions" button and select the "Edit in quickMARC" option 

  4. Edit the "852" with the following value:
    First indicator: "8"
    Second indicator "\"
    Fourth box: "$b KU/CC/DI/A $h B WASHINGTON"

  5. Click on the "Save & close" button.

  6. Check "Call number type" and "Call number" fields under "Location" accordion.

Expected Results:
"Call number type" is filled with "Other scheme";
"Call number" is filled with "B WASHINGTON"
Actual Results:
"Call number type" is empty;
"Call number" is filled with "B WASHINGTON"

Scenario 3: Import "MARC Holdings" record

  1. Log into Snapshot FOLIO environment as User with following permissions:
    Data import: Can upload files, import, and view logs
    Inventory: All permissions
    quickMARC: View, edit MARC holdings record

  2. Import the attached "MARC Holdings" record (

  1. ) via "Data import" app using "Default - Create Holdings and SRS MARC Holdings
    Note: See the following test case as example how to import "MARC Holdings" record https://foliotest.testrail.io/index.php?/cases/view/356820 .

  2. Once import is completed click on the "File name" value of imported record.

  3. Click on the "Created" hyperlink placed under "Holdings" column.

  4. Check "Call number type" and "Call number" fields under "Location" accordion.

Expected Results:
"Call number type" is filled with "Dewey Decimal classification";
"Call number" is filled with "331.2"{*}*
Actual Results:
"Call number type" is empty;
"Call number" is filled with "331.2"

Additional Information:
See https://docs.google.com/spreadsheets/d/1ac95azO1R41_PGkeLhc6uybAKcfpe6XLyd9-F4jqoTo/edit#gid=73689427 
See mapping rules for MARC Holdings by GET endpoint: "/mapping-rules/marc-holdings" or https://folio-org.atlassian.net/wiki/display/FOLIJET/MARC+Holdings+-+Default+Mapping+profile 
See MARC21 standard: https://www.loc.gov/marc/holdings/hd852.html 
See attached screencasts:

CSP Request Details

None

CSP Rejection Details

None

Potential Workaround

None

Attachments

10

Checklist

hide

TestRail: Results

Activity

Show:

Valery_Pilko May 24, 2023 at 8:31 AM

Hi  
Thank you for clarification. I've created additional bug: MODINV-813
Current issue is ready for PO review.

Pavlo Smahin May 23, 2023 at 9:12 PM

Hi , this is an issue within mod-inventory and is reproducible for other fields as well. For instance, if you are editing a record with a Call number and removing the Call number from the record, the change will not be reflected in the record. Could you please create an additional bug for this specific case? Thank you for bringing it to our attention.

Valery_Pilko May 23, 2023 at 2:46 PM

Hi  
Create new MARC Holdings and Import MARC Holdings work as expected, see attached screencasts:

But following issue is observed:
When user edit first indicator of 852 field from valid value to not valid (example: from "1" to "9") then "Call number type" doesn't change to "-" value and still displayed (for example) "Dewey Decimal classification" on the detail view pane, see it on attached screencast:

Pavlo Smahin May 23, 2023 at 2:28 PM

, that is correct. Names for the reference data could be potentially changed by users, such as by translating it into another language. As an alternative approach that is not based on UUIDs and names: we can consider using codes for this reference data and perform matching based on those codes. And make codes read only once they are created. For some of the reference data, we already have codes implemented, as shown in the screenshot below:

Ann-Marie Breaux May 23, 2023 at 1:19 PM

Hi Is that because the mapping for call number type, holdings type, eAccess relationships, mode of issuance is based on a text string instead of a UUID? When possible, we try to use map based on UUIDs for ref values, in case the text associated with the UUID changes.

Done

Details

Assignee

Reporter

Priority

Story Points

Sprint

Development Team

Spitfire

Fix versions

Release

Poppy (R2 2023)

RCA Group

Missing integration/unit test

Affected releases

Poppy (R2 2023)
Orchid (R1 2023)
Nolana (R3 2022)

TestRail: Cases

Open TestRail: Cases

TestRail: Runs

Open TestRail: Runs
Created May 10, 2023 at 2:19 PM
Updated October 14, 2023 at 11:01 AM
Resolved May 26, 2023 at 2:21 PM
TestRail: Cases
TestRail: Runs