def execute(): import webnotes from webnotes.model import delete_doc from webnotes.model.code import get_obj from webnotes.model.doc import addchild # delete doctypes and tables for dt in ["TDS Payment", "TDS Return Acknowledgement", "Form 16A", "TDS Rate Chart", "TDS Category", "TDS Control", "TDS Detail", "TDS Payment Detail", "TDS Rate Detail", "TDS Category Account", "Form 16A Ack Detail", "Form 16A Tax Detail"]: delete_doc("DocType", dt) webnotes.conn.commit() webnotes.conn.sql("drop table if exists `tab%s`" % dt) webnotes.conn.begin() delete_doc("Search Criteria", "tds_return") # Add tds entry in tax table for purchase invoice pi_list = webnotes.conn.sql("""select name from `tabPurchase Invoice` where ifnull(tax_code, '')!='' and ifnull(ded_amount, 0)!=0""") for pi in pi_list: piobj = get_obj("Purchase Invoice", pi[0], with_children=1) ch = addchild(piobj.doc, 'taxes_and_charges', 'Purchase Taxes and Charges') ch.charge_type = "Actual" ch.account_head = piobj.doc.tax_code ch.description = piobj.doc.tax_code ch.rate = -1*piobj.doc.ded_amount ch.tax_amount = -1*piobj.doc.ded_amount ch.category = "Total" ch.save(1) # Add tds entry in entries table for journal voucher jv_list = webnotes.conn.sql("""select name from `tabJournal Voucher` where ifnull(tax_code, '')!='' and ifnull(ded_amount, 0)!=0""") for jv in jv_list: jvobj = get_obj("Journal Voucher", jv[0], with_children=1) ch = addchild(jvobj.doc, 'entries', 'Journal Voucher Detail') ch.account = jvobj.doc.tax_code ch.credit = jvobj.doc.ded_amount ch.save(1)