Announcements
Attention for Customers without Multi-Factor Authentication or Single Sign-On - OTP Verification rolls out April 2025. Read all about it here.
WCrihfield
in reply to: Preston_Reed

Hi @Preston_Reed.  There are a couple of built-in ways to tell if an Inventor model type document (part or assembly) is a Content Center member, iPart, or iAssembly.  The PartComponentDefinition & AssemblyComponentDefinition objects have a few Properties that you can check for these things.  The PartComponentDefinition has a ReadOnly property called "IsContentMember", which returns a Boolean, and indicates whether or not it represents a Content Center member; and has 2 properties called "IsiPartFactory" & "IsiPartMember", which seem self explanatory; then it also has the 2 "iPartFactory" & "iPartMember" properties too, for after you have checked the other property and want to get the direct specific type of object.  Similarly, the AssemblyComponentDefinition object has the iAssembly related properties, "IsiAssemblyFactory", "IsiAssemblyMember", "iAssemblyFactory", & "iAssemblyMember".  All of those are ReadOnly properties, so you can't change their values directly.  I also know that parts created by the Content Center will contain a couple of extra sets of iProperties, which are specific to Content Center parts.  I honestly have not tried simply changing the value of an iProperty within a Content Center part, to change its status to not be a Content Center part.  Even if this were possible, I would assume that would not solve the problem of it being ReadOnly, if the part is still stored in the directory designated as Content Center storage, because I think that gets treated as a Library type storage.  Also, I think there is a way to break the link between an iPart/iAssembly 'member', and its 'factory', and I believe you can delete the table from a 'factory' document, which will convert it back to a 'regular' model.  I did not work heavily, or for a very long time with iParts or iAssemblies, so I did not fully control them by code while I was using them.  Instead I chose to go the full iLogic configuration templates, and regular file storage route, because that fit our business needs better and gave me more control over everything.

Wesley Crihfield

EESignature

(Not an Autodesk Employee)