Anda di halaman 1dari 19

November 30 December 3, 2004 ^ Las Vegas, Nevada

SIacker's Guide to ControIIing Autodesk Inventor


iProperties with VBA
Sean Dotson, PE Fenris Consulting
MA25-2 Tired of manually updating iProperties in Autodesk nventor? Would you like to enforce company standards but think
it's too much work?'' Want to simplify the data entry portion of your job? Learn the basics of how to create, modify, and
concatenate nventor iProperties using VBA. Learn how to use VBA with nventor, create a simple program to modify
nventor iProperties, and create a toolbar button to fire your macro. This class will benefit users who have a good grasp
of nventor and are looking to customize it to more easily extract information from models. You should have a good
working knowledge of iProperties and some experience in VBA will be helpful.
About the Speaker:
Sean has worked in the custom automated machinery industry for the last 8 years and currently works for an
international packaging machinery manufacturer as the Engineering & Manufacturing Manager. He is a Professional
Engineer and provides engineering analysis, and CAD management solutions to two different engineering groups
within the organization. Sean also provides training and VB and VBA customization of Autodesk nventor to client
companies via his consulting firm, Fenris ConsuIting. He is perhaps best known for his numerous tutorials on
advanced Autodesk nventor subjects, which he offers free-of-charge at his website (www.sdotson.com). Sean also
coauthored Animator for Autodesk nventor, an animation add-on application, is the author of iProperties Wizard, a
data management tool and is an Autodesk nventor Certified Expert.
sean@sdotson.com
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
2 Sean Dotson, PE
Introduction
Next to the actual features themselves, properties are probably the most important part of an !nventor model. They identify
the name and description of the part, the size, the mass, the material and render color. They also describe where the part is
located, what vendor it came from and a host of other important characteristics. With custom properties you can assign any
tags you want and classify parts `till you heart's content.
There are many ways to handle properties. !n this course you will learn some basic building blocks to manipulating these
properties. This is not a course to teach you everything about vBA. !t is also not a course that will allow you to create add-ins
(maybe next year). This is the SLACKERS guide to properties. For, let's admit it, most designers and engineers are lazy. !f we
can find a shortcut we'll use it.
Nathematician: Pi is the number expressing the relationship between the
circumference of a circle and its diameter.
Physicist: Pi is 3.1+15927 plus or minus 0.000000005
Engineer: Pi is about 3
This handout will cover some of the basis of how to read and write to properties. ! will save space by not listing all of the code
presented in the class. !f you would like to download a copy of the vBA code you may do so by visiting this thread:
http:ffwww.mcadforums.comfforumsfviewtopic.php?p=13558
Basic Structure of Document Properties
Figure 1 below shows the basic structure of an !nventor document. Properties can be accessed by !nventor itself or via
Apprentice (a standalone !nventor engine" that is used to access model information). We will not cover Apprentice in this
lesson.
As you can see a Document is a child of the !nventor Application. !n every Document exist PropertySets (notice the
plural) which is made up one of more PropertySet. Each PropertySet has one or more Properties (such as description,
title, author etc..)
PropertySets are groups or classes of Properties in an !nventor Document. The 5 classifications of PropertySets are:
Design Tracking Properties, {32853F0F-3444-11D1-9E93-0060B03C1CA6}
Document Summary Information, {D5CDD502-2E9C-101B-9397-08002B2CF9AE}
Summary Information, {F29F85E0-4FF9-1068-AB91-08002B27B3D9}
User Defined Properties, {D5CDD505-2E9C-101B-9397-08002B2CF9AE}
Content Library Component Properties, {B9600981-DEE8-4547-8D7C-E525B3A1727A}
The code after the name is the internal !D of the PropertySet. These will be discussed in a moment. !n this class we will not be
using the Content Library properties.
Unfortunately the PropertySets are not divided in the same manner as the tabs of the iProperties dialogue. To help keep
them straight ! often refer to a chart of all of the properties. ! have provided this chart at the end of this document
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
3
Figure 1 - Inventor Property Structure
!n this chart the Properties are grouped by PropertySet. The chart also lists (from left to right) the Properties':
Display Name (Common Name)
!nternal Name (ENUN Name)
value (!nternal value)
Comments (description of allowed data types and other information)
The Display name is the name listed in the iProperties dialogue. This name will change in localized versions of !nventor. !n
other words in the German version of !nventor the display name for Author will be in German.
The !nternal Name is a name that does not change regardless of the language of the program.
The value is another constant name for the property. !t will not change from one localization to another.
VBA Basics
To access your vBA Editor choose Tools>Nacro>visual Basic Editor. You will be presented with a screen like Figure 2.
The + main parts of the vBA Editor are:
1. Project Explorer - Shows the Nodules and Forums in your Projects
2. Code Window - Where you type and debug your code
3. Properties Nodule - Defines Properties of your Project modules and forms
+. !mmediate Window - Gives real time feedback when running programs.
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
4 Sean Dotson, PE
Figure 2 - VBA Editor
Application Projects and Document Projects
There are two kinds of projects; those that are available to all documents in the application (Application Projects) and those only
available to the document in which the code resides (Document projects). While it is tempting to place your code in the
document (and then use the document as a template) ! strongly suggest you do NOT do this.
! have found that Nicrosoft's vBA application cannot handle a large number of files with code in them. Even if the code is not
running it is loaded into the vBA environment. Even a modest sized assembly (100 parts) with code in each file can bring the
vBA environment and sometimes !nventor crashing down.
! suggest for vBA projects that you do one of two things.
1. Store the code in your Default.ivb project
2. Use Nr. Nacro from Charles Bliss' site (http:ffwww.cbliss.com)
Storing the code in the Default.ivb can be a bit bothersome at times but it allows you to keep the code out of the individual files.
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
5
Reading Properties
So enough theory; let's read some properties. Open an !nventor document and set some of the properties. Set the Author
property in particular. Enter the vBE by the steps listed above. Click on Nodule1 in the Application Project and then enter the
code window. Type the following:
As we walk thru this macro you will notice there are multiple ways to call properties.
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
6 Sean Dotson, PE
First you must set the PropertySet group. This can be done on a line by itself or while calling the property name. !n line 18
you see that we set oPropSet equal to the Summary !nformation PropertySet. After this line anytime we refer to oPropSet
it will reflect the Summary !nformation PropertySet.
Once the PropertySet is set we can call the value of a property in 3 ways
1. Display Name
2. !nternal Name (Property!D)
3. value
Examples of each are:
sMyProp1 = oPropSet.ItemByPropId{kAuthorSummaryInformation).Value
sMyProp2 = oPropSet.Item{"Author").Value
sMyProp5 = oPropSet.ItemByPropId{4).Value
!n most cases ! suggest you use the Property!D with the ENUN name (the first example) for calling properties. This ensures
that your application will run on systems where the localization language is different than yours and it helps you to easily keep
track of what property you are calling. The use of the value solves the language problem but no one ever remembers what
property + represents.
!n our code if we want to now list the value of the Description property we must change our oPropSet object to reflect the
Design Tracking Properties. We could then type
Set oPropSet = oPropSets.Item{"{32853F0F-3444-11D1-9E93-0060B03C1CA6}")
And the refer to the Description property by any of the three following methods:
sMyProp1 = oPropSet.ItemByPropId{kDescriptionDesignTrackingProperties).Value
sMyProp2 = oPropSet.Item{"Description").Value
sMyProp5 = oPropSet.ItemByPropId{29).Value
However if you are switching back and forth between PropertySets this can become tedious. A better method in my opinion is
to define the PropertySet object in the same line. Simply substitute (just like in algebra) the values of oPropSet in the lines
above.
oPropSets.!tem("{32853F0F-3444-11D1-9E93-0060B03C1CA6}).!temByProp!d(kDescriptionDesignTrackingProperties).value
oPropSets.!tem("{32853F0F-3444-11D1-9E93-0060B03C1CA6}). !tem("Description").value
oPropSets.!tem("{32853F0F-3444-11D1-9E93-0060B03C1CA6}). !temByProp!d(29).value
The lines might be a bit longer but you can quickly switch between PropSets in this manner. At my site ! will have available for
download a document that defines all of the properties in this manner for quick copying and pasting.
As we step through the code you see that all of the values of sNyProp1..5 are identical.
Writing Properties
Let's now set the values of the properties. Doing this is just the opposite of reading them. !nstead of setting a variable equal to
the values of the Property you set the Property equal to a variable (or a string or integer etc..)
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
7
!n line 18 you see that we set the value of the Author property to Sean The Slacker
1
.
You can set any property in this manner. Just be aware of the limitations of some properties. Some properties can only be
integers while others can only be set to Boolean True or False values. You will encounter an error if you try to set a property
value that is not valid.
Custom Properties
Custom Properties are very powerful in that you can use them to fully describe your parts and drawings. While !nventor's
properties are considerable many times you want to use a property that is not available. Custom properties also have the
unique ability to take on the values of other model features such as parameters.
!n this macro we dim the usual suspects and set oCustPropset
2
to the Custom Properties PropertySet.
To create a new custom property call the Add method of the Custom Property Set object.
Call oCustomPropset.Add{"Dealer Shows A 9", "MyNewCustomProp")
This method requires a value (Dealer Shows A 9) and a name (NyNewCustomProp) for the custom property.
view the custom property page of the iProperties dialogue (Figure 3) and it shows we created a new property.
1
Dont believe everything you read.
2
We could have used oPropSet here as well. I changed the name for clarity.
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
8 Sean Dotson, PE
Care must be taken in creating new properties for if a property already exists and you try to create it again an error will occur.
Error checking should be a part of any good program. Of course this course is called the Slackers Guide To."
To change the value of a Custom Property use the same method as a regular property
oCustomPropset.Item{"MyNewCustomProp").Value = "Hit Mel"
Custom Properties do not have an !nternal !D or an !D value. You refer to them by their name.
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
9
Figure 3 - Custom Properties
As discussed before, custom properties have the ability to take on the value of parameters. Open a part file with some
parameters and look at the Parameters dialogue.
Figure 4 - Parameters Dialogue
You will notice in the 7
th
column there is a series of checkboxes. !f these are checked, the parameter's value is exported to a
custom property of the same name.
After saving this document if you go to the Custom iProperties tab you will see they have been exported.
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
10 Sean Dotson, PE
Figure 5 - Custom iProperties from Parameters
This is a very powerful trick. !n this manner you can get dimensional data from your models into properties.
This is great," you say. But how can ! use this data as part of my part description", you ask. Well, let's not
waste another second.
Manipulating & Concatenating Strings
So we now have custom properties that have values equal to our parameters. They update when we update the
model. We now need to pull it all together to form a string that has the part size in the description.
!n the code below you see that we set a reference to the Custom Properties Set and we then query the values of
the three properties and set them equal to some variables
sWidth = oCustomPropset.Item{"width").Value
sHeight = oCustomPropset.Item{"height").Value
sLength = oCustomPropset.Item{"length").Value
We now need to preform string manipulation on these items. !'m betting you can figure out what the following
lines does to the string. (Hint, it's looking for a ." and taking some amount from the left side of it)
sWidth = Left{sWidth, InStr{sWidth, ".") + 1)
So what we end up with after looking at lines X-Z is three string variables with dimensions rounded to one decimal place.
We then query the value of the Title property
sTitle = oPropSets.Item{"{F29FS5E0-4FF9-106S-AB91-0S002B27B3D9}"). _
ItemByPropId{kTitleSummaryInformation).Value
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
11
And then tie it all together into one string and set the Description property.
sDescription = sTitle & " " & sWidth & " x " & sHeight & " x " & sLength
oPropSets.Item{"{32S53F0F-3444-11d1-9E93-0060B03C1CA6}"). _
ItemByPropId{kDescriptionDesignTrackingProperties).Value = sDescription
Your description might now read something like:
Block, Rectangular 5.0 x +.0 x 15.0
So you now have a macro that takes the current dimensional sizes of your models and strings them together with your Title to
form your Description. Now wouldn't it be great if it did this automatically every time you save?
Macro Triggers
So let's say we want this macro to run every time we save this part. vBA doesn't have the best set of tools to handle triggers
like this. This is where Add-!ns come in handy. However we can do a workaround, and we all know that the workaround is the
Slacker's best friend.
So let's replace the save button in !nventor. You can customize your toolbars so why not?
First let's make up a button to run our macro. ! won't go into that here as ! have written another tutorial to cover that. You can
find it here:
http:ffwww.sdotson.comffreetutfa20non-programmers20guide20to20using20macros.pdf
So once we have the button we need to modify the code a bit.
An easy way to do this to so simply add an oDoc.Save call at the end of the macro. This runs the macro, updating the code
and then saves the document. On thing to remember is that if you save from an assembly level this macro will NOT update
each individual part. !t will only update the assembly. !n fact we would need to update the code and change the dimension of
oDoc to Document instead of PartDocument anyway. So at this point we will only replace the SAvE button in the part
environment, not the assembly environment.
So now each time you click this new button the part description will update and save the file.
But wait, not all of your parts have length and width parameters. !f you try to run it on a part without these parameters you will
get an error. Since you will make this part a template part you know it will always have these parameters however. You need
to tell the macro to only run if the part is sure if has these parameters. While there is a lot of error checking you could do a
simple way is to set some property as an identifier.
Let's make the value of the Keyword Property equal to RunNacro". We will then check the value of this property and if it is
not equal to RunNacro" we will not run the code, however we will still save the document.
So we just surround the heart of the code with an !F statement
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
12 Sean Dotson, PE
Materials
! will quickly show a bit of code on how to obtain and set a model's material. From the information above !'m sure you can
figure out how to use this information and integrate it into your properties.
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
13
Common Name ENUM Name VaIue Comments
Design Tracking Properties {32853F0F-3444-11d1-9E93-0060B03C1CA6}
Authority kAuthorityDesignTrackingProperties 43 Authority: String (VT_BSTR), Editable, U on Project Page, Always
present (default=empty string), f non-NULL, this signifies the authorization
of this model.
Catalog Web Link kCatalogWebLinkDesignTrackingProperties 23 Catalog Web Link: String (VT_BSTR), Editable, U on Project Page,
Always present (default=empty string), f this is a Part from a Catalog, the
Web address of the Catalog provider.
Checked By kCheckedByDesignTrackingProperties 10 Checked By: String (VT_BSTR), Editable, U on Status Page, Always
present (default=empty string), Name of the person checking the part.
Cost Center kCostCenterDesignTrackingProperties 9 Cost Center: String (VT_BSTR), Editable, U on Project Page, Always
present (default=empty string), Cost Center responsible for the Project
Cost kCostDesignTrackingProperties 36 Cost: Currency (VT_CY), Editable, U on Project Page, Always present
(default=0), Cost of the part.
Creation Date kCreationDateDesignTrackingProperties 4 Creation Date: Date (VT_FLETME), Read Only, U on Project Page,
Always present (default=data creation time), Time the data in this file was
first created. Will remain the same after Save As or Copy operations
Date Checked kDateCheckedDesignTrackingProperties 11 Date Checked: Date (VT_FLETME), Editable, U on Status Page, Always
present (default=0), Time on which the check was performed.
Engr Date Approved kDateEngrApprovedDesignTrackingProperties 13 Engr Date Approved: Date (VT_FLETME), Editable, U on Status Page,
Always present (default=0), Time on which the approval of the part's
engineering was performed.
Mfg Date Approved kDateMfgApprovedDesignTrackingProperties 35 Mfg Date Approved: Date (VT_FLETME), Editable, U on Project Page,
Always present (default=0), Time on which the approval of the part's
manufacturing was performed.
Description kDescriptionDesignTrackingProperties 29 Description: String (VT_BSTR), Editable, U on Project Page, Always
present (default=empty string), A user-defined description of the contents
of this file.
Designer kDesignerDesignTrackingProperties 41 Designer: String (VT_BSTR), Editable, U on Project Page, Always
present (default=empty string), f non-NULL, this is the name of the
designer of this model.
Design Status kDesignStatusDesignTrackingProperties 40 Design Status: Short (VT_2), Editable, U on Status Page, Always present
(default=0), 0=Not Set, 1=Work n Progress, 2=Pending, 3=Released.
Document SubType kDocSubTypeDesignTrackingProperties 31 Document SubType: GUD (VT_CLSD), Read Only, No U, Always
present (default=Document's CLSD), Finer classification of this
Document's type. Document's type can be retrieved by calling
::ReadClassStg on the root-storage.
Document SubType Name kDocSubTypeNameDesignTrackingProperties 32 Document SubType Name: String (VT_BSTR), Read Only, No U, Always
present (default=Document Type name), Display name of the finer
classification of this document's type.
Defer Updates kDrawingDeferUpdateDesignTrackingProperties 51 Defer Updates: Boolean (VT_BOOL), Editable, No U, Always present??
(default=FALSE), Whether to suspend drawing updates that reflect
changes in its referenced files
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
15
Engineer kEngineerDesignTrackingProperties 42 Engineer: String (VT_BSTR), Editable, U on Project Page, Always
present (default=empty string), f non-NULL, this is the name of the
engineer responsible for this model.
Engr Approved By kEngrApprovedByDesignTrackingProperties 12 Engr Approved By: String (VT_BSTR), Editable, U on Status Page,
Always present (default=empty string), Name of the person approving the
part's engineering aspect.
External Property Revision d kExternalPropRevdDesignTrackingProperties 46 External Property Revision d: GUD (VT_CLSD), Editable, No U, Always
present (default=initial GUD), GUD representing revision of external
property sets (created by Third Parties)
Language kLanguageDesignTrackingProperties 50 Language: String (VT_BSTR), Editable, No U, Always present
(default=empty string), f non-NULL, this is the language (specified in SO
639-2 alpha-3) being used for displaying the user-friendly names of
various pieces of data
Manufacturer kManufacturerDesignTrackingProperties 48 Manufacturer: String (VT_BSTR), Editable, No U, Always present
(default=Standard), This is the name of the manufacturer or supplier of
this component
Material kMaterialDesignTrackingProperties 20 Material: String (VT_BSTR), Read Only, U in Material command, Always
present (default=empty string), Name of the material used to build the
part.
Mfg Approved By kMfgApprovedByDesignTrackingProperties 34 Mfg Approved By: String (VT_BSTR), Editable, U on Project Page, Need
not be present, Name of the person approving the part's manufacturing
aspect.
Parameterized Template kParameterizedTemplateDesignTrackingProperties 44 Parameterized Template: nteger (VT_BOOL), Read Only, No U, Always
present (default=FALSE), Whether this model is a parameterized template
to produce other models.
Part con kPartconDesignTrackingProperties 28 Part con: Clipdata (VT_CLPDATA), Read Only, No U, Need not be
present, Special icon to be used wherever appropriate (e.g.: Windows
Explorer).
Part Number kPartNumberDesignTrackingProperties 5 Part Number: String (VT_BSTR), Editable, U on Project Page, Always
present (default=Filename), Tracking number assigned to the part.
Part Property Revision d kPartPropRevdDesignTrackingProperties 21 Part Property Revision d: GUD (VT_CLSD), Editable, No U, Always
present (default=initial GUD), GUD representing revision of Part
properties (Summarynformation, DocumentSummarynformation,
UserDefinedProperties and DesignTrackingProperties)
Project kProjectDesignTrackingProperties 7 Project: String (VT_BSTR), Editable, U on Project Page, Always present
(default=empty string), Project for which this part was generated.
Proxy Refresh Date kProxyRefreshDateDesignTrackingProperties 33 Proxy Refresh Date: Date (VT_FLETME), Read Only, No U, Always
present (default=0), f this is Proxy file for a Part, the date/time when it was
last refreshed with respect to the part.
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
16 Sean Dotson, PE
Standard kStandardDesignTrackingProperties 37 Standard: String (VT_BSTR), Editable, No U, Always present
(default=empty string), f non-NULL, this is a Standard Part with this
nternational Standard designation.
Standard Revision kStandardRevisionDesignTrackingProperties 47 Standard Revision: String (VT_BSTR), Editable, No U, Always present
(default=empty string), Applicable when Standard is non-NULL. ndicates
the version of the international standard
Standards Organization kStandardsOrganizationDesignTrackingProperties 49 Standards Organization: String (VT_BSTR), Editable, No U, Always
present (default=empty string), f non-NULL, this is the name of the
organization that developed the specific standard to which this family
might belong
Template Row kTemplateRowDesignTrackingProperties 45 Template Row: GUD (VT_CLSD), Read Only, No U, Need not be
present, The row of parameters in the template from which this model was
derived.
User Status kUserStatusDesignTrackingProperties 17 User Status: String (VT_BSTR), Editable, U on Status Page, Always
present (default=empty string), Status of the part.
Vendor kVendorDesignTrackingProperties 30 Vendor: String (VT_BSTR), Editable, U on Project Page, Always present
(default=empty string), Name of the vendor from which this part is
purchased.
Document Summary Information {D5CDD502-2E9C-101B-9397-08002B2CF9AE}
Category kCategoryDocSummarynformation 2 Category: String (VT_STR), Editable, U on Summary Page, Always
present (default=empty string), Category in which this file belongs.
Company kCompanyDocSummarynformation 15 Company: String (VT_STR), Editable, U on Summary Page, Always
present (default=empty string), Organization responsible for this project.
Manager kManagerDocSummarynformation 14 Manager: String (VT_STR), Editable, U on Summary Page, Always
present (default=empty string), Manager in charge of the project in which
this document has been generated.
Summary Information {F29F85E0-4FF9-1068-AB91-08002B27B3D9}
Author kAuthorSummarynformation 4 Author: String (VT_STR), Editable, U on Summary Page, Always present
(default=current login name), Creator of this file.
Comments kCommentsSummarynformation 6 Comments: String (VT_STR), Editable, U on Summary Page, Always
present (default=empty string), Additional information.
Creation Time kCreationTimeSummarynformation 12 Creation Time: Date (VT_FLETME), Read Only, No U, Always present
(default=file creation time), Time this file came into existence. ***
DEFUNCT. Use creation date in design tracking property set instead.
Keywords kKeywordsSummarynformation 5 Keywords: String (VT_STR), Editable, U on Summary Page, Always
present (default=empty string), Distinctive words that best describe this
file.
MA25-2 Slacker's Guide to Controlling Autodesk Inventor iProperties with VBA
17
Last Saved By kLastSavedBySummarynformation 8 Last Saved By: String (VT_STR), Editable, U on Summary Page, Always
present (default=empty string), Last saved by author
Revision kRevisionSummarynformation 9 Revision: String (VT_STR), Editable, U on Project Page, Always present
(default=empty string), Number denoting the current version of the
document.
Subject kSubjectSummarynformation 3 Subject: String (VT_STR), Editable, U on Summary Page, Always present
(default=empty string), Topic to which this file pertains.
Thumbnail kThumbnailSummarynformation 17 Thumbnail: Bytes (VT_CLPDATA), Editable, Read Only U on File
Dialogs, Always present (default=empty bitmap), A bitmap picture of the
document.
Title kTitleSummarynformation 2 Title: String (VT_STR), Editable, U on Summary Page, Always present
(default=empty string), Heading for this file.
Content Library Component Properties {B9600981-DEE8-4547-8D7C-E525B3A1727A}
_Moniker k_MonikerContentLibrary 16 _Moniker: String (VT_BSTR), Editable, No U, Opaque set of bytes
provided by the Libraries system, which can serve as a unique identifier
for this component
_PropertySet Schema
Revision
k_PropertySetSchemaRevisionContentLibrary 14 _PropertySet Schema Revision: String (VT_BSTR), Editable, No U,
Records the revision of the schema this property set is based on
k_SubLibraryContentLibrary 5 *** DEFUNCT SNCE R7
Authoring Tool kAuthoringToolContentLibrary 11 Authoring Tool: String (VT_BSTR), Editable, No U, ProgD of the Addn
that provided the authoring tool that helped ready this Library component
for publishing
Component Type kComponentTypeContentLibrary 3 Component Type : Long (VT_4), Editable, No U, Bits from the
ContentLibraryComponentTypeBits enum specifying broad behavior of the
component
Domain Categories kDomainCategoriesContentLibrary 13 Domain Categories: String (VT_BSTR), Editable, No U, Holds XML data
describing the application domain-specific categories along with the
binding of formal parameters to actual parameters that fully define this
category
Family kFamilyContentLibrary 6 Family: String (VT_BSTR),Editable, No U, Represents a set of parts that
can be parametrically defined from a common Autodesk nventor template
file
Family Revision kFamilyRevisionContentLibrary 9 Family Revision: String (VT_BSTR), Editable, No U, Records any revision
made to the nventor file template that drives the members
Library kLibraryContentLibrary 4 Library: String (VT_BSTR),Editable, No U, The name of the content
library residing on the server (or locally)
MA25-2 SIacker's Guide to ControIIing Autodesk Inventor iProperties with VBA
18 Sean Dotson, PE
Libraryd kLibrarydContentLibrary 10 Libraryd: GUD (VT_CLSD), Editable, No U, Persistent internal identifier
that unambiguously identifies a Library. Every Library knows of its own
internal name
Library Location kLibraryLocationContentLibrary 2 Library Location: String (VT_BSTR), Editable, No U, Fully qualified
location of the database (Library) at the time of creation of this file
Member kMemberContentLibrary 7 Member: String (VT_BSTR), Editable, No U, Uniquely identifies a
member of a family.
Member Revision kMemberRevisionContentLibrary 8 Member Revision: String (VT_BSTR), Editable, No U, Records any
revision made to the values of the parameters that drive this particular
member (values of the row in the table)
Size Designation kSizeDesignationContentLibrary 12 Size Designation: String (VT_BSTR), Editable, No U, Succinct, user-
friendly and universal way of providing a name for the component
represented by a row in the table
User Categories kUserCategoriesContentLibrary 15 User Categories: String (VT_BSTR), Editable, No U, Holds XML data
describing the categories that further classify this family based on
standards in a handbook, manufacturer's catalog or in accordance with a
user's organization scheme
User Defined Properties {D5CDD505-2E9C-101B-9397-08002B2CF9AE}

Anda mungkin juga menyukai