From 687c7d55badce02f7e779f391ed4e03d97b758f2 Mon Sep 17 00:00:00 2001 From: Mihir Kandoi Date: Tue, 8 Sep 2026 12:52:55 +0530 Subject: [PATCH] chore: remove serial and batch documentation assets --- .../current/serial_batch_identity.md | 28 ------------------ .../current/serial_batch_item_picker.png | Bin 37110 -> 0 bytes 2 files changed, 28 deletions(-) delete mode 100644 erpnext/change_log/current/serial_batch_identity.md delete mode 100644 erpnext/change_log/current/serial_batch_item_picker.png diff --git a/erpnext/change_log/current/serial_batch_identity.md b/erpnext/change_log/current/serial_batch_identity.md deleted file mode 100644 index f401a28c037..00000000000 --- a/erpnext/change_log/current/serial_batch_identity.md +++ /dev/null @@ -1,28 +0,0 @@ -# Serial and batch numbers are unique per item - -Serial No and Batch now have generated document IDs. Their physical numbers remain in `Serial No.serial_no` and `Batch.batch_id`. -Different items can use the same physical number. Two records for the same item cannot share a number. -Physical-number matching and uniqueness ignore letter case on both databases. Stored labels keep their original spelling. - -Existing document IDs remain unchanged. Migration fills missing physical numbers from those IDs and replaces the global unique indexes. -Historical transactions, bundles, and stock valuations retain their references. Item merges fail when they would introduce duplicate numbers. -Before changing either DocType, migration checks for existing numbers that conflict under the new comparison rules. If it finds conflicts, it lists the item and document IDs for correction before retrying the upgrade. It does not merge stock records or change physical labels automatically. - -When a scanned number matches several items, select the item from the filtered Item field. - -![Select an item when a scanned number matches several items](serial_batch_item_picker.png) - -## Integration changes for the next major release - -- Treat `name` as the document ID. Do not construct it from the physical number. -- Use returned document IDs in transaction fields and Serial and Batch Entry links, including legacy serial-number text lists. -- Resolve physical numbers with `erpnext.stock.serial_batch_identity.resolve_serial_batch_numbers`. Supply `item_code` and lists named `serial_numbers` or `batch_numbers`. -- The resolver returns `serial_nos` and `batch_nos`, containing document IDs in input order. Set `create` only for authorized creation. -- Resolving inward transaction input requires Serial No create permission. Transaction write permission alone does not permit serial creation. -- For the bundle editor, use `serial_number` and `batch_number` for physical input. Use `serial_no` and `batch_no` for existing links. -- CSV uploads continue accepting physical numbers. CSV downloads and standard prints show physical numbers. -- A barcode scan can match several records. Interactive callers pass `allow_multiple=true` and select a returned candidate before updating a transaction. -- Reports retain ID columns as hidden fields and provide separate visible physical-number columns. Report filters still accept document IDs. - -Custom integrations and print formats must use physical-number fields for labels and document IDs for links. -After new duplicate numbers exist, restoring an older release requires restoring the pre-upgrade database backup. diff --git a/erpnext/change_log/current/serial_batch_item_picker.png b/erpnext/change_log/current/serial_batch_item_picker.png deleted file mode 100644 index e95649bd80156ce3b12a485c47db7fd00591ec65..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37110 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�*`15qi@A;p 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