Example #1
0
    def preserve_naming_series_options_in_property_setter(self):
        """preserve naming_series as property setter if it does not exist"""
        naming_series = self.get("fields", {"fieldname": "naming_series"})

        if not naming_series:
            return

        # check if atleast 1 record exists
        if not (frappe.db.table_exists("tab" + self.name) and frappe.db.sql(
                "select name from `tab{}` limit 1".format(self.name))):
            return

        existing_property_setter = frappe.db.get_value(
            "Property Setter", {
                "doc_type": self.name,
                "property": "options",
                "field_name": "naming_series"
            })

        if not existing_property_setter:
            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",
                                     validate_fields_for_doctype=False)
	def toggle_rounded_total(self):
		self.disable_rounded_total = cint(self.disable_rounded_total)

		# Make property setters to hide rounded total fields
		for doctype in ("Quotation", "Sales Order", "Sales Invoice", "Delivery Note"):
			make_property_setter(doctype, "rounded_total", "hidden", self.disable_rounded_total, "Check")
			make_property_setter(doctype, "rounded_total", "print_hide", 1, "Check")

			make_property_setter(doctype, "rounded_total_export", "hidden", self.disable_rounded_total, "Check")
			make_property_setter(doctype, "rounded_total_export", "print_hide", self.disable_rounded_total, "Check")
Example #3
0
	def preserve_naming_series_options_in_property_setter(self):
		"""preserve naming_series as property setter if it does not exist"""
		naming_series = self.get("fields", {"fieldname": "naming_series"})

		if not naming_series:
			return

		# check if atleast 1 record exists
		if not (frappe.db.table_exists("tab" + self.name) and frappe.db.sql("select name from `tab{}` limit 1".format(self.name))):
			return

		existing_property_setter = frappe.db.get_value("Property Setter", {"doc_type": self.name,
			"property": "options", "field_name": "naming_series"})

		if not existing_property_setter:
			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", validate_fields_for_doctype=False)
Example #4
0
    def toggle_rounded_total(self):
        self.disable_rounded_total = cint(self.disable_rounded_total)

        # Make property setters to hide rounded total fields
        for doctype in ("Quotation", "Sales Order", "Sales Invoice",
                        "Delivery Note"):
            make_property_setter(doctype, "rounded_total", "hidden",
                                 self.disable_rounded_total, "Check")
            make_property_setter(doctype, "rounded_total", "print_hide", 1,
                                 "Check")

            make_property_setter(doctype, "rounded_total_export", "hidden",
                                 self.disable_rounded_total, "Check")
            make_property_setter(doctype, "rounded_total_export", "print_hide",
                                 self.disable_rounded_total, "Check")
def set_series(doctype, options, default):
	make_property_setter(doctype, "naming_series", "options", options, "Text")
	make_property_setter(doctype, "naming_series", "default", default, "Text")
Example #6
0
def set_by_naming_series(doctype,
                         fieldname,
                         naming_series,
                         hide_name_field=True):
    from frappe.core.doctype.property_setter.property_setter import make_property_setter
    if naming_series:
        make_property_setter(doctype, "naming_series", "hidden", 0, "Check")
        make_property_setter(doctype, "naming_series", "reqd", 1, "Check")

        # set values for mandatory
        frappe.db.sql(
            """update `tab{doctype}` set naming_series={s} where
			ifnull(naming_series, '')=''""".format(doctype=doctype, s="%s"),
            get_default_naming_series(doctype))

        if hide_name_field:
            make_property_setter(doctype, fieldname, "reqd", 0, "Check")
            make_property_setter(doctype, fieldname, "hidden", 1, "Check")
    else:
        make_property_setter(doctype, "naming_series", "reqd", 0, "Check")
        make_property_setter(doctype, "naming_series", "hidden", 1, "Check")

        if hide_name_field:
            make_property_setter(doctype, fieldname, "hidden", 0, "Check")
            make_property_setter(doctype, fieldname, "reqd", 1, "Check")

            # set values for mandatory
            frappe.db.sql(
                """update `tab{doctype}` set `{fieldname}`=`name` where
				ifnull({fieldname}, '')=''""".format(doctype=doctype, fieldname=fieldname))
Example #7
0
def set_series(doctype, options, default):
    make_property_setter(doctype, "naming_series", "options", options, "Text")
    make_property_setter(doctype, "naming_series", "default", default, "Text")
Example #8
0
def set_by_naming_series(doctype, fieldname, naming_series, hide_name_field=True):
	from frappe.core.doctype.property_setter.property_setter import make_property_setter
	if naming_series:
		make_property_setter(doctype, "naming_series", "hidden", 0, "Check")
		make_property_setter(doctype, "naming_series", "reqd", 1, "Check")

		# set values for mandatory
		frappe.db.sql("""update `tab{doctype}` set naming_series={s} where
			ifnull(naming_series, '')=''""".format(doctype=doctype, s="%s"),
			get_default_naming_series(doctype))

		if hide_name_field:
			make_property_setter(doctype, fieldname, "reqd", 0, "Check")
			make_property_setter(doctype, fieldname, "hidden", 1, "Check")
	else:
		make_property_setter(doctype, "naming_series", "reqd", 0, "Check")
		make_property_setter(doctype, "naming_series", "hidden", 1, "Check")

		if hide_name_field:
			make_property_setter(doctype, fieldname, "hidden", 0, "Check")
			make_property_setter(doctype, fieldname, "reqd", 1, "Check")

			# set values for mandatory
			frappe.db.sql("""update `tab{doctype}` set `{fieldname}`=`name` where
				ifnull({fieldname}, '')=''""".format(doctype=doctype, fieldname=fieldname))