fix: patch fails if accounts are frozen

This commit is contained in:
Saqib Ansari 2021-10-10 11:42:39 +05:30
parent 35e30bdcaf
commit b0aa4a6e1c
2 changed files with 7 additions and 4 deletions

View File

@ -299,7 +299,7 @@ erpnext.patches.v13_0.gst_fields_for_pos_invoice
erpnext.patches.v13_0.create_accounting_dimensions_in_pos_doctypes erpnext.patches.v13_0.create_accounting_dimensions_in_pos_doctypes
erpnext.patches.v13_0.trim_sales_invoice_custom_field_length erpnext.patches.v13_0.trim_sales_invoice_custom_field_length
erpnext.patches.v13_0.create_custom_field_for_finance_book erpnext.patches.v13_0.create_custom_field_for_finance_book
erpnext.patches.v13_0.modify_invalid_gain_loss_gl_entries erpnext.patches.v13_0.modify_invalid_gain_loss_gl_entries #2
erpnext.patches.v13_0.fix_additional_cost_in_mfg_stock_entry erpnext.patches.v13_0.fix_additional_cost_in_mfg_stock_entry
erpnext.patches.v13_0.set_status_in_maintenance_schedule_table erpnext.patches.v13_0.set_status_in_maintenance_schedule_table
erpnext.patches.v13_0.add_default_interview_notification_templates erpnext.patches.v13_0.add_default_interview_notification_templates

View File

@ -17,7 +17,7 @@ def execute():
where where
ref_exchange_rate = 1 ref_exchange_rate = 1
and docstatus = 1 and docstatus = 1
and ifnull(exchange_gain_loss, '') != '' and ifnull(exchange_gain_loss, 0) != 0
group by group by
parent parent
""", as_dict=1) """, as_dict=1)
@ -30,7 +30,7 @@ def execute():
where where
ref_exchange_rate = 1 ref_exchange_rate = 1
and docstatus = 1 and docstatus = 1
and ifnull(exchange_gain_loss, '') != '' and ifnull(exchange_gain_loss, 0) != 0
group by group by
parent parent
""", as_dict=1) """, as_dict=1)
@ -38,6 +38,8 @@ def execute():
if purchase_invoices + sales_invoices: if purchase_invoices + sales_invoices:
frappe.log_error(json.dumps(purchase_invoices + sales_invoices, indent=2), title="Patch Log") frappe.log_error(json.dumps(purchase_invoices + sales_invoices, indent=2), title="Patch Log")
acc_frozen_upto = frappe.db.get_value('Accounts Settings', None, 'acc_frozen_upto')
frappe.db.set_value('Accounts Settings', None, 'acc_frozen_upto', None)
for invoice in purchase_invoices + sales_invoices: for invoice in purchase_invoices + sales_invoices:
doc = frappe.get_doc(invoice.type, invoice.name) doc = frappe.get_doc(invoice.type, invoice.name)
doc.docstatus = 2 doc.docstatus = 2
@ -46,4 +48,5 @@ def execute():
if advance.ref_exchange_rate == 1: if advance.ref_exchange_rate == 1:
advance.db_set('exchange_gain_loss', 0, False) advance.db_set('exchange_gain_loss', 0, False)
doc.docstatus = 1 doc.docstatus = 1
doc.make_gl_entries() doc.make_gl_entries()
frappe.db.set_value('Accounts Settings', None, 'acc_frozen_upto', acc_frozen_upto)