From 94d3963dd25cf1c8f454a80c65ef0073d1bd23bb Mon Sep 17 00:00:00 2001 From: Nabin Hait Date: Tue, 6 Aug 2013 15:58:44 +0530 Subject: [PATCH] [perpetual accounting] get account stock balance difference --- accounts/utils.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/accounts/utils.py b/accounts/utils.py index 98d825257e..04f30b870a 100644 --- a/accounts/utils.py +++ b/accounts/utils.py @@ -367,7 +367,7 @@ def get_stock_and_account_difference(warehouse_list=None): if not warehouse_list: warehouse_list = webnotes.conn.sql_list("""select name from tabWarehouse where docstatus<2""") - + account_warehouse_map = {} warehouse_with_no_account = [] difference = {} @@ -382,9 +382,11 @@ def get_stock_and_account_difference(warehouse_list=None): msgprint(_("Please mention Perpetual Account in warehouse master for following warehouses") + ": " + '\n'.join(warehouse_with_no_account), raise_exception=1) - for account, warehouse in account_warehouse_map.items(): + bin_map = get_latest_stock_balance() + for account, warehouse_list in account_warehouse_map.items(): account_balance = get_balance_on(account) - stock_value = get_latest_stock_balance(warehouse) + stock_value = sum([sum(bin_map.get(warehouse, {}).values()) + for warehouse in warehouse_list]) if stock_value - account_balance: difference.setdefault(account, (stock_value - account_balance))