fix: Get items button
diff --git a/erpnext/stock/doctype/pick_list/pick_list.js b/erpnext/stock/doctype/pick_list/pick_list.js
index 602b7e0..cb3cec6 100644
--- a/erpnext/stock/doctype/pick_list/pick_list.js
+++ b/erpnext/stock/doctype/pick_list/pick_list.js
@@ -14,24 +14,35 @@
 	},
 	refresh: (frm) => {
 		frm.add_custom_button(__('Delivery Note'), () => frm.trigger('make_delivery_note'), __('Create'));
-		frm.add_custom_button(__('Sales Order'), () => {
-			erpnext.utils.map_current_doc({
-				method: "erpnext.selling.doctype.sales_order.sales_order.make_pick_list",
-				source_doctype: "Sales Order",
-				target: frm,
-				setters: {
-					company: frm.doc.company,
-				},
-				get_query_filters: {
-					docstatus: 1,
-				}
-			});
-		}, __("Get items from"));
 
-		frm.add_custom_button(__('Work Order'), () => {
+		if (frm.doc.reference_items && frm.doc.reference_items.length) {
+			frm.add_custom_button(__('Get Item Locations'), () => {
+				frm.call('set_item_locations');
+			});
+		}
+
+		frm.trigger('add_get_items_button');
+	},
+	items_based_on: (frm) => {
+		frm.trigger('add_get_items_button');
+	},
+	make_delivery_note(frm) {
+		frappe.model.open_mapped_doc({
+			method: "erpnext.stock.doctype.pick_list.pick_list.make_delivery_note",
+			frm: frm
+		});
+	},
+	add_get_items_button(frm) {
+		frm.remove_custom_button(__("Get items"));
+		let source_doctype = frm.doc.items_based_on;
+		let method = 'erpnext.selling.doctype.sales_order.sales_order.make_pick_list';
+		if (source_doctype === 'Sales Order') {
+			method = 'erpnext.manufacturing.doctype.work_order.work_order.make_pick_list';
+		}
+		frm.add_custom_button(__("Get items"), () => {
 			erpnext.utils.map_current_doc({
-				method: "erpnext.manufacturing.doctype.work_order.work_order.make_pick_list",
-				source_doctype: "Work Order",
+				method: method,
+				source_doctype: source_doctype,
 				target: frm,
 				setters: {
 					company: frm.doc.company,
@@ -41,18 +52,6 @@
 					docstatus: 1,
 				}
 			});
-		}, __("Get items from"));
-
-		if (frm.doc.reference_items && frm.doc.reference_items.length) {
-			frm.add_custom_button(__('Get Item Locations'), () => {
-				frm.call('set_item_locations');
-			});
-		}
-	},
-	make_delivery_note(frm) {
-		frappe.model.open_mapped_doc({
-			method: "erpnext.stock.doctype.pick_list.pick_list.make_delivery_note",
-			frm: frm
 		});
-	},
+	}
 });