Uploaded image for project: 'mod-inventory-storage'
  1. mod-inventory-storage
  2. MODINVSTOR-523

Item barcode should be unique

    XMLWordPrintable

Details

    • CP: sprint 122
    • 2
    • Core: Platform
    • R2 2021 Hot Fix #2
    • Yes
    • Approved at CPT meeting at 08/30
    • Missing integration/unit test

    Description

      An item's barcode should be unique. There should be no duplicated barcodes.

      The business logic module (mod-inventory) checks for the existence of another item with the same barcode when creating or updating an item and has been rejecting duplicates since mod-inventory version 4.2.0 released May 2017:

      Duplications can only occur when items are not created via the business logic module (mod-inventory) but directly in the storage module (mod-inventory-storage) or directly in the database (likely via import).

      Scope

      • Introduce a unique database index on item barcode
      • The uniqueness check respects accents and is case insensitive
      • All other database indexes for item barcode are removed: non-unique field index, non-unique fullTextIndex, non-unique ginIndex - these indexes are case insensitive but incorrectly ignore accents

      Scenarios

      Given an item with barcode 12345
      When a client attempts to create another item with barcode 12345
      Then the request is rejected
      And no new item is created

      Given an item X with barcode 12345
      And an item Y with barcode 34567
      When a client attempts to replace the representation of item Y and changes the barcode to 12345
      Then the request is rejected
      And the representation of item X should not be replaced

      Migration
      Migration will fail if there are duplicate item barcodes. The "Changes and Required Actions" of

      have a note requesting sysOps to check for duplicate item barcodes and remove them before upgrading mod-inventory-storage.

      TestRail: Results

        Attachments

          Issue Links

            Activity

              People

                julianladisch Julian Ladisch
                marcjohnson Marc Johnson
                Votes:
                2 Vote for this issue
                Watchers:
                7 Start watching this issue

                Dates

                  Created:
                  Updated:
                  Resolved:

                  TestRail: Runs

                    TestRail: Cases