37 lines
772 B
Python
37 lines
772 B
Python
import frappe
|
|
|
|
|
|
def execute():
|
|
# handle type casting for is_cancelled field
|
|
module_doctypes = (
|
|
("stock", "Stock Ledger Entry"),
|
|
("stock", "Serial No"),
|
|
("accounts", "GL Entry"),
|
|
)
|
|
|
|
for module, doctype in module_doctypes:
|
|
if (
|
|
not frappe.db.has_column(doctype, "is_cancelled")
|
|
or frappe.db.get_column_type(doctype, "is_cancelled").lower() == "int(1)"
|
|
):
|
|
continue
|
|
|
|
frappe.db.sql(
|
|
"""
|
|
UPDATE `tab{doctype}`
|
|
SET is_cancelled = 0
|
|
where is_cancelled in ('', 'No') or is_cancelled is NULL""".format(
|
|
doctype=doctype
|
|
)
|
|
)
|
|
frappe.db.sql(
|
|
"""
|
|
UPDATE `tab{doctype}`
|
|
SET is_cancelled = 1
|
|
where is_cancelled = 'Yes'""".format(
|
|
doctype=doctype
|
|
)
|
|
)
|
|
|
|
frappe.reload_doc(module, "doctype", frappe.scrub(doctype))
|