Skip to content

Commit

Permalink
Merge pull request #34962 from frappe/mergify/bp/version-14-hotfix/pr…
Browse files Browse the repository at this point in the history
…-34738

fix: misc regional improvements (backport #34738)
  • Loading branch information
sagarvora committed Apr 20, 2023
2 parents 56ef0ba + 2ec18eb commit 6e0d22c
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 6 deletions.
16 changes: 10 additions & 6 deletions erpnext/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import functools
import inspect

import frappe
Expand Down Expand Up @@ -120,12 +121,14 @@ def get_region(company=None):
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):
Expand All @@ -136,6 +139,7 @@ def allow_regional(fn):
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__}"
Expand Down
2 changes: 2 additions & 0 deletions erpnext/accounts/party.py
Original file line number Diff line number Diff line change
Expand Up @@ -259,6 +259,8 @@ def set_address_details(
)

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
Expand Down
2 changes: 2 additions & 0 deletions erpnext/controllers/taxes_and_totals.py
Original file line number Diff line number Diff line change
Expand Up @@ -976,6 +976,8 @@ def get_itemised_tax_breakup_html(doc):

@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
Expand Down

0 comments on commit 6e0d22c

Please sign in to comment.