Iterating History (Python)

Iterating History (Python)
 1ot = impact.gui.output_toolbox
 2db = impact.active_database
 3
 4ot.clear()
 5cust = db.customers.find_by_code("ACME CORP")
 6
 7if not cust.isNone():
 8
 9    ot.add("Located customer " + cust.code)
10    docs = cust.documents
11
12    if docs.isNone():
13        ot.add("No customer document support in the database")
14    else:
15        ot.add("customer document support is enabled in this database")
16
17        count = docs.count
18        ot.add(str(count) + " documents for '" + cust.name + "' currently in the database")
19
20        ot.add("Iterate using Item property")
21        for i in range(1, count + 1):
22            doc = None
23            try:
24                doc = docs.item(i)
25            except Exception as exc:
26                pass
27            impact.gui.output_toolbox.add(f"Failed to create object via docs.item(): {exc}")
28            ot.add("Document: '" + doc.name + "', impact.creator: " + doc.added_by.login_id + ", Size: " + doc.size + " bytes")
29        ot.add("Iterate using for each")
30        for doc in docs:
31            ot.add("Document: '" + doc.name + "', impact.creator: " + doc.added_by.login_id + ", Size: " + doc.size + " bytes")
32        ot.add("Locate document by name")
33        doc = None
34        try:
35            doc = docs.item("Order Details.docx")
36        except Exception as exc:
37            pass
38        impact.gui.output_toolbox.add(f"Failed to create object via docs.item(): {exc}")
39
40        if not doc.isNone():
41            ot.add("Document: '" + doc.name + "', impact.creator: " + doc.added_by.login_id + ", Size: " + doc.size + " bytes")
42        else:
43            ot.add("Unable to locate document")
44
45else:
46    ot.add("Unable to locate a customer")