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")