fix: no permission for accounts settings on payment reconciliation
diff --git a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js
index 2283677..89fa151 100644
--- a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js
+++ b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.js
@@ -85,25 +85,29 @@
// check for any running reconciliation jobs
if (this.frm.doc.receivable_payable_account) {
- frappe.db.get_single_value("Accounts Settings", "auto_reconcile_payments").then((enabled) => {
- if(enabled) {
- this.frm.call({
- 'method': "erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.is_any_doc_running",
- "args": {
- for_filter: {
- company: this.frm.doc.company,
- party_type: this.frm.doc.party_type,
- party: this.frm.doc.party,
- receivable_payable_account: this.frm.doc.receivable_payable_account
+ this.frm.call({
+ doc: this.frm.doc,
+ method: 'is_auto_process_enabled',
+ callback: (r) => {
+ if (r.message) {
+ this.frm.call({
+ 'method': "erpnext.accounts.doctype.process_payment_reconciliation.process_payment_reconciliation.is_any_doc_running",
+ "args": {
+ for_filter: {
+ company: this.frm.doc.company,
+ party_type: this.frm.doc.party_type,
+ party: this.frm.doc.party,
+ receivable_payable_account: this.frm.doc.receivable_payable_account
+ }
}
- }
- }).then(r => {
- if (r.message) {
- let doc_link = frappe.utils.get_form_link("Process Payment Reconciliation", r.message, true);
- let msg = __("Payment Reconciliation Job: {0} is running for this party. Can't reconcile now.", [doc_link]);
- this.frm.dashboard.add_comment(msg, "yellow");
- }
- });
+ }).then(r => {
+ if (r.message) {
+ let doc_link = frappe.utils.get_form_link("Process Payment Reconciliation", r.message, true);
+ let msg = __("Payment Reconciliation Job: {0} is running for this party. Can't reconcile now.", [doc_link]);
+ this.frm.dashboard.add_comment(msg, "yellow");
+ }
+ });
+ }
}
});
}
diff --git a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py
index 2c8faec..2e4e3b0 100644
--- a/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py
+++ b/erpnext/accounts/doctype/payment_reconciliation/payment_reconciliation.py
@@ -253,6 +253,10 @@
return difference_amount
@frappe.whitelist()
+ def is_auto_process_enabled(self):
+ return frappe.db.get_single_value("Accounts Settings", "auto_reconcile_payments")
+
+ @frappe.whitelist()
def calculate_difference_on_allocation_change(self, payment_entry, invoice, allocated_amount):
invoice_exchange_map = self.get_invoice_exchange_map(invoice, payment_entry)
invoice[0]["exchange_rate"] = invoice_exchange_map.get(invoice[0].get("invoice_number"))