fix: Check if Purchase Order has Payment Terms Template
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index 2bf5c77..913e70b 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -1109,7 +1109,7 @@
 			elif self.doctype in ["Sales Invoice", "Purchase Invoice"]:
 				po_or_so, doctype, fieldname = self.get_order_details()
 
-				if self.linked_order_has_payment_terms(po_or_so, fieldname):
+				if self.linked_order_has_payment_terms(po_or_so, fieldname, doctype):
 					self.fetch_payment_terms_from_order(po_or_so, doctype)
 
 			elif self.doctype not in ["Purchase Receipt"]:
@@ -1138,9 +1138,9 @@
 		
 		return po_or_so, po_or_so_doctype, po_or_so_doctype_name
 
-	def linked_order_has_payment_terms(self, po_or_so, fieldname):
+	def linked_order_has_payment_terms(self, po_or_so, fieldname, doctype):
 		if po_or_so and self.all_items_have_same_po_or_so(po_or_so, fieldname):
-			if self.linked_order_has_payment_terms_template(po_or_so):
+			if self.linked_order_has_payment_terms_template(po_or_so, doctype):
 				return True
 			elif self.linked_order_has_payment_schedule(po_or_so):
 				return True
@@ -1154,8 +1154,8 @@
 		
 		return True
 
-	def linked_order_has_payment_terms_template(self, po_or_so):
-		return frappe.get_value('Sales Order', po_or_so, 'payment_terms_template')
+	def linked_order_has_payment_terms_template(self, po_or_so, doctype):
+		return frappe.get_value(doctype, po_or_so, 'payment_terms_template')
 
 	def linked_order_has_payment_schedule(self, po_or_so):
 		return frappe.get_all('Payment Schedule', filters={'parent': po_or_so})