blob: 822194dcfdae2ae04a690c8176f32e62f0db3fae [file] [log] [blame]
Rushabh Mehtaf200c522012-09-21 15:19:40 +05301import webnotes
2def execute():
3 set_master_name_in_accounts()
4 set_customer_in_sales_invoices()
5 reset_lft_rgt()
Rushabh Mehta09d84b62012-09-21 19:46:24 +05306 add_analytics_role()
Rushabh Mehtaf200c522012-09-21 15:19:40 +05307
8def set_master_name_in_accounts():
9 accounts = webnotes.conn.sql("""select name, account_name, master_type from tabAccount
10 where ifnull(master_name, '')=''""", as_dict=1)
11 for acc in accounts:
12 if acc["master_type"] in ["Customer", "Supplier"]:
13 master = webnotes.conn.sql("""select name from `tab%s`
14 where name=%s """ % (acc["master_type"], "%s"), acc["account_name"])
15 if master:
16 webnotes.conn.sql("""update `tabAccount`
17 set master_name=%s where name=%s""", (master[0][0], acc["name"]))
18
19def set_customer_in_sales_invoices():
20 webnotes.conn.sql("""update `tabSales Invoice` si
21 set si.customer=(select a.master_name from `tabAccount` a where a.name=si.debit_to)
22 where ifnull(si.customer, '')=''""")
23
24def reset_lft_rgt():
25 from webnotes.utils.nestedset import rebuild_tree
26
27 rebuild_tree("Item Group", "parent_item_group")
28 rebuild_tree("Customer Group", "parent_customer_group")
29 rebuild_tree("Territory", "parent_territory")
30 rebuild_tree("Account", "parent_account")
31 rebuild_tree("Cost Center", "parent_cost_center")
32 rebuild_tree("Sales Person", "parent_sales_person")
Rushabh Mehta09d84b62012-09-21 19:46:24 +053033
34def add_analytics_role():
35 from webnotes.model.doc import Document
36 Document("Role", fielddata={
37 "name": "Analytics",
38 "role_name": "Analytics",
39 "module": "Setup",
40 }).save(1);