Ignore validate for doctype fields while making property setter to preserve naming series

This commit is contained in:
Nabin Hait 2014-08-20 18:23:44 +05:30
parent c46ea4614e
commit 043373683d
2 changed files with 5 additions and 5 deletions

View file

@ -133,9 +133,9 @@ class DocType(Document):
"property": "options", "field_name": "naming_series"})
if not existing_property_setter:
make_property_setter(self.name, "naming_series", "options", naming_series[0].options, "Text", ignore_validate=True)
make_property_setter(self.name, "naming_series", "options", naming_series[0].options, "Text", validate_fields_for_doctype=False)
if naming_series[0].default:
make_property_setter(self.name, "naming_series", "default", naming_series[0].default, "Text", ignore_validate=True)
make_property_setter(self.name, "naming_series", "default", naming_series[0].default, "Text", validate_fields_for_doctype=False)
def export_doc(self):
from frappe.modules.export_file import export_to_files

View file

@ -50,11 +50,11 @@ class PropertySetter(Document):
(self.field_name, self.doc_type), as_dict = 1)[0]
def on_update(self):
if not getattr(self, "ignore_validate", False):
if not getattr(self, "ignore_validate", False) and getattr(self, "validate_fields_for_doctype", True):
from frappe.core.doctype.doctype.doctype import validate_fields_for_doctype
validate_fields_for_doctype(self.doc_type)
def make_property_setter(doctype, fieldname, property, value, property_type, for_doctype = False, ignore_validate=False):
def make_property_setter(doctype, fieldname, property, value, property_type, for_doctype = False, validate_fields_for_doctype=True):
# WARNING: Ignores Permissions
property_setter = frappe.get_doc({
"doctype":"Property Setter",
@ -66,6 +66,6 @@ def make_property_setter(doctype, fieldname, property, value, property_type, for
"property_type": property_type
})
property_setter.ignore_permissions = True
property_setter.ignore_validate = ignore_validate
property_setter.validate_fields_for_doctype = validate_fields_for_doctype
property_setter.insert()
return property_setter