Customer Sites (Python)¶
Customer Sites (Python)¶
1db = impact.active_database
2
3impact.gui.output_toolbox.clear()
4
5if not db.settings.db_sites:
6 impact.gui.output_toolbox.add("Database Sites are not enabled")
7else:
8 if not db.settings.customer_sites:
9 impact.gui.output_toolbox.add("customer Sites are not enabled")
10 else:
11 impact.gui.output_toolbox.add("**** customer Sites ****")
12 cust = db.customers.find_by_code("(DEFAULT CUSTOMER)")
13
14 if not cust.isNone():
15
16 # must create a variable for ICustomerSites
17 sites = cust.sites
18
19 if not sites.isNone():
20
21 impact.gui.output_toolbox.add("Initial Site Count: " + str(sites.count))
22
23 # clear all assigned sites
24 sites.clear()
25
26 impact.gui.output_toolbox.add("After Clear Site Count: " + str(sites.count))
27
28 # assign one or more sites to a customer
29 sites.assign(db.sites.item("ANDROMEDA"))
30 sites.assign(db.sites.item("AQUARIUS"))
31 sites.assign(db.sites.item("CORVUS"))
32
33 impact.gui.output_toolbox.add("After Assign Site Count: " + str(sites.count))
34
35 # remove one or more sites from a customer
36 sites.remove(db.sites.item("AQUARIUS"))
37
38 impact.gui.output_toolbox.add("After Remove Site Count: " + str(sites.count))
39
40 # update the database after assigning/removing sites
41 if sites.do_update():
42 impact.gui.output_toolbox.add("Successfully updated assigned customer sites")
43
44 # list the sites
45 impact.gui.output_toolbox.add("Site Count: " + str(sites.count))
46 for i in range(1, sites.count + 1):
47 impact.gui.output_toolbox.add(sites.item(i).full_name)