Skip to content

Commit

Permalink
fix: set default asset quantity as 1 [dev] (#38223)
Browse files Browse the repository at this point in the history
* fix: make default asset quantity as 1

* fix: get rate_of_depreciation from asset category for asset auto-creation

* chore: create asset depr schedules on PR submit, not asset submit

* fix: set default asset quantity as 1

* chore: move patch from v15 to v14
  • Loading branch information
anandbaburajan authored Nov 20, 2023
1 parent f50d933 commit 9903049
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 15 deletions.
3 changes: 2 additions & 1 deletion erpnext/assets/doctype/asset/asset.json
Original file line number Diff line number Diff line change
Expand Up @@ -481,6 +481,7 @@
"read_only": 1
},
{
"default": "1",
"fieldname": "asset_quantity",
"fieldtype": "Int",
"label": "Asset Quantity",
Expand Down Expand Up @@ -571,7 +572,7 @@
"link_fieldname": "target_asset"
}
],
"modified": "2023-11-15 17:40:17.315203",
"modified": "2023-11-20 20:57:37.010467",
"modified_by": "Administrator",
"module": "Assets",
"name": "Asset",
Expand Down
33 changes: 20 additions & 13 deletions erpnext/assets/doctype/asset/asset.py
Original file line number Diff line number Diff line change
Expand Up @@ -46,12 +46,28 @@ def validate(self):
self.validate_item()
self.validate_cost_center()
self.set_missing_values()
self.validate_gross_and_purchase_amount()
self.validate_expected_value_after_useful_life()
self.validate_finance_books()

if not self.split_from:
self.prepare_depreciation_data()
update_draft_asset_depr_schedules(self)
self.validate_gross_and_purchase_amount()
self.validate_expected_value_after_useful_life()

if self.calculate_depreciation:
update_draft_asset_depr_schedules(self)

if frappe.db.exists("Asset", self.name):
asset_depr_schedules_names = make_draft_asset_depr_schedules_if_not_present(self)

if asset_depr_schedules_names:
asset_depr_schedules_links = get_comma_separated_links(
asset_depr_schedules_names, "Asset Depreciation Schedule"
)
frappe.msgprint(
_(
"Asset Depreciation Schedules created:<br>{0}<br><br>Please check, edit if needed, and submit the Asset."
).format(asset_depr_schedules_links)
)

self.status = self.get_status()

Expand All @@ -61,17 +77,7 @@ def on_submit(self):
if not self.booked_fixed_asset and self.validate_make_gl_entry():
self.make_gl_entries()
if self.calculate_depreciation and not self.split_from:
asset_depr_schedules_names = make_draft_asset_depr_schedules_if_not_present(self)
convert_draft_asset_depr_schedules_into_active(self)
if asset_depr_schedules_names:
asset_depr_schedules_links = get_comma_separated_links(
asset_depr_schedules_names, "Asset Depreciation Schedule"
)
frappe.msgprint(
_(
"Asset Depreciation Schedules created:<br>{0}<br><br>Please check, edit if needed, and submit the Asset."
).format(asset_depr_schedules_links)
)
self.set_status()
add_asset_activity(self.name, _("Asset submitted"))

Expand Down Expand Up @@ -823,6 +829,7 @@ def get_item_details(item_code, asset_category, gross_purchase_amount):
"expected_value_after_useful_life": flt(gross_purchase_amount)
* flt(d.salvage_value_percentage / 100),
"depreciation_start_date": d.depreciation_start_date or nowdate(),
"rate_of_depreciation": d.rate_of_depreciation,
}
)

Expand Down
2 changes: 1 addition & 1 deletion erpnext/controllers/buying_controller.py
Original file line number Diff line number Diff line change
Expand Up @@ -758,7 +758,7 @@ def make_asset(self, row, is_grouped_asset=False):
"calculate_depreciation": 0,
"purchase_receipt_amount": purchase_amount,
"gross_purchase_amount": purchase_amount,
"asset_quantity": row.qty if is_grouped_asset else 0,
"asset_quantity": row.qty if is_grouped_asset else 1,
"purchase_receipt": self.name if self.doctype == "Purchase Receipt" else None,
"purchase_invoice": self.name if self.doctype == "Purchase Invoice" else None,
}
Expand Down
1 change: 1 addition & 0 deletions erpnext/patches.txt
Original file line number Diff line number Diff line change
Expand Up @@ -351,5 +351,6 @@ erpnext.patches.v15_0.rename_daily_depreciation_to_depreciation_amount_based_on_
erpnext.patches.v15_0.rename_depreciation_amount_based_on_num_days_in_month_to_daily_prorata_based
erpnext.patches.v15_0.set_reserved_stock_in_bin
erpnext.patches.v14_0.create_accounting_dimensions_in_supplier_quotation
erpnext.patches.v14_0.update_zero_asset_quantity_field
# below migration patch should always run last
erpnext.patches.v14_0.migrate_gl_to_payment_ledger
6 changes: 6 additions & 0 deletions erpnext/patches/v14_0/update_zero_asset_quantity_field.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import frappe


def execute():
asset = frappe.qb.DocType("Asset")
frappe.qb.update(asset).set(asset.asset_quantity, 1).where(asset.asset_quantity == 0).run()

0 comments on commit 9903049

Please sign in to comment.