fix(ux): filters for SCR Item `Serial and Batch Bundle` (#37013)

diff --git a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js
index dd071e6..8ac22e6 100644
--- a/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js
+++ b/erpnext/subcontracting/doctype/subcontracting_receipt/subcontracting_receipt.js
@@ -145,6 +145,14 @@
 			}
 		});
 
+		frm.set_query('serial_and_batch_bundle', 'items', (doc, cdt, cdn) => {
+			return frm.events.get_serial_and_batch_bundle_filters(doc, cdt, cdn);
+		});
+
+		frm.set_query('rejected_serial_and_batch_bundle', 'items', (doc, cdt, cdn) => {
+			return frm.events.get_serial_and_batch_bundle_filters(doc, cdt, cdn);
+		});
+
 		frm.set_query('batch_no', 'supplied_items', (doc, cdt, cdn) => {
 			var row = locals[cdt][cdn];
 			return {
@@ -166,16 +174,6 @@
 			}
 		});
 
-		let sbb_field = frm.get_docfield('supplied_items', 'serial_and_batch_bundle');
-		if (sbb_field) {
-			sbb_field.get_route_options_for_new_doc = (row) => {
-				return {
-					'item_code': row.doc.rm_item_code,
-					'voucher_type': frm.doc.doctype,
-				}
-			}
-		}
-
 		let batch_no_field = frm.get_docfield('items', 'batch_no');
 		if (batch_no_field) {
 			batch_no_field.get_route_options_for_new_doc = (row) => {
@@ -184,6 +182,48 @@
 				}
 			}
 		}
+
+		let item_sbb_field = frm.get_docfield('items', 'serial_and_batch_bundle');
+		if (item_sbb_field) {
+			item_sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			}
+		}
+
+		let rejected_item_sbb_field = frm.get_docfield('items', 'rejected_serial_and_batch_bundle');
+		if (rejected_item_sbb_field) {
+			rejected_item_sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			}
+		}
+
+		let rm_sbb_field = frm.get_docfield('supplied_items', 'serial_and_batch_bundle');
+		if (rm_sbb_field) {
+			rm_sbb_field.get_route_options_for_new_doc = (row) => {
+				return {
+					'item_code': row.doc.rm_item_code,
+					'voucher_type': frm.doc.doctype,
+				}
+			}
+		}
+	},
+
+	get_serial_and_batch_bundle_filters: (doc, cdt, cdn) => {
+		let row = locals[cdt][cdn];
+		return {
+			filters: {
+				'item_code': row.item_code,
+				'voucher_type': doc.doctype,
+				'voucher_no': ['in', [doc.name, '']],
+				'is_cancelled': 0,
+			}
+		}
 	},
 
 	setup_quality_inspection: (frm) => {