[feature] Ability to set UOM as Integer-only and related validations.

This commit is contained in:
Rushabh Mehta
2013-07-25 17:45:59 +05:30
parent 966c9f6a8e
commit 4dca40195e
39 changed files with 153 additions and 78 deletions

View File

@@ -24,6 +24,7 @@ from webnotes import msgprint
sql = webnotes.conn.sql
from utilities.transaction_base import TransactionBase
class DocType(TransactionBase):
def __init__(self,doc,doclist):
self.doc = doc
@@ -138,6 +139,7 @@ class DocType(TransactionBase):
def validate(self):
self.set_last_contact_date()
self.validate_item_details()
self.validate_uom_is_integer("uom", "qty")
self.validate_lead_cust()
from accounts.utils import validate_fiscal_year

View File

@@ -135,6 +135,9 @@ class DocType(SellingController):
self.set_last_contact_date()
self.validate_order_type()
self.validate_for_items()
self.validate_uom_is_integer("stock_uom", "qty")
sales_com_obj = get_obj('Sales Common')
sales_com_obj.check_active_sales_items(self)
sales_com_obj.validate_max_discount(self,'quotation_details')

View File

@@ -2,7 +2,7 @@
{
"creation": "2013-03-07 11:42:57",
"docstatus": 0,
"modified": "2013-07-10 14:54:18",
"modified": "2013-07-25 16:35:50",
"modified_by": "Administrator",
"owner": "Administrator"
},
@@ -110,11 +110,12 @@
{
"doctype": "DocField",
"fieldname": "stock_uom",
"fieldtype": "Data",
"fieldtype": "Link",
"in_list_view": 0,
"label": "UOM",
"oldfieldname": "stock_uom",
"oldfieldtype": "Data",
"options": "UOM",
"print_hide": 0,
"print_width": "100px",
"read_only": 1,

View File

@@ -31,6 +31,9 @@ class DocType:
self.check_duplicate()
self.validate_main_item()
from utilities.transaction_base import validate_uom_is_integer
validate_uom_is_integer(self.doclist, "uom", "qty")
def validate_main_item(self):
"""main item must have Is Stock Item as No and Is Sales Item as Yes"""
if not webnotes.conn.sql("""select name from tabItem where name=%s and

View File

@@ -139,6 +139,7 @@ class DocType(SellingController):
self.validate_mandatory()
self.validate_proj_cust()
self.validate_po()
self.validate_uom_is_integer("stock_uom", "qty")
if self.doc.docstatus == 1:
self.validate_for_items()

View File

@@ -2,7 +2,7 @@
{
"creation": "2013-03-07 11:42:58",
"docstatus": 0,
"modified": "2013-07-10 14:54:21",
"modified": "2013-07-25 16:36:10",
"modified_by": "Administrator",
"owner": "Administrator"
},
@@ -104,12 +104,13 @@
{
"doctype": "DocField",
"fieldname": "stock_uom",
"fieldtype": "Data",
"fieldtype": "Link",
"hidden": 0,
"in_list_view": 0,
"label": "UOM",
"oldfieldname": "stock_uom",
"oldfieldtype": "Data",
"options": "UOM",
"print_width": "70px",
"read_only": 1,
"reqd": 0,