chore: rename daily_depreciation in asset to depreciation_amount_based_on_num_days_in_month [dev] (#37893)
* chore: rename daily_depreciation to depreciation_based_on_num_days_in_month
* chore: add patch
* chore: remove unnecessary files
* chore: add amount in field name
* chore: add amount in label
diff --git a/erpnext/assets/doctype/asset/asset.py b/erpnext/assets/doctype/asset/asset.py
index 9d35634..c003afe 100644
--- a/erpnext/assets/doctype/asset/asset.py
+++ b/erpnext/assets/doctype/asset/asset.py
@@ -818,7 +818,7 @@
"depreciation_method": d.depreciation_method,
"total_number_of_depreciations": d.total_number_of_depreciations,
"frequency_of_depreciation": d.frequency_of_depreciation,
- "daily_depreciation": d.daily_depreciation,
+ "depreciation_amount_based_on_num_days_in_month": d.depreciation_amount_based_on_num_days_in_month,
"salvage_value_percentage": d.salvage_value_percentage,
"expected_value_after_useful_life": flt(gross_purchase_amount)
* flt(d.salvage_value_percentage / 100),
diff --git a/erpnext/assets/doctype/asset/test_asset.py b/erpnext/assets/doctype/asset/test_asset.py
index d69f5ef..cdaccbb 100644
--- a/erpnext/assets/doctype/asset/test_asset.py
+++ b/erpnext/assets/doctype/asset/test_asset.py
@@ -755,7 +755,9 @@
self.assertEqual(schedules, expected_schedules)
- def test_schedule_for_straight_line_method_with_daily_depreciation(self):
+ def test_schedule_for_straight_line_method_with_depreciation_amount_based_on_num_days_in_month(
+ self,
+ ):
asset = create_asset(
calculate_depreciation=1,
available_for_use_date="2023-01-01",
@@ -764,7 +766,7 @@
depreciation_start_date="2023-01-31",
total_number_of_depreciations=12,
frequency_of_depreciation=1,
- daily_depreciation=1,
+ depreciation_amount_based_on_num_days_in_month=1,
)
expected_schedules = [
@@ -1760,7 +1762,8 @@
"total_number_of_depreciations": args.total_number_of_depreciations or 5,
"expected_value_after_useful_life": args.expected_value_after_useful_life or 0,
"depreciation_start_date": args.depreciation_start_date,
- "daily_depreciation": args.daily_depreciation or 0,
+ "depreciation_amount_based_on_num_days_in_month": args.depreciation_amount_based_on_num_days_in_month
+ or 0,
},
)
diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.json b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.json
index 3772ef4..6f07d84 100644
--- a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.json
+++ b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.json
@@ -19,7 +19,7 @@
"depreciation_method",
"total_number_of_depreciations",
"rate_of_depreciation",
- "daily_depreciation",
+ "depreciation_amount_based_on_num_days_in_month",
"column_break_8",
"frequency_of_depreciation",
"expected_value_after_useful_life",
@@ -179,9 +179,9 @@
{
"default": "0",
"depends_on": "eval:doc.depreciation_method == \"Straight Line\" || doc.depreciation_method == \"Manual\"",
- "fieldname": "daily_depreciation",
+ "fieldname": "depreciation_amount_based_on_num_days_in_month",
"fieldtype": "Check",
- "label": "Daily Depreciation",
+ "label": "Depreciation amount based on number of days in the month",
"print_hide": 1,
"read_only": 1
}
@@ -189,7 +189,7 @@
"index_web_pages_for_search": 1,
"is_submittable": 1,
"links": [],
- "modified": "2023-08-10 22:22:09.722968",
+ "modified": "2023-11-03 21:32:15.021796",
"modified_by": "Administrator",
"module": "Assets",
"name": "Asset Depreciation Schedule",
diff --git a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
index 7a88ffc..109f96f 100644
--- a/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
+++ b/erpnext/assets/doctype/asset_depreciation_schedule/asset_depreciation_schedule.py
@@ -153,7 +153,9 @@
self.frequency_of_depreciation = row.frequency_of_depreciation
self.rate_of_depreciation = row.rate_of_depreciation
self.expected_value_after_useful_life = row.expected_value_after_useful_life
- self.daily_depreciation = row.daily_depreciation
+ self.depreciation_amount_based_on_num_days_in_month = (
+ row.depreciation_amount_based_on_num_days_in_month
+ )
self.status = "Draft"
def make_depr_schedule(
@@ -573,7 +575,7 @@
)
# if the Depreciation Schedule is being modified after Asset Value Adjustment due to decrease in asset value
elif asset.flags.decrease_in_asset_value_due_to_value_adjustment:
- if row.daily_depreciation:
+ if row.depreciation_amount_based_on_num_days_in_month:
daily_depr_amount = (
flt(row.value_after_depreciation) - flt(row.expected_value_after_useful_life)
) / date_diff(
@@ -618,7 +620,7 @@
) / number_of_pending_depreciations
# if the Depreciation Schedule is being prepared for the first time
else:
- if row.daily_depreciation:
+ if row.depreciation_amount_based_on_num_days_in_month:
daily_depr_amount = (
flt(asset.gross_purchase_amount)
- flt(asset.opening_accumulated_depreciation)
diff --git a/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json b/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json
index 2c27dc9..df56069 100644
--- a/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json
+++ b/erpnext/assets/doctype/asset_finance_book/asset_finance_book.json
@@ -8,7 +8,7 @@
"finance_book",
"depreciation_method",
"total_number_of_depreciations",
- "daily_depreciation",
+ "depreciation_amount_based_on_num_days_in_month",
"column_break_5",
"frequency_of_depreciation",
"depreciation_start_date",
@@ -87,22 +87,22 @@
"label": "Rate of Depreciation"
},
{
- "default": "0",
- "depends_on": "eval:doc.depreciation_method == \"Straight Line\" || doc.depreciation_method == \"Manual\"",
- "fieldname": "daily_depreciation",
- "fieldtype": "Check",
- "label": "Daily Depreciation"
- },
- {
"fieldname": "salvage_value_percentage",
"fieldtype": "Percent",
"label": "Salvage Value Percentage"
+ },
+ {
+ "default": "0",
+ "depends_on": "eval:doc.depreciation_method == \"Straight Line\" || doc.depreciation_method == \"Manual\"",
+ "fieldname": "depreciation_amount_based_on_num_days_in_month",
+ "fieldtype": "Check",
+ "label": "Depreciation amount based on number of days in the month"
}
],
"index_web_pages_for_search": 1,
"istable": 1,
"links": [],
- "modified": "2023-09-29 15:39:52.740594",
+ "modified": "2023-11-03 21:30:24.266601",
"modified_by": "Administrator",
"module": "Assets",
"name": "Asset Finance Book",
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 78d2c2c..ae2caa7 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -345,5 +345,6 @@
erpnext.patches.v14_0.migrate_delivery_stop_lock_field
execute:frappe.db.set_single_value("Payment Reconciliation", "invoice_limit", 50)
execute:frappe.db.set_single_value("Payment Reconciliation", "payment_limit", 50)
+erpnext.patches.v15_0.rename_daily_depreciation_to_depreciation_amount_based_on_num_days_in_month
# below migration patch should always run last
erpnext.patches.v14_0.migrate_gl_to_payment_ledger
diff --git a/erpnext/patches/v15_0/rename_daily_depreciation_to_depreciation_amount_based_on_num_days_in_month.py b/erpnext/patches/v15_0/rename_daily_depreciation_to_depreciation_amount_based_on_num_days_in_month.py
new file mode 100644
index 0000000..63dc0e0
--- /dev/null
+++ b/erpnext/patches/v15_0/rename_daily_depreciation_to_depreciation_amount_based_on_num_days_in_month.py
@@ -0,0 +1,21 @@
+# Copyright (c) 2023, Frappe Technologies Pvt. Ltd. and Contributors
+# License: GNU General Public License v3. See license.txt
+
+
+from frappe.model.utils.rename_field import rename_field
+
+
+def execute():
+ try:
+ rename_field(
+ "Asset Finance Book", "daily_depreciation", "depreciation_amount_based_on_num_days_in_month"
+ )
+ rename_field(
+ "Asset Depreciation Schedule",
+ "daily_depreciation",
+ "depreciation_amount_based_on_num_days_in_month",
+ )
+
+ except Exception as e:
+ if e.args[0] != 1054:
+ raise