Skip to content

Commit

Permalink
chore: patch to enable total number of booked depreciations field (#4…
Browse files Browse the repository at this point in the history
…1940)

* chore: patch to enable total number of booked depreciations field

* fix: conflict resolved

* refactor: replaced fb_row.db_set with set_value
  • Loading branch information
khushi8112 committed Jun 26, 2024
1 parent eca3e02 commit 5fdd1d3
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 10 deletions.
17 changes: 7 additions & 10 deletions erpnext/accounts/doctype/journal_entry/journal_entry.py
Original file line number Diff line number Diff line change
Expand Up @@ -226,7 +226,7 @@ def on_cancel(self):
self.unlink_inter_company_jv()
self.unlink_asset_adjustment_entry()
self.update_invoice_discounting()
self.update_booked_depreciation()
self.update_booked_depreciation(1)

def get_title(self):
return self.pay_to_recd_from or self.accounts[0].account
Expand Down Expand Up @@ -444,7 +444,7 @@ def _validate_invoice_discounting_status(inv_disc, id_status, expected_status, r
if status:
inv_disc_doc.set_status(status=status)

def update_booked_depreciation(self):
def update_booked_depreciation(self, cancel=0):
for d in self.get("accounts"):
if (
self.voucher_type == "Depreciation Entry"
Expand All @@ -456,14 +456,11 @@ def update_booked_depreciation(self):
asset = frappe.get_doc("Asset", d.reference_name)
for fb_row in asset.get("finance_books"):
if fb_row.finance_book == self.finance_book:
depr_schedule = get_depr_schedule(asset.name, "Active", fb_row.finance_book)
total_number_of_booked_depreciations = asset.opening_number_of_booked_depreciations
for je in depr_schedule:
if je.journal_entry:
total_number_of_booked_depreciations += 1
fb_row.db_set(
"total_number_of_booked_depreciations", total_number_of_booked_depreciations
)
if cancel:
fb_row.total_number_of_booked_depreciations -= 1
else:
fb_row.total_number_of_booked_depreciations += 1
fb_row.db_update()
break

def unlink_advance_entry_reference(self):
Expand Down
1 change: 1 addition & 0 deletions erpnext/patches.txt
Original file line number Diff line number Diff line change
Expand Up @@ -370,3 +370,4 @@ erpnext.patches.v14_0.enable_set_priority_for_pricing_rules #1
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_total_number_of_booked_depreciations
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
import frappe

from erpnext.assets.doctype.asset_depreciation_schedule.asset_depreciation_schedule import (
get_depr_schedule,
)


def execute():
if frappe.db.has_column("Asset Finance Book", "total_number_of_booked_depreciations"):
assets = frappe.get_all(
"Asset", filters={"docstatus": 1}, fields=["name", "opening_number_of_booked_depreciations"]
)

for asset in assets:
asset_doc = frappe.get_doc("Asset", asset.name)

for fb_row in asset_doc.get("finance_books"):
depr_schedule = get_depr_schedule(asset.name, "Active", fb_row.finance_book)
total_number_of_booked_depreciations = asset.opening_number_of_booked_depreciations or 0

for je in depr_schedule:
if je.journal_entry:
total_number_of_booked_depreciations += 1
frappe.db.set_value(
"Asset Finance Book",
fb_row.name,
"total_number_of_booked_depreciations",
total_number_of_booked_depreciations,
)

0 comments on commit 5fdd1d3

Please sign in to comment.