Merge pull request #15983 from rohitwaghchaure/fixed_claimed_amount_issue
Claimed amount is not reset on cancel of employee advance
diff --git a/erpnext/__init__.py b/erpnext/__init__.py
index 7c26e1d..981ca9a 100644
--- a/erpnext/__init__.py
+++ b/erpnext/__init__.py
@@ -5,7 +5,7 @@
from erpnext.hooks import regional_overrides
from frappe.utils import getdate
-__version__ = '10.1.69'
+__version__ = '10.1.71'
def get_default_company(user=None):
'''Get default company for user'''
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 6c7a252..bc6f99d 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -506,4 +506,5 @@
erpnext.patches.v10_0.set_discount_amount
erpnext.patches.v10_0.recalculate_gross_margin_for_project
erpnext.patches.v10_0.delete_hub_documents
-erpnext.patches.v10_0.update_user_image_in_employee
\ No newline at end of file
+erpnext.patches.v10_0.update_user_image_in_employee
+erpnext.patches.v10_0.repost_gle_for_purchase_receipts_with_rejected_items
\ No newline at end of file
diff --git a/erpnext/patches/v10_0/repost_gle_for_purchase_receipts_with_rejected_items.py b/erpnext/patches/v10_0/repost_gle_for_purchase_receipts_with_rejected_items.py
new file mode 100644
index 0000000..68c06ef
--- /dev/null
+++ b/erpnext/patches/v10_0/repost_gle_for_purchase_receipts_with_rejected_items.py
@@ -0,0 +1,32 @@
+# Copyright (c) 2017, Frappe and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe, erpnext
+
+def execute():
+ for company in frappe.get_all("Company"):
+ if not erpnext.is_perpetual_inventory_enabled(company.name):
+ continue
+
+ acc_frozen_upto = frappe.db.get_value("Accounts Settings", None, "acc_frozen_upto") or "1900-01-01"
+ pr_with_rejected_warehouse = frappe.db.sql("""
+ select pr.name
+ from `tabPurchase Receipt` pr, `tabPurchase Receipt Item` pr_item
+ where pr.name = pr_item.parent
+ and pr.posting_date > %s
+ and pr.docstatus=1
+ and pr.company = %s
+ and pr_item.rejected_qty > 0
+ """, (acc_frozen_upto, company.name), as_dict=1)
+
+ for d in pr_with_rejected_warehouse:
+ doc = frappe.get_doc("Purchase Receipt", d.name)
+
+ doc.docstatus = 2
+ doc.make_gl_entries_on_cancel(repost_future_gle=False)
+
+
+ # update gl entries for submit state of PR
+ doc.docstatus = 1
+ doc.make_gl_entries(repost_future_gle=False)
diff --git a/erpnext/setup/utils.py b/erpnext/setup/utils.py
index f318c04..dfff74a 100644
--- a/erpnext/setup/utils.py
+++ b/erpnext/setup/utils.py
@@ -95,7 +95,7 @@
if not value:
import requests
- api_url = "https://frankfurter.erpnext.org/{0}".format(transaction_date)
+ api_url = "https://frankfurter.app/{0}".format(transaction_date)
response = requests.get(api_url, params={
"base": from_currency,
"symbols": to_currency
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
index 80dc4e1..2c56a97 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -182,7 +182,8 @@
if warehouse_account.get(d.warehouse):
stock_value_diff = frappe.db.get_value("Stock Ledger Entry",
{"voucher_type": "Purchase Receipt", "voucher_no": self.name,
- "voucher_detail_no": d.name}, "stock_value_difference")
+ "voucher_detail_no": d.name, "warehouse": d.warehouse}, "stock_value_difference")
+
if not stock_value_diff:
continue
gl_entries.append(self.get_gl_dict({