Merge pull request #4161 from rmehta/sales-order-status

[fix] Sales Order status for Maintenance
This commit is contained in:
Rushabh Mehta 2015-10-13 12:38:00 +05:30
commit 079d0b7108
4 changed files with 11 additions and 2 deletions

View File

@ -34,6 +34,7 @@ status_map = {
["To Bill", "eval:self.per_delivered == 100 and self.per_billed < 100 and self.docstatus == 1"], ["To Bill", "eval:self.per_delivered == 100 and self.per_billed < 100 and self.docstatus == 1"],
["To Deliver", "eval:self.per_delivered < 100 and self.per_billed == 100 and self.docstatus == 1"], ["To Deliver", "eval:self.per_delivered < 100 and self.per_billed == 100 and self.docstatus == 1"],
["Completed", "eval:self.per_delivered == 100 and self.per_billed == 100 and self.docstatus == 1"], ["Completed", "eval:self.per_delivered == 100 and self.per_billed == 100 and self.docstatus == 1"],
["Completed", "eval:self.order_type == 'Maintenance' and self.per_billed == 100 and self.docstatus == 1"],
["Stopped", "eval:self.status=='Stopped'"], ["Stopped", "eval:self.status=='Stopped'"],
["Cancelled", "eval:self.docstatus==2"], ["Cancelled", "eval:self.docstatus==2"],
], ],

View File

@ -217,3 +217,4 @@ erpnext.patches.v6_4.fix_journal_entries_due_to_reconciliation
erpnext.patches.v6_4.fix_status_in_sales_and_purchase_order erpnext.patches.v6_4.fix_status_in_sales_and_purchase_order
erpnext.patches.v6_4.fix_modified_in_sales_order_and_purchase_order erpnext.patches.v6_4.fix_modified_in_sales_order_and_purchase_order
erpnext.patches.v6_4.fix_duplicate_bins erpnext.patches.v6_4.fix_duplicate_bins
erpnext.patches.v6_4.fix_sales_order_maintenance_status

View File

@ -0,0 +1,7 @@
import frappe
def execute():
for doc in frappe.get_all("Sales Order", filters={"docstatus": 1,
"order_type": "Maintenance"}):
doc = frappe.get_doc("Sales Order", doc.name)
doc.set_status(update=True)

View File

@ -201,7 +201,7 @@ class Item(WebsiteGenerator):
if self.re_order_level or len(self.get("reorder_levels", {"material_request_type": "Purchase"})): if self.re_order_level or len(self.get("reorder_levels", {"material_request_type": "Purchase"})):
if not (self.is_purchase_item or self.is_pro_applicable): if not (self.is_purchase_item or self.is_pro_applicable):
frappe.throw(_("""To set reorder level, item must be a Purchase Item or Prodcution Item""")) frappe.throw(_("""To set reorder level, item must be a Purchase Item or Manufacturing Item"""))
def validate_warehouse_for_reorder(self): def validate_warehouse_for_reorder(self):
warehouse = [] warehouse = []