File Locations (Python)¶
File Locations (Python)¶
1items = impact.active_database.find_items_by_query("Layer Merging")
2
3for dbItem in items:
4 impact.gui.output_toolbox.add(DBItem.reference)
5DBItem = impact.active_database.find_item_by_name(0, "layers Test 3")
6
7DBItem.open()
8
9# DBItem.close_and_release()
10
11layers = [None] * 2
12layers[0] = "a"
13layers[1] = "d"
14
15DBItem.open_layers(layers)
16DBItem = impact.active_database.find_item_by_name(0, "layers Test 2")
17DBItem.close_and_release()
18
19impact.gui.output_toolbox.add(DBItem.reference)
20
21for rev in DBItem.revisions:
22 impact.gui.output_toolbox.add("Revision: " + str(rev.number) + " Geometry?: " + str(rev.has_geometry))
23drawing = DBItem.revisions.item(2).open_copy()
24
25if drawing.isNone():
26 impact.gui.output_toolbox.add("Failed to open revision geometry")
27else:
28 impact.gui.output_toolbox.add("Successfully opened revision geometry")
29
30if DBItem.rename("", "P002359"):
31 impact.gui.output_toolbox.add("Successfully renamed item to Code: " + DBItem.code + " reference: " + DBItem.reference)
32else:
33 impact.gui.output_toolbox.add("Failed to renamed item")
34folder = None
35try:
36 folder = impact.active_database.projects.children.item("4. Examples")
37except Exception as exc:
38 impact.gui.output_toolbox.add(f"Failed to create object via impact.active_database.projects.children.item(): {exc}")
39
40if DBItem.move_to(folder):
41 impact.gui.output_toolbox.add("Successfully moved item")
42else:
43 impact.gui.output_toolbox.add("Failed to move item")
44folder = None
45try:
46 folder = impact.active_database.projects.children.item("4. Examples").children.item("Hello2")
47except Exception as exc:
48 impact.gui.output_toolbox.add(f"Failed to create object via children.item(): {exc}")
49
50impact.gui.output_toolbox.add(folder.folder_name)
51
52# set dest = impact.active_database.projects.children.item("4. Examples")
53dest = None
54try:
55 dest = impact.active_database.projects.children.item("Test")
56except Exception as exc:
57 impact.gui.output_toolbox.add(f"Failed to create object via impact.active_database.projects.children.item(): {exc}")
58
59impact.gui.output_toolbox.add(dest.folder_name)
60
61if folder.move_to(dest):
62 impact.gui.output_toolbox.add("Successfully moved folder")
63else:
64 impact.gui.output_toolbox.add("Failed to move folder")
65DBItem = impact.active_database.find_item_by_name(0, "Update 1")
66
67impact.gui.output_toolbox.add(DBItem.reference)
68impact.gui.output_toolbox.add(DBItem.file_location)
69DBItem = impact.active_database.find_item_by_name(0, "Update 1")
70
71impact.gui.output_toolbox.clear()
72impact.gui.output_toolbox.add("Files for " + DBItem.reference)
73impact.gui.output_toolbox.add("Database File: " + DBItem.file_location)
74
75if DBItem.working_project:
76 impact.gui.output_toolbox.add("Working Project File: " + DBItem.working_location)
77else:
78 impact.gui.output_toolbox.add("Project is not checked out to current user")
79
80for i in range(1, DBItem.layers.count + 1):
81 layer = None
82 try:
83 layer = DBItem.layers.item(i)
84 except Exception as exc:
85 pass
86 impact.gui.output_toolbox.add(f"Failed to create object via db_item.layers.item(): {exc}")
87 if layer.user.isNone():
88 impact.gui.output_toolbox.add("Layer " + layer.name + " not checked out")
89 else:
90 impact.gui.output_toolbox.add("Layer " + layer.name + " checked out to " + layer.user.login_id + " Working Project File: " + layer.working_location)
91for i in range(1, DBItem.revisions.count + 1):
92 rev = None
93 try:
94 rev = DBItem.revisions.item(i)
95 except Exception as exc:
96 pass
97 impact.gui.output_toolbox.add(f"Failed to create object via db_item.revisions.item(): {exc}")
98 impact.gui.output_toolbox.add("Revision: " + rev.number + " HasGeometry: " + rev.has_geometry + ": " + rev.file_location)
99impact.gui.output_toolbox.add('Hello')
100
101for layer in DBItem.layers:
102 impact.gui.output_toolbox.add("Layer: " + layer.name + " Locked: " + layer.locked)
103
104 layer.locked = False
105
106 impact.gui.output_toolbox.add("Layer: " + layer.name + " Locked: " + layer.locked)
107# call impact.active_drawing.active_layer.database_values.save("WIDTH", "1.50mm")
108
109# impact.gui.output_toolbox.add impact.active_drawing.active_layer.database_values.load("WIDTH")