Skip to content

Commit

Permalink
fix: depreciation schedule for existing assets [v14] (#35255)
Browse files Browse the repository at this point in the history
* fix: depreciation schedule for existing assets

* chore: correct logic for existing assets and fix test
  • Loading branch information
anandbaburajan committed May 17, 2023
1 parent 15c1af3 commit 0a080ef
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 5 deletions.
10 changes: 6 additions & 4 deletions erpnext/assets/doctype/asset/asset.py
Expand Up @@ -425,7 +425,7 @@ def _make_depreciation_schedule(self, finance_book, start, date_of_disposal):
depreciation_amount += value_after_depreciation - finance_book.expected_value_after_useful_life
skip_row = True

if depreciation_amount > 0:
if flt(depreciation_amount, self.precision("gross_purchase_amount")) > 0:
self._add_depreciation_row(
schedule_date,
depreciation_amount,
Expand Down Expand Up @@ -1287,9 +1287,11 @@ def get_straight_line_or_manual_depr_amount(asset, row):
)
# if the Depreciation Schedule is being prepared for the first time
else:
return (flt(asset.gross_purchase_amount) - flt(row.expected_value_after_useful_life)) / flt(
row.total_number_of_depreciations
)
return (
flt(asset.gross_purchase_amount)
- flt(asset.opening_accumulated_depreciation)
- flt(row.expected_value_after_useful_life)
) / flt(row.total_number_of_depreciations - asset.number_of_depreciations_booked)


def get_wdv_or_dd_depr_amount(
Expand Down
2 changes: 1 addition & 1 deletion erpnext/assets/doctype/asset/test_asset.py
Expand Up @@ -649,7 +649,7 @@ def test_schedule_for_straight_line_method_for_existing_asset(self):
)

self.assertEqual(asset.status, "Draft")
expected_schedules = [["2032-12-31", 30000.0, 77095.89], ["2033-06-06", 12904.11, 90000.0]]
expected_schedules = [["2032-12-31", 42904.11, 90000.0]]
schedules = [
[cstr(d.schedule_date), flt(d.depreciation_amount, 2), d.accumulated_depreciation_amount]
for d in asset.get("schedules")
Expand Down

0 comments on commit 0a080ef

Please sign in to comment.