Uploaded image for project: 'ui-data-import'
  1. ui-data-import
  2. UIDATIMP-15

Data Import Field Mapping Profile details: Inventory instance from MARC

    XMLWordPrintable

    Details

    • Template:
    • Sprint:
      EPAM BatchLoader Sprint 36, EPAM BatchLoader Sprint 37, EPAM BatchLoader Sprint 38
    • Story Points:
      5
    • Development Team:
      Folijet

      Description

      Purpose: To record the details of field mappings and defaults required to create/update an Inventory Holdings record from a MARC Bib record

      As a staff person
      I want to input MARC fields from incoming imported records and/or defaults
      So that I can create or update Inventory instance records when importing MARC Bib records

      Background information:

      • Mapping fields: https://docs.google.com/spreadsheets/d/17kCccovBR-RAVK-coW7fpXvJfaRmYA2mUHoVLSF9Spo/edit#gid=141717922
        • Create instance sheet: shows all instance record fields and their types, with some sample mapping data
        • Field types sheet: shows the various kinds of fields and how they will be handled in the field mapping details. Ann-Marie assigned the field types, so these are not the technical/developer names for the fields.
        • Syntax shows the mapping syntax allowed in the fields - a few unresolved questions, plus we should probably talk through these details
        • Decorators for checkboxes, repeatable fields, reference value/dropdown lists, and date pickers will be added in future stories. Until then, these fields will not work properly. See details below.
        • In the future, this will be tenant-izable, so that if the tenant allows some fields to be editable in the instance, instead of being controlled by the underlying SRS record, then those fields would be mappable in the field mappings profile

      Scenarios

      1. Scenario 1
        • Given the Data Import field mapping profile Create/Edit screen
        • When viewing the Details section for a profile with Incoming record type = MARC bibliographic and FOLIO record type = Instance
        • Then it should look like the attached screenshots Instance 1-9 (based on the Inventory Create/Edit screen for Instance) and described here. The screens can be compressed vertically some from how they appear in the wireframes.
          • Sub-header, left justified: Field mapping [space-dot-space] Instance
          • Top right: button to collapse/expand all accordions (will be added later in a separate story UIDATIMP-403) not working correctly on the Create screen, but we'll deal with it in a bug
          • Default to all accordions expanded
          • Standard Cancel/Save footer for the field mapping profile overall
          • Individual fields:
            • Administrative data accordion
              • Suppress from discovery: Checkbox
              • Staff suppress: Checkbox
              • Previously held: Checkbox
              • Instance HRID: Not mappable
              • Metadata source: Not mappable
              • Cataloged date: Date
              • Instance status term: Non-repeatable, with reference values (from Settings/Inventory/Instances-Instance status types)
              • Mode of issuance: Not mappable
              • Statistical code: Repeatable, with reference values (from Settings/Inventory/Instances, holdings, items-Statistical code types & Statistical codes)
            • Title data accordion
              • Resource title: Not mappable
              • Alternative title type: Not mappable
              • Alternative title: Not mappable
              • Index title: Not mappable
              • Series statements: Not mappable
              • Related titles. Preceding titles. FOLIO ID: Repeatable, free text
              • Related titles. Succeeding titles. FOLIO ID: Repeatable, free text
            • Identifier accordion
              • Identifier type: Not mappable [not visible on the screen, since identifier button disabled]
              • Identifier: Not mappable [not visible on the screen, since identifier button disabled]
            • Contributor accordion
              • Name: Not mappable [not visible on the screen, since contributor button disabled]
              • Name type: Not mappable [not visible on the screen, since contributor button disabled]
              • Type: Not mappable [not visible on the screen, since contributor button disabled]
              • Type, free text: Not mappable [not visible on the screen, since contributor button disabled]
              • Primary: Not mappable [not visible on the screen, since contributor button disabled]
            • Descriptive data accordion
              • Publications subheader
              • Publisher: Not mappable [not visible on the screen, since publication button disabled]
              • Publisher role: Not mappable [not visible on the screen, since publication button disabled]
              • Place: Not mappable [not visible on the screen, since publication button disabled]
              • Publication date: Not mappable [not visible on the screen, since publication button disabled]
              • Editions subheader
              • Edition: Not mappable [not visible on the screen, since edition button disabled]
              • Physical descriptions subheader:
              • Physical description: Not mappable
              • Resource type: Not mappable
              • Nature of content term: Repeatable, with reference values (from Settings/Inventory/Instance-Nature of content)
              • Format: Not mappable
              • Language: Not mappable
              • Publication frequency: Not mappable
              • Publication range: Not mappable
            • Instance notes accordion
              • Note type: Not mappable [not visible on the screen, since instance note button disabled]
              • Note: Not mappable [not visible on the screen, since instance note button disabled]
              • Staff only: Not mappable [not visible on the screen, since instance note button disabled]
            • Electronic access accordion
              • Relationship: Not mappable [not visible on the screen, since electronic access button disabled]
              • URI: Not mappable [not visible on the screen, since electronic access button disabled]
              • Link text: Not mappable [not visible on the screen, since electronic access button disabled]
              • Materials specified: Not mappable [not visible on the screen, since electronic access button disabled]
              • URL public note: Not mappable [not visible on the screen, since electronic access button disabled]
            • Subject accordion
              • Subjects: Not mappable [not visible on the screen, since subject button disabled]
            • Classification accordion
              • Classification identifier type: Not mappable [not visible on the screen, since classification button disabled]
              • Classification: Not mappable [not visible on the screen, since classification button disabled]
            • Instance relationship accordion (the 2 repeatable fields for Parent and Child are added and deleted together)
              • Parent instance: Repeatable, free text
              • Type of relation: Repeatable, with reference values (Hardcoded - see attached list)
              • Child instance: Repeatable, free text
              • Type of relation: Repeatable, with reference values (Hardcoded - see attached list)
            • Related instances: Not mappable
      2. Scenario 2 [will need more testing once MODINV and MODDICORE functionality and decorators are all hooked up]
        • Given the Create/Edit screen for Settings/Data Import/Field mapping profiles
        • When a user creates a New field mapping profile or updates an existing one for an incoming MARC record
        • Then allow them to use the syntax detailed on the Syntax sheet of https://docs.google.com/spreadsheets/d/17kCccovBR-RAVK-coW7fpXvJfaRmYA2mUHoVLSF9Spo/edit#gid=141717922
        • To use a value from a field in the incoming record, to try a cascade from several fields, and/or to assign a default value
        • Note: Validation of the syntax is covered in UIDATIMP-405. This scenario just covers being able to input syntax into the fields of the field mapping screen
      3. Scenario 3
        • Given the Create/Edit screen for Settings/Data Import/Field mapping profiles
        • When a user creates a New field mapping profile or updates an existing one for an incoming MARC record
        • If there is a field that is controlled by the underlying tenant MARC-to-Instance map
        • Then grey it out, and do not allow the user to map it or tab to it
        • NOTE This default map and the affected fields may vary from tenant to tenant
      4. Scenario 4
        • Given the Data Import field mapping profile View details screen
        • When viewing the Details section for a profile with Incoming record type = MARC bibliographic and FOLIO record type = Instance
        • Then it should look like the Create/Edit screen, except
          • Not editable
          • No buttons to add repeatable fields
      5. Scenario 5
        • Ensure automated testing coverage for this new code is 80% plus and confirm with screenshot

      Field handling for different types of fields:

      • Checkbox: (See story UIDATIMP-368 for checkbox decorator)
        • Remove the checkbox at the left of the field label
        • Add a dropdown list to the right of the field label with:
          • Ghost text: Select checkbox field mapping
          • And dropdown options of
            • Mark for all affected records
            • Unmark for all affected records
            • Keep the existing value for all affected records
      • Date
        • Field that includes:
          • A free text portion
          • With an Accepted values dropdown at the right, with 2 options:
            • Today
            • Choose date
          • User should be able to map a MARC field and/or choose or type an accepted value
          • If User selects "Today" from the dropdown list, put ###TODAY### in the free text field, and when job is run, apply today's date in YYYY-MM-DD format
          • If User selects "Choose date" from the dropdown list, display the date picker, and allow the user to select a specific date. Once that date is selected, enter it as "YYYY-MM-DD" in the text field, e.g. "2020-01-01"
          • User should be able to tab to both the Free text and Accepted values areas of the field
      • Not mappable:
        • Do not allow tabbing to this field; skip it
        • Make the input field dark grey and disallow any data entry
      • Repeatable, free text:
        • Start with an "Add [field label]" button
        • And a new "repeatable mapping" dropdown above the top right of the field with the following options: (See story UIDATIMP-401 for repeatable mapping dropdown decorator)
          • Add these to existing [make this the top, default value]
          • Delete all existing values
          • Delete existing and add these
          • Find and remove these
        • Once the "Add [field label]" button is clicked,
          • Add the field
          • With a trashcan at the end of it (so that the field and its mapping can be deleted from the profile)
          • (Consult the Inventory create/edit screen if questions about how it should look)
        • If there are multiple copies of the repeated field, only have one "repeatable mapping" dropdown at the top right of the whole bloc of the fields
      • Repeatable, with reference values:
        • Start with an "Add [field label]" button
        • And a new "repeatable mapping" dropdown above the top right of the field with the following options:
          • Add these to existing
          • Delete all existing values
          • Delete existing and add these
          • Find and remove these
        • Once the "Add [field label]" button is clicked
          • Add the field (free text)
          • With an Accepted values dropdown at the right - if a value is selected, add to the free-text are of the field in double quotes (see separate story UIDATIMP-402 for Accepted values decorator)
          • And then a Trashcan at the end of it (consult the Inventory create/edit screen if questions about how it should look).
          • Accepted values will usually come from a list of reference values in Settings or a Hardcoded list
          • User should be able to map a MARC field and/or choose or type an accepted value
          • User should be able to tab to both the Free text and Accepted values areas of the field
        • If there are multiple copies of the repeated field, only have one "repeatable mapping" dropdown at the top right of the whole bloc of the fields
      • Non-repeatable, free text:
        • Open field, that can be tabbed to and typed into
      • Non-repeatable, with reference values:
        • Field that includes:
          • A free text portion
          • With an Accepted values dropdown at the right - if a value is selected, add to the free-text are of the field in double quotes
          • Accepted values will usually come from a list of reference values in Settings or a Hardcoded list
          • User should be able to map a MARC field and/or choose or type an accepted value
          • User should be able to tab to both the Free text and Accepted values areas of the field

        TestRail: Results

          Attachments

          1. Instance field mapping-1.PNG
            Instance field mapping-1.PNG
            93 kB
          2. Instance field mapping-2.PNG
            Instance field mapping-2.PNG
            34 kB
          3. Instance field mapping-3.PNG
            Instance field mapping-3.PNG
            57 kB
          4. Instance field mapping-4.PNG
            Instance field mapping-4.PNG
            43 kB
          5. Instance field mapping-5.PNG
            Instance field mapping-5.PNG
            51 kB
          6. Instance field mapping-6.PNG
            Instance field mapping-6.PNG
            34 kB
          7. Instance field mapping-7.PNG
            Instance field mapping-7.PNG
            40 kB
          8. Instance field mapping-8.PNG
            Instance field mapping-8.PNG
            35 kB
          9. Instance field mapping-9.PNG
            Instance field mapping-9.PNG
            74 kB
          10. Reference values-Type of relation.PNG
            Reference values-Type of relation.PNG
            5 kB

            Issue Links

              Activity

                People

                Assignee:
                Ihor_koba Ihor Koba
                Reporter:
                abreaux Ann-Marie Breaux
                Tester Assignee:
                Ann-Marie Breaux Ann-Marie Breaux
                Votes:
                0 Vote for this issue
                Watchers:
                1 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved:

                    TestRail: Runs

                      TestRail: Cases