Auto Number Columns

Auto Number Columns
 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
12    # Advanced AutoNumberColumns - names and types
13    columns2 = drawing.auto_number_columns2
14
15    for column2 in columns2:
16        if column2.type == ipAutoNumberType.anLegacy:
17            type_str = "Legacy"
18        elif column2.type == ipAutoNumberType.anOverridable:
19            type_str = "Overridable"
20        elif column2.type == ipAutoNumberType.anUnconditional:
21            type_str = "Unconditional"
22        else:
23            type_str = "Unknown"
24
25impact.gui.output_toolbox.add(column2.name + ": type = " + str(type_str))
26
27if drawing.drawing_type == ipDrawingType.dtProject:
28    db_item = drawing.database_item
29
30    if db_item is None:
31
32        # Demonstrate that EnsureExists guarantees that the field is added to the DatabaseValues
33        impact.gui.output_toolbox.add("New drawing has DatabaseValue count = " + str(drawing.database_values.field_count))
34        drawing.database_values.ensure_exists("D_DESCRIPT")
35        impact.gui.output_toolbox.add("After EnsureExists(D_DESCRIPT) drawing has DatabaseValue count = " + str(drawing.database_values.field_count))
36
37        # Checks if the drawing has a title
38        if drawing.is_untitled:
39            impact.gui.output_toolbox.add("Current drawing has no title")
40        else:
41            impact.gui.output_toolbox.add("Current drawing is titled '" + drawing.full_name + "'")
42
43    else:
44        pass