From ae95a8aa154d264915aacc8989fd7a2a44b0b3b3 Mon Sep 17 00:00:00 2001 From: Shreya Shah Date: Mon, 28 May 2018 18:24:28 +0530 Subject: [PATCH] Update status in Purchase Receipt (#14257) * Update status on submission if per_billed = 100 * Add patch to update existing records --- erpnext/patches.txt | 1 + erpnext/patches/v10_0/update_status_in_purchase_receipt.py | 7 +++++++ erpnext/stock/doctype/purchase_receipt/purchase_receipt.py | 2 ++ 3 files changed, 10 insertions(+) create mode 100644 erpnext/patches/v10_0/update_status_in_purchase_receipt.py diff --git a/erpnext/patches.txt b/erpnext/patches.txt index 2eb0804f2a..ade6217190 100644 --- a/erpnext/patches.txt +++ b/erpnext/patches.txt @@ -502,3 +502,4 @@ erpnext.patches.v10_0.fix_reserved_qty_for_sub_contract erpnext.patches.v10_0.taxes_issue_with_pos erpnext.patches.v10_0.set_qty_in_transactions_based_on_serial_no_input erpnext.patches.v10_0.show_leaves_of_all_department_members_in_calendar +erpnext.patches.v10_0.update_status_in_purchase_receipt diff --git a/erpnext/patches/v10_0/update_status_in_purchase_receipt.py b/erpnext/patches/v10_0/update_status_in_purchase_receipt.py new file mode 100644 index 0000000000..69e2bb881b --- /dev/null +++ b/erpnext/patches/v10_0/update_status_in_purchase_receipt.py @@ -0,0 +1,7 @@ +import frappe + +def execute(): + frappe.reload_doc("stock", "doctype", "purchase_receipt") + frappe.db.sql(''' + UPDATE `tabPurchase Receipt` SET status = "Completed" WHERE per_billed = 100 AND docstatus = 1 + ''') \ No newline at end of file diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py index 2a962cc2ac..80dc4e1260 100644 --- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py +++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py @@ -120,6 +120,8 @@ class PurchaseReceipt(BuyingController): self.update_prevdoc_status() if self.per_billed < 100: self.update_billing_status() + else: + self.status = "Completed" # Updating stock ledger should always be called after updating prevdoc status, # because updating ordered qty, reserved_qty_for_subcontract in bin