fix: stock and account balance syncing (#24644)

* fix: stock and account balance syncing

* fix: stock and account balance syncing

* fix: stock and account balance syncing

* fix: minor fix
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 8031905..60d1e20 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -888,18 +888,22 @@
 
 def update_gl_entries_after(posting_date, posting_time, for_warehouses=None, for_items=None,
 		warehouse_account=None, company=None):
+	stock_vouchers = get_future_stock_vouchers(posting_date, posting_time, for_warehouses, for_items, company)
+	repost_gle_for_stock_vouchers(stock_vouchers, posting_date, company, warehouse_account)
+
+
+def repost_gle_for_stock_vouchers(stock_vouchers, posting_date, company=None, warehouse_account=None):
 	def _delete_gl_entries(voucher_type, voucher_no):
 		frappe.db.sql("""delete from `tabGL Entry`
 			where voucher_type=%s and voucher_no=%s""", (voucher_type, voucher_no))
 
+
 	if not warehouse_account:
 		warehouse_account = get_warehouse_account_map(company)
 
-	future_stock_vouchers = get_future_stock_vouchers(posting_date, posting_time,
-		for_warehouses, for_items, company)
-	gle = get_voucherwise_gl_entries(future_stock_vouchers, posting_date)
+	gle = get_voucherwise_gl_entries(stock_vouchers, posting_date)
 
-	for voucher_type, voucher_no in future_stock_vouchers:
+	for voucher_type, voucher_no in stock_vouchers:
 		existing_gle = gle.get((voucher_type, voucher_no), [])
 		voucher_obj = frappe.get_doc(voucher_type, voucher_no)
 		expected_gle = voucher_obj.get_gl_entries(warehouse_account)
@@ -924,7 +928,7 @@
 		values += for_warehouses
 
 	if company:
-		condition += " and company = %s "
+		condition += " and company = %s"
 		values.append(company)
 
 	for d in frappe.db.sql("""select distinct sle.voucher_type, sle.voucher_no