fix: list index out of range (#37890)
* fix: list index out of range
* fix: solve linter test failing
diff --git a/erpnext/assets/doctype/asset/depreciation.py b/erpnext/assets/doctype/asset/depreciation.py
index e2a4b29..84a428c 100644
--- a/erpnext/assets/doctype/asset/depreciation.py
+++ b/erpnext/assets/doctype/asset/depreciation.py
@@ -780,6 +780,15 @@
def get_value_after_depreciation_on_disposal_date(asset, disposal_date, finance_book=None):
asset_doc = frappe.get_doc("Asset", asset)
+ if asset_doc.available_for_use_date > getdate(disposal_date):
+ frappe.throw(
+ "Disposal date {0} cannot be before available for use date {1} of the asset.".format(
+ disposal_date, asset_doc.available_for_use_date
+ )
+ )
+ elif asset_doc.available_for_use_date == getdate(disposal_date):
+ return flt(asset_doc.gross_purchase_amount - asset_doc.opening_accumulated_depreciation)
+
if not asset_doc.calculate_depreciation:
return flt(asset_doc.value_after_depreciation)