validate item of item_price record

This commit is contained in:
Nabin Hait 2014-02-13 15:54:51 +05:30
parent 36028bfb56
commit a038831c45
2 changed files with 63 additions and 44 deletions

View File

@ -2,7 +2,7 @@
{
"creation": "2013-02-22 01:27:42",
"docstatus": 0,
"modified": "2013-12-20 19:23:37",
"modified": "2014-02-13 11:29:35",
"modified_by": "Administrator",
"owner": "wasim@webnotestech.com"
},
@ -25,29 +25,6 @@
"doctype": "DocType",
"name": "Purchase Receipt Item Supplied"
},
{
"doctype": "DocField",
"fieldname": "reference_name",
"fieldtype": "Data",
"hidden": 0,
"in_filter": 0,
"in_list_view": 1,
"label": "Reference Name",
"oldfieldname": "reference_name",
"oldfieldtype": "Data",
"read_only": 1,
"search_index": 0
},
{
"doctype": "DocField",
"fieldname": "bom_detail_no",
"fieldtype": "Data",
"in_list_view": 1,
"label": "BOM Detail No",
"oldfieldname": "bom_detail_no",
"oldfieldtype": "Data",
"read_only": 1
},
{
"doctype": "DocField",
"fieldname": "main_item_code",
@ -65,12 +42,13 @@
"in_list_view": 1,
"label": "Raw Material Item Code",
"oldfieldname": "rm_item_code",
"oldfieldtype": "Data"
"oldfieldtype": "Data",
"read_only": 1
},
{
"doctype": "DocField",
"fieldname": "description",
"fieldtype": "Data",
"fieldtype": "Text",
"in_list_view": 1,
"label": "Description",
"oldfieldname": "description",
@ -79,6 +57,11 @@
"read_only": 1,
"width": "300px"
},
{
"doctype": "DocField",
"fieldname": "col_break1",
"fieldtype": "Column Break"
},
{
"doctype": "DocField",
"fieldname": "required_qty",
@ -98,6 +81,16 @@
"oldfieldtype": "Currency",
"reqd": 1
},
{
"doctype": "DocField",
"fieldname": "stock_uom",
"fieldtype": "Link",
"label": "Stock Uom",
"oldfieldname": "stock_uom",
"oldfieldtype": "Data",
"options": "UOM",
"read_only": 1
},
{
"doctype": "DocField",
"fieldname": "rate",
@ -105,16 +98,7 @@
"label": "Rate",
"oldfieldname": "rate",
"oldfieldtype": "Currency",
"options": "Company:company:default_currency"
},
{
"doctype": "DocField",
"fieldname": "conversion_factor",
"fieldtype": "Float",
"hidden": 1,
"label": "Conversion Factor",
"oldfieldname": "conversion_factor",
"oldfieldtype": "Currency",
"options": "Company:company:default_currency",
"read_only": 1
},
{
@ -129,21 +113,46 @@
},
{
"doctype": "DocField",
"fieldname": "stock_uom",
"fieldtype": "Link",
"label": "Stock Uom",
"oldfieldname": "stock_uom",
"oldfieldtype": "Data",
"options": "UOM",
"fieldname": "conversion_factor",
"fieldtype": "Float",
"hidden": 1,
"label": "Conversion Factor",
"oldfieldname": "conversion_factor",
"oldfieldtype": "Currency",
"read_only": 1
},
{
"doctype": "DocField",
"fieldname": "current_stock",
"fieldtype": "Float",
"hidden": 1,
"label": "Current Stock",
"oldfieldname": "current_stock",
"oldfieldtype": "Currency",
"read_only": 1
},
{
"doctype": "DocField",
"fieldname": "reference_name",
"fieldtype": "Data",
"hidden": 1,
"in_filter": 0,
"in_list_view": 1,
"label": "Reference Name",
"oldfieldname": "reference_name",
"oldfieldtype": "Data",
"read_only": 1,
"search_index": 0
},
{
"doctype": "DocField",
"fieldname": "bom_detail_no",
"fieldtype": "Data",
"hidden": 1,
"in_list_view": 1,
"label": "BOM Detail No",
"oldfieldname": "bom_detail_no",
"oldfieldtype": "Data",
"read_only": 1
}
]

View File

@ -12,10 +12,19 @@ class DocType:
self.doc, self.doclist = d, dl
def validate(self):
self.validate_item()
self.validate_price_list()
self.check_duplicate_item()
self.update_price_list_details()
self.update_item_details()
def validate_item(self):
if not webnotes.conn.exists("Item", self.doc.item_code):
throw("{doctype}: {item} {not_found}".format(**{
"doctype": _("Item"),
"item": self.doc.item_code,
"not_found": _(" not found")
}))
def validate_price_list(self):
enabled = webnotes.conn.get_value("Price List", self.doc.price_list, "enabled")
@ -38,8 +47,9 @@ class DocType:
}), ItemPriceDuplicateItem)
def update_price_list_details(self):
self.doc.buying, self.doc.selling, self.doc.currency = webnotes.conn.get_value("Price List",
{"name": self.doc.price_list, "enabled": 1}, ["buying", "selling", "currency"])
self.doc.buying, self.doc.selling, self.doc.currency = \
webnotes.conn.get_value("Price List", {"name": self.doc.price_list, "enabled": 1},
["buying", "selling", "currency"])
def update_item_details(self):
self.doc.item_name, self.doc.item_description = webnotes.conn.get_value("Item",