FileBomRow
A file BomRow is of type PsObject and represents a single row entry in the CAD BOM from a file in Vault.
The $fileBomRow object is dynamically generated based on the Properties coming from the CAD BOM and provides additionally all the members from its corresponding File (except for Virtual Components).
The BOM specific properties are named the same as in the CAD BOM, including whitespaces and starting with the ‘Bom_’ prefix. If you want to access such a property you have to enclose it in single quotes.
Syntax
$bomRow.'Bom_Part Number'
The following properties are always added in addition to the File members:
Type |
Name |
Description |
---|---|---|
string |
Bom_Number |
The Part Number of the component. When the component has no Part Number, it is the component name. |
int |
Bom_RowOrder |
The Order of the component in the BOM. It doesn’t really affect the BOM structure, but it helps with sorting rows. |
string |
Bom_PositionNumber |
The Position Number of the component in the BOM. |
string |
Bom_Unit |
The Unit of Measure of the component (e.g. Each, inch, liter, kg,…). |
string |
Bom_XRefTyp |
The XRefTyp which specifies whether the component is internal or external in relation to the design file. |
string |
Bom_Structure |
The BomStructure of the component can be Normal, Phantom, Purchased, Reference, DynamicPhantom or Inseperable. |
double |
Bom_Quantity |
The Quantity (QTY) is the total quantity of the occurrence calculated based on the components Item Quantity, its Unit Quantity and overridden component Quantities. |
int |
Bom_ItemQuantity |
The Item Quantity (Item QTY) is the number of instances of a component in the BOM. |
double |
Bom_UnitQuantity |
The Unit Quantity (Unit QTY) is the amount which each discrete instance of a component adds to the total quantity. |
string |
Bom_ModelState |
The model state name of the used component in the BOM. |
Localization
$fileBomRow is supporting this feature
all active properties can be accessed via the displayName
all active properties can be accessed via _SystemName
except: the ones with guids (=user defined)
Examples
Example of a bomRow (on an english environment):
Bom_RowOrder : 3
Bom_PositionNumber : 7
Bom_Number : ERP-41880947
Bom_Unit : Each
Bom_ItemQuantity : 2
Bom_UnitQuantity : 1.2
Bom_Quantity : 2.4
Bom_XRefTyp : External
Bom_Structure : Normal
Bom_ModelState : Master
Bom_Author : B. ROEPKE
Bom_KeyWords : Vault, Tutorial, Padlock
Bom_Revision : A
Bom_Category : Vault Sample Models
Bom_Company : Autodesk, Inc.
Bom_Cost Center : PRODUCT DESIGN
Bom_Creation Time : 11.04.1976 22:30:33
Bom_Description : 164987124
Bom_Designer : B. ROEPKE
Bom_Engineer : B. ROEPKE
Bom_Cost : 17
Bom_Part Number : ERP-41880947
Bom_Project : PADLOCK
Bom_Vendor : Autodesk, Inc.
Bom_Checked By : B. ROEPKE
Bom_Date Checked : 19.12.2002 08:09:56
Bom_Design Status : 3
Bom_Engr Approved By : D. BRISSON
Bom_Engr Date Approved : 24.12.2002 08:09:56
Bom_Mfg Date Approved : 01.01.1601 00:00:00
Bom_User Status : RELEASED
Bom_Catalog Web Link : http://www.autodesk.com/inventor/
Bom_Document SubType : {E60F81E1-49B3-11D0-93C3-7E0706000000}
Bom_Document SubType Name : Assembly
Bom_EquivalenceValue : 100002
Bom_Subject : Bach
Bom_Manager : Georg
Bom_Title : 2077753685
Classification : None
_Classification : None
Version : 3
_VersionNumber : 3
Comment : Property Edit
_Comment : Property Edit
Number of Attachments : Autodesk.DataManagement.Client.Framework.Vault.Currency.Properties.ImageInfo
_NumManualAttachments : Autodesk.DataManagement.Client.Framework.Vault.Currency.Properties.ImageInfo
Date Version Created : 19.04.2018 17:35:27
_DateVersionCreated : 19.04.2018 17:35:27
Created By : coolOrange
_CreateUserName : coolOrange
Checked In : 19.04.2018 17:35:27
_CheckInDate : 19.04.2018 17:35:27
File Name : Combo Assembly.iam
_ClientFileName : Combo Assembly.iam
IsCheckedOut : False
...
Id : 138383
MasterId : 28630
PersistentId :
PersistentMasterId :
ThinClientHyperLink : http://localhost/AutodeskTC/Vault/explore/file/28630
ThickClientHyperLink : http://localhost/AutodeskDM/Services/EntityDataCommandRequest.aspx?Vault=Vault&ObjectI
d=%24%2FDesigns%2FCombo+Assembly.iam&ObjectType=File&Command=Select
Example of a bomRow for a Virtual component (provides only CAD BOM properties):
Bom_RowOrder : 8
Bom_PositionNumber : 8
Bom_Number : SomeVirtualComponent
Bom_Unit : Each
Bom_ItemQuantity : 1
Bom_UnitQuantity : 1
Bom_Quantity : 100
Bom_XRefTyp : Internal
Bom_Structure : Purchased
Bom_ModelState :
Bom_Creation Time : 12/31/1600 23:00:00
Bom_Description : This is a virtual component
Bom_Cost : 0
Bom_Part Number : SomeVirtualComponent
Bom_Date Checked : 12/31/1600 23:00:00
Bom_Design Status : 0
Bom_Engr Date Approved : 12/31/1600 23:00:00
Bom_Mfg Date Approved : 12/31/1600 23:00:00
Bom_Material : Generic
Bom_Stock Number : SOME_VIRTUAL
Bom_EquivalenceValue : SomeVirtualComponent
Bom_Content Center File : False
Example of corrupt BOM where file of according row is not available any more in Vault (got removed or purged):
FileBomRows that are not resolvable to any existing Vault file can only provide part of the Bill of Materials data, such as the Bom_RowOrder and the Bom_PositionNumber.
Accessing other properties on those rows can throw a MissingCadBomException or a CorruptCadBomException, even if those are suppressed from PowerShell by default.
# foreach($prop in $bomRow.psobject.properties) {
# try {
# # this forces the exception to be thrown
# $value = $prop.get_Value()
# } catch [Exception] {
# $bomRow | Add-Member -MemberType NoteProperty -Name $prop.Name -Value $prop.Value-Force
# }
# }
Bom_RowOrder : 1
Bom_PositionNumber : 1
Bom_ItemQuantity : 2
Bom_XRefTyp : External
Bom_Number : # throws: coolOrange.VaultServices.Vault.FileBom.CorruptCadBomException: Please checkout and re-checkin the file 'CorruptFileBom.iam' (Id: 138296) ...
Bom_Unit : # throws: coolOrange.VaultServices.Vault.FileBom.CorruptCadBomException: Please checkout and re-checkin the file 'CorruptFileBom.iam' (Id: 138296) ...
Bom_UnitQuantity : # throws: coolOrange.VaultServices.Vault.FileBom.CorruptCadBomException: Please checkout and re-checkin the file 'CorruptFileBom.iam' (Id: 138296) ...
Bom_Quantity : # throws: coolOrange.VaultServices.Vault.FileBom.CorruptCadBomException: Please checkout and re-checkin the file 'CorruptFileBom.iam' (Id: 138296) ...
Bom_Structure : # throws: coolOrange.VaultServices.Vault.FileBom.CorruptCadBomException: Please checkout and re-checkin the file 'CorruptFileBom.iam' (Id: 138296) ...
Bom_ModelState : # throws: coolOrange.VaultServices.Vault.FileBom.CorruptCadBomException: Please checkout and re-checkin the file 'CorruptFileBom.iam' (Id: 138296) ...