brotherton-erpnext/patches/december_2012/deleted_contact_address_patch.py
2013-11-20 13:00:28 +05:30

15 lines
581 B
Python

# Copyright (c) 2013, Web Notes Technologies Pvt. Ltd. and Contributors
# License: GNU General Public License v3. See license.txt
import webnotes
def execute():
"""finds references of deleted addresses and contacts and deletes these references"""
import webnotes.model
for dt in ["Address", "Contact"]:
link_fields = webnotes.model.get_link_fields(dt)
for parent, lf in link_fields:
webnotes.conn.sql("""update `tab%s` ref set `%s`=null
where ifnull(`%s`, '')!='' and not exists (
select * from `tab%s` where name=ref.`%s`)""" % \
(parent, lf, lf, dt, lf))