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
This commit is contained in:
parent
d4c0dbfacc
commit
568d5bfbe8
@ -818,7 +818,7 @@ def get_item_details(item_code, asset_category, gross_purchase_amount):
|
|||||||
"depreciation_method": d.depreciation_method,
|
"depreciation_method": d.depreciation_method,
|
||||||
"total_number_of_depreciations": d.total_number_of_depreciations,
|
"total_number_of_depreciations": d.total_number_of_depreciations,
|
||||||
"frequency_of_depreciation": d.frequency_of_depreciation,
|
"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,
|
"salvage_value_percentage": d.salvage_value_percentage,
|
||||||
"expected_value_after_useful_life": flt(gross_purchase_amount)
|
"expected_value_after_useful_life": flt(gross_purchase_amount)
|
||||||
* flt(d.salvage_value_percentage / 100),
|
* flt(d.salvage_value_percentage / 100),
|
||||||
|
|||||||
@ -755,7 +755,9 @@ class TestDepreciationMethods(AssetSetup):
|
|||||||
|
|
||||||
self.assertEqual(schedules, expected_schedules)
|
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(
|
asset = create_asset(
|
||||||
calculate_depreciation=1,
|
calculate_depreciation=1,
|
||||||
available_for_use_date="2023-01-01",
|
available_for_use_date="2023-01-01",
|
||||||
@ -764,7 +766,7 @@ class TestDepreciationMethods(AssetSetup):
|
|||||||
depreciation_start_date="2023-01-31",
|
depreciation_start_date="2023-01-31",
|
||||||
total_number_of_depreciations=12,
|
total_number_of_depreciations=12,
|
||||||
frequency_of_depreciation=1,
|
frequency_of_depreciation=1,
|
||||||
daily_depreciation=1,
|
depreciation_amount_based_on_num_days_in_month=1,
|
||||||
)
|
)
|
||||||
|
|
||||||
expected_schedules = [
|
expected_schedules = [
|
||||||
@ -1760,7 +1762,8 @@ def create_asset(**args):
|
|||||||
"total_number_of_depreciations": args.total_number_of_depreciations or 5,
|
"total_number_of_depreciations": args.total_number_of_depreciations or 5,
|
||||||
"expected_value_after_useful_life": args.expected_value_after_useful_life or 0,
|
"expected_value_after_useful_life": args.expected_value_after_useful_life or 0,
|
||||||
"depreciation_start_date": args.depreciation_start_date,
|
"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,
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
@ -19,7 +19,7 @@
|
|||||||
"depreciation_method",
|
"depreciation_method",
|
||||||
"total_number_of_depreciations",
|
"total_number_of_depreciations",
|
||||||
"rate_of_depreciation",
|
"rate_of_depreciation",
|
||||||
"daily_depreciation",
|
"depreciation_amount_based_on_num_days_in_month",
|
||||||
"column_break_8",
|
"column_break_8",
|
||||||
"frequency_of_depreciation",
|
"frequency_of_depreciation",
|
||||||
"expected_value_after_useful_life",
|
"expected_value_after_useful_life",
|
||||||
@ -179,9 +179,9 @@
|
|||||||
{
|
{
|
||||||
"default": "0",
|
"default": "0",
|
||||||
"depends_on": "eval:doc.depreciation_method == \"Straight Line\" || doc.depreciation_method == \"Manual\"",
|
"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",
|
"fieldtype": "Check",
|
||||||
"label": "Daily Depreciation",
|
"label": "Depreciation amount based on number of days in the month",
|
||||||
"print_hide": 1,
|
"print_hide": 1,
|
||||||
"read_only": 1
|
"read_only": 1
|
||||||
}
|
}
|
||||||
@ -189,7 +189,7 @@
|
|||||||
"index_web_pages_for_search": 1,
|
"index_web_pages_for_search": 1,
|
||||||
"is_submittable": 1,
|
"is_submittable": 1,
|
||||||
"links": [],
|
"links": [],
|
||||||
"modified": "2023-08-10 22:22:09.722968",
|
"modified": "2023-11-03 21:32:15.021796",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Assets",
|
"module": "Assets",
|
||||||
"name": "Asset Depreciation Schedule",
|
"name": "Asset Depreciation Schedule",
|
||||||
|
|||||||
@ -153,7 +153,9 @@ class AssetDepreciationSchedule(Document):
|
|||||||
self.frequency_of_depreciation = row.frequency_of_depreciation
|
self.frequency_of_depreciation = row.frequency_of_depreciation
|
||||||
self.rate_of_depreciation = row.rate_of_depreciation
|
self.rate_of_depreciation = row.rate_of_depreciation
|
||||||
self.expected_value_after_useful_life = row.expected_value_after_useful_life
|
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"
|
self.status = "Draft"
|
||||||
|
|
||||||
def make_depr_schedule(
|
def make_depr_schedule(
|
||||||
@ -573,7 +575,7 @@ def get_straight_line_or_manual_depr_amount(
|
|||||||
)
|
)
|
||||||
# if the Depreciation Schedule is being modified after Asset Value Adjustment due to decrease in asset value
|
# 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:
|
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 = (
|
daily_depr_amount = (
|
||||||
flt(row.value_after_depreciation) - flt(row.expected_value_after_useful_life)
|
flt(row.value_after_depreciation) - flt(row.expected_value_after_useful_life)
|
||||||
) / date_diff(
|
) / date_diff(
|
||||||
@ -618,7 +620,7 @@ def get_straight_line_or_manual_depr_amount(
|
|||||||
) / number_of_pending_depreciations
|
) / number_of_pending_depreciations
|
||||||
# if the Depreciation Schedule is being prepared for the first time
|
# if the Depreciation Schedule is being prepared for the first time
|
||||||
else:
|
else:
|
||||||
if row.daily_depreciation:
|
if row.depreciation_amount_based_on_num_days_in_month:
|
||||||
daily_depr_amount = (
|
daily_depr_amount = (
|
||||||
flt(asset.gross_purchase_amount)
|
flt(asset.gross_purchase_amount)
|
||||||
- flt(asset.opening_accumulated_depreciation)
|
- flt(asset.opening_accumulated_depreciation)
|
||||||
|
|||||||
@ -8,7 +8,7 @@
|
|||||||
"finance_book",
|
"finance_book",
|
||||||
"depreciation_method",
|
"depreciation_method",
|
||||||
"total_number_of_depreciations",
|
"total_number_of_depreciations",
|
||||||
"daily_depreciation",
|
"depreciation_amount_based_on_num_days_in_month",
|
||||||
"column_break_5",
|
"column_break_5",
|
||||||
"frequency_of_depreciation",
|
"frequency_of_depreciation",
|
||||||
"depreciation_start_date",
|
"depreciation_start_date",
|
||||||
@ -86,23 +86,23 @@
|
|||||||
"fieldtype": "Percent",
|
"fieldtype": "Percent",
|
||||||
"label": "Rate of Depreciation"
|
"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",
|
"fieldname": "salvage_value_percentage",
|
||||||
"fieldtype": "Percent",
|
"fieldtype": "Percent",
|
||||||
"label": "Salvage Value Percentage"
|
"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,
|
"index_web_pages_for_search": 1,
|
||||||
"istable": 1,
|
"istable": 1,
|
||||||
"links": [],
|
"links": [],
|
||||||
"modified": "2023-09-29 15:39:52.740594",
|
"modified": "2023-11-03 21:30:24.266601",
|
||||||
"modified_by": "Administrator",
|
"modified_by": "Administrator",
|
||||||
"module": "Assets",
|
"module": "Assets",
|
||||||
"name": "Asset Finance Book",
|
"name": "Asset Finance Book",
|
||||||
|
|||||||
@ -345,5 +345,6 @@ erpnext.patches.v14_0.rename_over_order_allowance_field
|
|||||||
erpnext.patches.v14_0.migrate_delivery_stop_lock_field
|
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", "invoice_limit", 50)
|
||||||
execute:frappe.db.set_single_value("Payment Reconciliation", "payment_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
|
# below migration patch should always run last
|
||||||
erpnext.patches.v14_0.migrate_gl_to_payment_ledger
|
erpnext.patches.v14_0.migrate_gl_to_payment_ledger
|
||||||
|
|||||||
@ -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
|
||||||
Loading…
x
Reference in New Issue
Block a user