Merge pull request #34960 from rohitwaghchaure/fixed-stock-entry-type
fix: stock entry type issue
diff --git a/erpnext/__init__.py b/erpnext/__init__.py
index e0f0c98..c9c9c9c 100644
--- a/erpnext/__init__.py
+++ b/erpnext/__init__.py
@@ -1,3 +1,4 @@
+import functools
import inspect
import frappe
@@ -120,12 +121,14 @@
You can also set global company flag in `frappe.flags.company`
"""
- if company or frappe.flags.company:
- return frappe.get_cached_value("Company", company or frappe.flags.company, "country")
- elif frappe.flags.country:
- return frappe.flags.country
- else:
- return frappe.get_system_settings("country")
+
+ if not company:
+ company = frappe.local.flags.company
+
+ if company:
+ return frappe.get_cached_value("Company", company, "country")
+
+ return frappe.flags.country or frappe.get_system_settings("country")
def allow_regional(fn):
@@ -136,6 +139,7 @@
def myfunction():
pass"""
+ @functools.wraps(fn)
def caller(*args, **kwargs):
overrides = frappe.get_hooks("regional_overrides", {}).get(get_region())
function_path = f"{inspect.getmodule(fn).__name__}.{fn.__name__}"
diff --git a/erpnext/accounts/party.py b/erpnext/accounts/party.py
index ac9368e..7747042 100644
--- a/erpnext/accounts/party.py
+++ b/erpnext/accounts/party.py
@@ -259,6 +259,8 @@
)
if doctype in TRANSACTION_TYPES:
+ # required to set correct region
+ frappe.flags.company = company
get_regional_address_details(party_details, doctype, company)
return party_address, shipping_address
diff --git a/erpnext/controllers/taxes_and_totals.py b/erpnext/controllers/taxes_and_totals.py
index 1edd7bf..4661c5c 100644
--- a/erpnext/controllers/taxes_and_totals.py
+++ b/erpnext/controllers/taxes_and_totals.py
@@ -976,6 +976,8 @@
@frappe.whitelist()
def get_round_off_applicable_accounts(company, account_list):
+ # required to set correct region
+ frappe.flags.company = company
account_list = get_regional_round_off_accounts(company, account_list)
return account_list
diff --git a/erpnext/manufacturing/doctype/work_order/work_order.js b/erpnext/manufacturing/doctype/work_order/work_order.js
index 97480b2..d0c9966 100644
--- a/erpnext/manufacturing/doctype/work_order/work_order.js
+++ b/erpnext/manufacturing/doctype/work_order/work_order.js
@@ -625,20 +625,18 @@
// all materials transferred for manufacturing, make this primary
finish_btn.addClass('btn-primary');
}
- } else {
- frappe.db.get_doc("Manufacturing Settings").then((doc) => {
- let allowance_percentage = doc.overproduction_percentage_for_work_order;
+ } else if (frm.doc.__onload && frm.doc.__onload.overproduction_percentage) {
+ let allowance_percentage = frm.doc.__onload.overproduction_percentage;
- if (allowance_percentage > 0) {
- let allowed_qty = frm.doc.qty + ((allowance_percentage / 100) * frm.doc.qty);
+ if (allowance_percentage > 0) {
+ let allowed_qty = frm.doc.qty + ((allowance_percentage / 100) * frm.doc.qty);
- if ((flt(doc.produced_qty) < allowed_qty)) {
- frm.add_custom_button(__('Finish'), function() {
- erpnext.work_order.make_se(frm, 'Manufacture');
- });
- }
+ if ((flt(doc.produced_qty) < allowed_qty)) {
+ frm.add_custom_button(__('Finish'), function() {
+ erpnext.work_order.make_se(frm, 'Manufacture');
+ });
}
- });
+ }
}
}
} else {