Merge pull request #1616 from pdvyas/migrate-3to4
3 to 4 migration fixes
diff --git a/erpnext/hr/doctype/employee/employee.py b/erpnext/hr/doctype/employee/employee.py
index 6846b87..687c6ce 100644
--- a/erpnext/hr/doctype/employee/employee.py
+++ b/erpnext/hr/doctype/employee/employee.py
@@ -155,6 +155,8 @@
throw(_("Please enter relieving date."))
def validate_for_enabled_user_id(self):
+ if not self.status == 'Active':
+ return
enabled = frappe.db.sql("""select name from `tabUser` where
name=%s and enabled=1""", self.user_id)
if not enabled:
diff --git a/erpnext/patches/4_0/customer_discount_to_pricing_rule.py b/erpnext/patches/4_0/customer_discount_to_pricing_rule.py
index a92568e..87aa792 100644
--- a/erpnext/patches/4_0/customer_discount_to_pricing_rule.py
+++ b/erpnext/patches/4_0/customer_discount_to_pricing_rule.py
@@ -23,10 +23,10 @@
"item_group": item_group,
"applicable_for": "Customer",
"customer": d.parent,
- "price_or_discount": "Discount",
+ "price_or_discount": "Discount Percentage",
"discount_percentage": d.discount
}).insert()
frappe.db.auto_commit_on_many_writes = False
- frappe.delete_doc("DocType", "Customer Discount")
\ No newline at end of file
+ frappe.delete_doc("DocType", "Customer Discount")
diff --git a/erpnext/patches/4_0/update_user_properties.py b/erpnext/patches/4_0/update_user_properties.py
index dfec48b..1c746d3 100644
--- a/erpnext/patches/4_0/update_user_properties.py
+++ b/erpnext/patches/4_0/update_user_properties.py
@@ -8,6 +8,7 @@
def execute():
frappe.reload_doc("core", "doctype", "docperm")
+ frappe.reload_doc("hr", "doctype", "employee")
update_user_properties()
update_user_match()
add_employee_restrictions_to_leave_approver()
@@ -82,13 +83,11 @@
# add Employee restrictions (in on_update method)
for employee in frappe.db.sql_list("""select name from `tabEmployee`
- where exists(select leave_approver from `tabEmployee Leave Approver`
+ where (exists(select leave_approver from `tabEmployee Leave Approver`
where `tabEmployee Leave Approver`.parent=`tabEmployee`.name)
- or ifnull(`reports_to`, '')!=''"""):
+ or ifnull(`reports_to`, '')!='') and docstatus<2 and status='Active'"""):
- emp = frappe.get_doc("Employee", employee)
- emp.ignore_links = True
- emp.save()
+ frappe.get_doc("Employee", employee).save()
def update_permissions():
# clear match conditions other than owner
diff --git a/erpnext/support/doctype/support_email_settings/support_email_settings.py b/erpnext/support/doctype/support_email_settings/support_email_settings.py
index 592c1a9..8763c6d 100644
--- a/erpnext/support/doctype/support_email_settings/support_email_settings.py
+++ b/erpnext/support/doctype/support_email_settings/support_email_settings.py
@@ -17,7 +17,7 @@
Checks support ticket email settings
"""
if self.sync_support_mails and self.mail_server:
- inc_email = frappe.get_doc('Incoming Email Settings')
+ inc_email = frappe._dict(self.as_dict())
# inc_email.encode()
inc_email.host = self.mail_server
inc_email.use_ssl = self.use_ssl