fix: patch

(cherry picked from commit d76cc21086)

# Conflicts:
#	erpnext/patches.txt
#	erpnext/patches/v14_0/update_sub_voucher_type_in_gl_entries.py
This commit is contained in:
ljain112
2024-09-30 20:10:36 +05:30
committed by Mergify
parent 1022acc299
commit 203718a90b
2 changed files with 76 additions and 0 deletions

View File

@@ -366,4 +366,23 @@ execute:frappe.db.set_single_value('E Commerce Settings', 'show_actual_qty', 1)
erpnext.patches.v14_0.delete_orphaned_asset_movement_item_records
erpnext.patches.v14_0.remove_cancelled_asset_capitalization_from_asset
erpnext.patches.v14_0.enable_set_priority_for_pricing_rules #1
<<<<<<< HEAD
erpnext.patches.v14_0.update_currency_exchange_settings_for_frankfurter
=======
erpnext.patches.v15_0.rename_number_of_depreciations_booked_to_opening_booked_depreciations
erpnext.patches.v15_0.add_default_operations
erpnext.patches.v15_0.enable_old_serial_batch_fields
erpnext.patches.v15_0.update_warehouse_field_in_asset_repair_consumed_item_doctype
erpnext.patches.v15_0.update_asset_repair_field_in_stock_entry
erpnext.patches.v15_0.update_total_number_of_booked_depreciations
erpnext.patches.v15_0.do_not_use_batchwise_valuation
erpnext.patches.v15_0.update_invoice_remarks
erpnext.patches.v14_0.update_reports_with_range
erpnext.patches.v15_0.drop_index_posting_datetime_from_sle
erpnext.patches.v15_0.add_disassembly_order_stock_entry_type #1
erpnext.patches.v15_0.set_standard_stock_entry_type
erpnext.patches.v15_0.set_difference_amount_in_asset_value_adjustment
erpnext.patches.v15_0.link_purchase_item_to_asset_doc
erpnext.patches.v15_0.migrate_to_utm_analytics
erpnext.patches.v15_0.update_sub_voucher_type_in_gl_entries
>>>>>>> d76cc21086 (fix: patch)

View File

@@ -0,0 +1,57 @@
import frappe
def execute():
update_purchase_invoices()
update_sales_invoices()
update_sales_debit_notes()
def update_purchase_invoices():
invoices = frappe.get_all(
"Purchase Invoice",
filters={"docstatus": 1, "is_return": 0},
pluck="name",
)
if not invoices:
return
update_gl_entry(doctype="Purchase Invoice", invoices=invoices, value="Purchase Invoice")
def update_sales_invoices():
invoices = frappe.get_all(
"Sales Invoice",
filters={"docstatus": 1, "is_return": 0, "is_debit_note": 0},
pluck="name",
)
if not invoices:
return
update_gl_entry(doctype="Sales Invoice", invoices=invoices, value="Sales Invoice")
def update_sales_debit_notes():
invoices = frappe.get_all(
"Sales Invoice",
filters={"docstatus": 1, "is_debit_note": 1},
pluck="name",
)
if not invoices:
return
update_gl_entry(doctype="Sales Invoice", invoices=invoices, value="Debit Note")
def update_gl_entry(doctype, invoices, value):
gl_entry = frappe.qb.DocType("GL Entry")
(
frappe.qb.update(gl_entry)
.set("voucher_subtype", value)
.where(gl_entry.voucher_subtype.isnotnull())
.where(gl_entry.voucher_no.isin(invoices))
.where(gl_entry.voucher_type == doctype)
.run()
)