|
@ -39,14 +39,21 @@ def execute(): |
|
|
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') |
|
|
acc_frozen_upto = frappe.db.get_value('Accounts Settings', None, 'acc_frozen_upto') |
|
|
frappe.db.set_value('Accounts Settings', None, 'acc_frozen_upto', None) |
|
|
if 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) |
|
|
try: |
|
|
doc.docstatus = 2 |
|
|
doc = frappe.get_doc(invoice.type, invoice.name) |
|
|
doc.make_gl_entries() |
|
|
doc.docstatus = 2 |
|
|
for advance in doc.advances: |
|
|
doc.make_gl_entries() |
|
|
if advance.ref_exchange_rate == 1: |
|
|
for advance in doc.advances: |
|
|
advance.db_set('exchange_gain_loss', 0, False) |
|
|
if advance.ref_exchange_rate == 1: |
|
|
doc.docstatus = 1 |
|
|
advance.db_set('exchange_gain_loss', 0, False) |
|
|
doc.make_gl_entries() |
|
|
doc.docstatus = 1 |
|
|
frappe.db.set_value('Accounts Settings', None, 'acc_frozen_upto', acc_frozen_upto) |
|
|
doc.make_gl_entries() |
|
|
|
|
|
except Exception: |
|
|
|
|
|
print(f'Failed to correct gl entries of {invoice.name}') |
|
|
|
|
|
|
|
|
|
|
|
if acc_frozen_upto: |
|
|
|
|
|
frappe.db.set_value('Accounts Settings', None, 'acc_frozen_upto', acc_frozen_upto) |