Folder Setting Properties (Python)¶
Folder Setting Properties (Python)¶
1ot = impact.gui.output_toolbox
2
3db = impact.active_database
4
5def DescribeFolder(folder, s):
6 if not folder.isNone():
7 ot.add(s)
8 ot.add("Name: " + folder.folder_name)
9 ot.add("Desc: " + folder.description)
10 ot.add("Path: " + folder.display_path)
11 ot.add("OS Path: " + folder.folder_path)
12 ot.add("Type: " + str(folder.type))
13 ot.add("Level: " + str(folder.level))
14 ot.add("impact.creator: " + folder.creator.login_id)
15 ot.add("AllowSave: " + str(folder.allow_save))
16 ot.add("Hidden: " + str(folder.hidden))
17 ot.add("ReadOnly: " + str(folder.read_only))
18 ot.add("folder Count: " + str(folder.folder_count))
19 ot.add("Item Count: " + str(folder.item_count))
20
21 if db.settings.enterprise_database_type != ipEnterpriseDatabaseType.edtNone:
22 ot.add("TransmitToEnterprise: " + str(folder.transmit_to_enterprise))
23 ot.add("SiteAutomaticItemRemoval: " + str(folder.site_automatic_item_removal))
24
25ot.clear()
26folder = None
27try:
28 folder = db.projects.find("COMTests")
29except Exception as exc:
30 impact.gui.output_toolbox.add(f"Failed to create object via db.projects.find(): {exc}")
31f1 = None
32try:
33 f1 = folder.add("folder 1")
34except Exception as exc:
35 impact.gui.output_toolbox.add(f"Failed to create object via folder.add(): {exc}")
36
37if not f1.isNone():
38 DescribeFolder(f1, "*** New folder ***")
39
40 # You can set various folder properties directly
41 f1.description = "This folder is for storing my own projects"
42 f1.read_only = True
43 f1.allow_save = False
44 f1.hidden = True
45
46 if db.settings.enterprise_database_type != ipEnterpriseDatabaseType.edtNone:
47 f1.transmit_to_enterprise = True
48 f1.site_automatic_item_removal = True
49
50 if not f1.rename("folder A"):
51 ot.add("Error: Unable to rename folder")
52 DescribeFolder(f1, "*** Modified folder ***")
53
54 if f1.delete():
55 ot.add("Successfully deleted folder")
56 else:
57 ot.add("Error: Unable to delete new folder")
58else:
59 ot.add("Error: Unable to create new folder")