Auto Number Columns (Python)

Auto Number Columns (Python)
 1impact.gui.output_toolbox.clear()
 2drawing = impact.active_drawing
 3
 4if not drawing.isNone():
 5
 6    # Simple AutoNumberColumns - names only
 7    columns = drawing.auto_number_columns
 8
 9    for column in columns:
10        impact.gui.output_toolbox.add(column)
11    # Advanced AutoNumberColumns - names and types
12    columns2 = drawing.auto_number_columns2
13
14    for column2 in columns2:
15        if column2.type == ipAutoNumberType.anLegacy:
16            typeStr = "Legacy"
17        elif column2.type == ipAutoNumberType.anOverridable:
18            typeStr = "Overridable"
19        elif column2.type == ipAutoNumberType.anUnconditional:
20            typeStr = "Unconditional"
21        else:
22            typeStr = "Unknown"
23
24impact.gui.output_toolbox.add(column2.name + ": type = " + typeStr)
25if drawing.drawing_type == ipDrawingType.dtProject:
26    dbItem = drawing.database_item
27
28    if dbItem.isNone():
29
30        # Demonstrate that EnsureExists guarantees that the field is added to the DatabaseValues
31        impact.gui.output_toolbox.add("New drawing has DatabaseValue count = " + drawing.database_values.field_count)
32        drawing.database_values.ensure_exists("D_DESCRIPT")
33        impact.gui.output_toolbox.add("After EnsureExists(D_DESCRIPT) drawing has DatabaseValue count = " + drawing.database_values.field_count)
34
35        # Checks if the drawing has a title
36        if drawing.is_untitled:
37            impact.gui.output_toolbox.add("Current drawing has no title")
38        else:
39            impact.gui.output_toolbox.add("Current drawing is titled '" + drawing.fullname + "'")
40
41    else:
42        pass