Der Post iLogic: Propertysets hat bereits die 4 Property Sets aus Inventor vorgestellt. Im Konstruktionsalltag spielen hauptsächlich die Custom Properties, auch User Defined Properties genannt, eine Rolle, da sie dem User erlauben dort Werte zu hinterlegen, die später auf Stücklisten oder Zeichnungen sichtbar werden.
Anwendungsfall
Oftmals zeigt sich der Fall auf, dass Properties im Laufe eine Projekts angelegt, später aber nicht länger benötigt werden. Ursachen für diesen Zustand gibt es viele, bspw. das Überarbeiten bestehender Prozesse, konzeptfrei arbeitende Vault Admins oder aber der Wechsel eines Vault Admins in der Firma. Das händische Löschen von Properties ist in einem solchen Fall ein zeitraubender Task, den iLogic geflissentlich übernehmen kann.
Code zum Löschen der Properties
Das folgende Beispiel definiert eine Liste listOutdatedPropertyNames mit alten Propertynamen, die nicht länger benötigt werden. Diese Liste ist beispielhaft und kann mit Propertynamen aus realen Anwendungsfällen gefüllt werden. Wichtig und zu beachten dabei ist lediglich, dass der letzte Propertyname nicht mit dem Zeichen , beendet wird.
Der Code iteriert über alle Custom Properties, die im aktiven Dokument vorhanden sind und prüft jedes einzeln, ob es in der definierten Liste enthalten ist und löscht es, sofern dies der Fall ist:
Dim oDoc As Document = ThisDoc.Document
' Liste mit alten Propertynamen definieren, die
' durch die iLogic entfernt werden sollen
Dim listOutdatedPropertyNames = New String(){
"Adhesive Assembly",
"Adhesived Assembly",
"Approved By",
"Area",
"Author",
"Batch Number Relevant",
"Blechabmessung",
"Fläche",
"Hurz"
}
' Adressiere das Custom Property Set
Dim oPropSet As PropertySet = oDoc.PropertySets.Item("Inventor User Defined Properties")
For Each oProperty In oPropSet
If listOutdatedPropertyNames.Contains(oProperty.Name) Then
oProperty.Delete
End If
Next