Merge pull request #39402 from ruthra-kumar/fix_project_query
fix: project query controller logic
diff --git a/erpnext/accounts/doctype/subscription/test_subscription.py b/erpnext/accounts/doctype/subscription/test_subscription.py
index 37326fd..a46642a 100644
--- a/erpnext/accounts/doctype/subscription/test_subscription.py
+++ b/erpnext/accounts/doctype/subscription/test_subscription.py
@@ -460,11 +460,13 @@
self.assertEqual(len(subscription.invoices), 1)
def test_multi_currency_subscription(self):
+ party = "_Test Subscription Customer"
+ frappe.db.set_value("Customer", party, "default_currency", "USD")
subscription = create_subscription(
start_date="2018-01-01",
generate_invoice_at="Beginning of the current subscription period",
plans=[{"plan": "_Test Plan Multicurrency", "qty": 1, "currency": "USD"}],
- party="_Test Subscription Customer",
+ party=party,
)
subscription.process()
diff --git a/erpnext/stock/doctype/bin/bin.json b/erpnext/stock/doctype/bin/bin.json
index 10d9511..39e0917 100644
--- a/erpnext/stock/doctype/bin/bin.json
+++ b/erpnext/stock/doctype/bin/bin.json
@@ -186,7 +186,7 @@
"idx": 1,
"in_create": 1,
"links": [],
- "modified": "2023-11-01 16:51:17.079107",
+ "modified": "2024-01-16 15:11:46.140323",
"modified_by": "Administrator",
"module": "Stock",
"name": "Bin",
@@ -213,6 +213,21 @@
"read": 1,
"report": 1,
"role": "Stock User"
+ },
+ {
+ "read": 1,
+ "report": 1,
+ "role": "Stock Manager"
+ },
+ {
+ "read": 1,
+ "report": 1,
+ "role": "Purchase Manager"
+ },
+ {
+ "read": 1,
+ "report": 1,
+ "role": "Sales Manager"
}
],
"quick_entry": 1,
diff --git a/erpnext/stock/report/stock_ageing/stock_ageing.py b/erpnext/stock/report/stock_ageing/stock_ageing.py
index f055c6c..02ac8c6 100644
--- a/erpnext/stock/report/stock_ageing/stock_ageing.py
+++ b/erpnext/stock/report/stock_ageing/stock_ageing.py
@@ -233,28 +233,30 @@
"""
stock_ledger_entries = self.sle
- if stock_ledger_entries is None:
- stock_ledger_entries = self.__get_stock_ledger_entries()
- for d in stock_ledger_entries:
- key, fifo_queue, transferred_item_key = self.__init_key_stores(d)
+ with frappe.db.unbuffered_cursor():
+ if stock_ledger_entries is None:
+ stock_ledger_entries = self.__get_stock_ledger_entries()
- if d.voucher_type == "Stock Reconciliation":
- # get difference in qty shift as actual qty
- prev_balance_qty = self.item_details[key].get("qty_after_transaction", 0)
- d.actual_qty = flt(d.qty_after_transaction) - flt(prev_balance_qty)
+ for d in stock_ledger_entries:
+ key, fifo_queue, transferred_item_key = self.__init_key_stores(d)
- serial_nos = get_serial_nos(d.serial_no) if d.serial_no else []
+ if d.voucher_type == "Stock Reconciliation":
+ # get difference in qty shift as actual qty
+ prev_balance_qty = self.item_details[key].get("qty_after_transaction", 0)
+ d.actual_qty = flt(d.qty_after_transaction) - flt(prev_balance_qty)
- if d.actual_qty > 0:
- self.__compute_incoming_stock(d, fifo_queue, transferred_item_key, serial_nos)
- else:
- self.__compute_outgoing_stock(d, fifo_queue, transferred_item_key, serial_nos)
+ serial_nos = get_serial_nos(d.serial_no) if d.serial_no else []
- self.__update_balances(d, key)
+ if d.actual_qty > 0:
+ self.__compute_incoming_stock(d, fifo_queue, transferred_item_key, serial_nos)
+ else:
+ self.__compute_outgoing_stock(d, fifo_queue, transferred_item_key, serial_nos)
- # Note that stock_ledger_entries is an iterator, you can not reuse it like a list
- del stock_ledger_entries
+ self.__update_balances(d, key)
+
+ # Note that stock_ledger_entries is an iterator, you can not reuse it like a list
+ del stock_ledger_entries
if not self.filters.get("show_warehouse_wise_stock"):
# (Item 1, WH 1), (Item 1, WH 2) => (Item 1)