From aa1f2a7297b09a600f84d2b552316aa899d288f1 Mon Sep 17 00:00:00 2001 From: anandbaburajan Date: Tue, 10 Jan 2023 23:05:09 +0530 Subject: [PATCH 1/2] fix: asset value in fixed asset register --- .../fixed_asset_register.py | 22 ++++++++++++++----- 1 file changed, 17 insertions(+), 5 deletions(-) diff --git a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py index bb50df0ba2..faffd1134d 100644 --- a/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py +++ b/erpnext/assets/report/fixed_asset_register/fixed_asset_register.py @@ -86,6 +86,7 @@ def get_data(filters): "status", "department", "cost_center", + "calculate_depreciation", "purchase_receipt", "asset_category", "purchase_date", @@ -98,11 +99,7 @@ def get_data(filters): assets_record = frappe.db.get_all("Asset", filters=conditions, fields=fields) for asset in assets_record: - asset_value = ( - asset.gross_purchase_amount - - flt(asset.opening_accumulated_depreciation) - - flt(depreciation_amount_map.get(asset.name)) - ) + asset_value = get_asset_value(asset, filters.finance_book) row = { "asset_id": asset.asset_id, "asset_name": asset.asset_name, @@ -125,6 +122,21 @@ def get_data(filters): return data +def get_asset_value(asset, finance_book=None): + if not asset.calculate_depreciation: + return flt(asset.gross_purchase_amount) - flt(asset.opening_accumulated_depreciation) + + finance_book_filter = ["finance_book", "is", "not set"] + if finance_book: + finance_book_filter = ["finance_book", "=", finance_book] + + return frappe.db.get_value( + doctype="Asset Finance Book", + filters=[["parent", "=", asset.asset_id], finance_book_filter], + fieldname="value_after_depreciation", + ) + + def prepare_chart_data(data, filters): labels_values_map = {} date_field = frappe.scrub(filters.date_based_on) From e22d56484d7f4b8696bc48db2ac8dcc76e69e497 Mon Sep 17 00:00:00 2001 From: Ritwik Puri Date: Fri, 13 Jan 2023 00:47:26 +0530 Subject: [PATCH 2/2] chore: reuse doc object in test_pick_list_grouping_before_print (#33636) --- erpnext/stock/doctype/pick_list/test_pick_list.py | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/erpnext/stock/doctype/pick_list/test_pick_list.py b/erpnext/stock/doctype/pick_list/test_pick_list.py index 71663e8ff4..43acdf0836 100644 --- a/erpnext/stock/doctype/pick_list/test_pick_list.py +++ b/erpnext/stock/doctype/pick_list/test_pick_list.py @@ -460,16 +460,7 @@ class TestPickList(FrappeTestCase): self.assertEqual(len(pl.locations), 4) # grouping should halve the number of items - pl = frappe.get_doc( - doctype="Pick List", - group_same_items=True, - locations=[ - _dict(item_code="A", warehouse="X", qty=5, picked_qty=1), - _dict(item_code="B", warehouse="Y", qty=4, picked_qty=2), - _dict(item_code="A", warehouse="X", qty=3, picked_qty=2), - _dict(item_code="B", warehouse="Y", qty=2, picked_qty=2), - ], - ) + pl.group_same_items = True pl.before_print() self.assertEqual(len(pl.locations), 2)