mirror of
https://github.com/frappe/erpnext.git
synced 2026-03-10 05:48:15 +00:00
perf: process auto bank reconciliation in batches
(cherry picked from commit 657de2cc7e)
This commit is contained in:
@@ -9,7 +9,7 @@ from frappe import _
|
|||||||
from frappe.model.document import Document
|
from frappe.model.document import Document
|
||||||
from frappe.query_builder.custom import ConstantColumn
|
from frappe.query_builder.custom import ConstantColumn
|
||||||
from frappe.query_builder.functions import Sum
|
from frappe.query_builder.functions import Sum
|
||||||
from frappe.utils import cint, flt
|
from frappe.utils import cint, create_batch, flt
|
||||||
|
|
||||||
from erpnext import get_default_cost_center
|
from erpnext import get_default_cost_center
|
||||||
from erpnext.accounts.doctype.bank_transaction.bank_transaction import get_total_allocated_amount
|
from erpnext.accounts.doctype.bank_transaction.bank_transaction import get_total_allocated_amount
|
||||||
@@ -377,16 +377,17 @@ def auto_reconcile_vouchers(
|
|||||||
bank_transactions = get_bank_transactions(bank_account)
|
bank_transactions = get_bank_transactions(bank_account)
|
||||||
|
|
||||||
if len(bank_transactions) > 10:
|
if len(bank_transactions) > 10:
|
||||||
frappe.enqueue(
|
for bank_transaction_batch in create_batch(bank_transactions, 1000):
|
||||||
method="erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.start_auto_reconcile",
|
frappe.enqueue(
|
||||||
queue="long",
|
method="erpnext.accounts.doctype.bank_reconciliation_tool.bank_reconciliation_tool.start_auto_reconcile",
|
||||||
bank_transactions=bank_transactions,
|
queue="long",
|
||||||
from_date=from_date,
|
bank_transactions=bank_transaction_batch,
|
||||||
to_date=to_date,
|
from_date=from_date,
|
||||||
filter_by_reference_date=filter_by_reference_date,
|
to_date=to_date,
|
||||||
from_reference_date=from_reference_date,
|
filter_by_reference_date=filter_by_reference_date,
|
||||||
to_reference_date=to_reference_date,
|
from_reference_date=from_reference_date,
|
||||||
)
|
to_reference_date=to_reference_date,
|
||||||
|
)
|
||||||
frappe.msgprint(_("Auto Reconciliation has started in the background"))
|
frappe.msgprint(_("Auto Reconciliation has started in the background"))
|
||||||
else:
|
else:
|
||||||
start_auto_reconcile(
|
start_auto_reconcile(
|
||||||
|
|||||||
Reference in New Issue
Block a user