fix: missed to add voucher_type, voucher_no to get GL Entries (#27368)

* fix: missed to add voucher_type, voucher_no to get gl entries

* test: get voucherwise details utilities

Co-authored-by: Ankush Menat <ankush@iwebnotes.com>
diff --git a/erpnext/accounts/test/test_utils.py b/erpnext/accounts/test/test_utils.py
index d7b60da..c3f6d27 100644
--- a/erpnext/accounts/test/test_utils.py
+++ b/erpnext/accounts/test/test_utils.py
@@ -5,21 +5,48 @@
 from frappe.test_runner import make_test_objects
 
 from erpnext.accounts.party import get_party_shipping_address
+from erpnext.accounts.utils import get_future_stock_vouchers, get_voucherwise_gl_entries
+from erpnext.stock.doctype.purchase_receipt.test_purchase_receipt import make_purchase_receipt
 
 
 class TestUtils(unittest.TestCase):
 	@classmethod
 	def setUpClass(cls):
 		super(TestUtils, cls).setUpClass()
-		make_test_objects('Address', ADDRESS_RECORDS)
+		make_test_objects("Address", ADDRESS_RECORDS)
 
 	def test_get_party_shipping_address(self):
-		address = get_party_shipping_address('Customer', '_Test Customer 1')
-		self.assertEqual(address, '_Test Billing Address 2 Title-Billing')
+		address = get_party_shipping_address("Customer", "_Test Customer 1")
+		self.assertEqual(address, "_Test Billing Address 2 Title-Billing")
 
 	def test_get_party_shipping_address2(self):
-		address = get_party_shipping_address('Customer', '_Test Customer 2')
-		self.assertEqual(address, '_Test Shipping Address 2 Title-Shipping')
+		address = get_party_shipping_address("Customer", "_Test Customer 2")
+		self.assertEqual(address, "_Test Shipping Address 2 Title-Shipping")
+
+	def test_get_voucher_wise_gl_entry(self):
+
+		pr = make_purchase_receipt(
+			item_code="_Test Item",
+			posting_date="2021-02-01",
+			rate=100,
+			qty=1,
+			warehouse="Stores - TCP1",
+			company="_Test Company with perpetual inventory",
+		)
+
+		future_vouchers = get_future_stock_vouchers("2021-01-01", "00:00:00", for_items=["_Test Item"])
+
+		voucher_type_and_no = ("Purchase Receipt", pr.name)
+		self.assertTrue(
+			voucher_type_and_no in future_vouchers,
+			msg="get_future_stock_vouchers not returning correct value",
+		)
+
+		posting_date = "2021-01-01"
+		gl_entries = get_voucherwise_gl_entries(future_vouchers, posting_date)
+		self.assertTrue(
+			voucher_type_and_no in gl_entries, msg="get_voucherwise_gl_entries not returning expected GLes",
+		)
 
 
 ADDRESS_RECORDS = [
@@ -31,12 +58,8 @@
 		"city": "Lagos",
 		"country": "Nigeria",
 		"links": [
-			{
-				"link_doctype": "Customer",
-				"link_name": "_Test Customer 2",
-				"doctype": "Dynamic Link"
-			}
-		]
+			{"link_doctype": "Customer", "link_name": "_Test Customer 2", "doctype": "Dynamic Link"}
+		],
 	},
 	{
 		"doctype": "Address",
@@ -46,12 +69,8 @@
 		"city": "Lagos",
 		"country": "Nigeria",
 		"links": [
-			{
-				"link_doctype": "Customer",
-				"link_name": "_Test Customer 2",
-				"doctype": "Dynamic Link"
-			}
-		]
+			{"link_doctype": "Customer", "link_name": "_Test Customer 2", "doctype": "Dynamic Link"}
+		],
 	},
 	{
 		"doctype": "Address",
@@ -62,12 +81,8 @@
 		"country": "Nigeria",
 		"is_shipping_address": "1",
 		"links": [
-			{
-				"link_doctype": "Customer",
-				"link_name": "_Test Customer 2",
-				"doctype": "Dynamic Link"
-			}
-		]
+			{"link_doctype": "Customer", "link_name": "_Test Customer 2", "doctype": "Dynamic Link"}
+		],
 	},
 	{
 		"doctype": "Address",
@@ -78,11 +93,7 @@
 		"country": "Nigeria",
 		"is_shipping_address": "1",
 		"links": [
-			{
-				"link_doctype": "Customer",
-				"link_name": "_Test Customer 1",
-				"doctype": "Dynamic Link"
-			}
-		]
-	}
+			{"link_doctype": "Customer", "link_name": "_Test Customer 1", "doctype": "Dynamic Link"}
+		],
+	},
 ]
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 4692869..fbad171 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -963,6 +963,9 @@
 
 	Only fetches GLE fields required for comparing with new GLE.
 	Check compare_existing_and_expected_gle function below.
+
+	returns:
+		Dict[Tuple[voucher_type, voucher_no], List[GL Entries]]
 	"""
 	gl_entries = {}
 	if not future_stock_vouchers:
@@ -971,7 +974,7 @@
 	voucher_nos = [d[1] for d in future_stock_vouchers]
 
 	gles = frappe.db.sql("""
-		select name, account, credit, debit, cost_center, project
+		select name, account, credit, debit, cost_center, project, voucher_type, voucher_no
 			from `tabGL Entry`
 		where
 			posting_date >= %s and voucher_no in (%s)""" %