# Get-VaultItemBOM Gets the Bill of Materials data for the item. ## Syntax ```powershell Get-VaultItemBOM -Number [-IncludeInactive] [-IncludeUnassigned] [-Recursive] [] ``` ## Parameters ```{eval-rst} .. csv-table:: :header: "Type","Name","Description","Optional" "String","Number","Number of the item","no" "SwitchParameter","IncludeInactive","If the SwitchParameter is set also BOM rows which are set to inactive in vault are included","yes" "SwitchParameter","IncludeUnassigned","If the SwitchParameter is set also BOM rows which dont have an associated item in vault are included","yes" "SwitchParameter","Recursive","If the SwitchParameter is set all child BOM rows are included","yes" ``` ## Return type [ItemBomRow[]](/code_reference/objects/itembomrow) ← on success\ **empty** ← on failure ## Examples **Get Item BOM and view data in Console** ```powershell $itemBom = Get-VaultItemBOM -Number '100001' #Print BOM data as Table like in Vault $itemBom | sort-object {[int]$_.Bom_RowOrder} | Format-Table Bom_Number,Bom_RowOrder,Bom_PositionNumber,Bom_Quantity,Bom_Unit,'_Title(Item,CO)',Bom_IsCad <# Bom_Number Bom_RowOrder Bom_PositionNumber Bom_Quantity Bom_Unit _Title(Item,CO) Bom_IsCad ---------- ------------ ------------------ ------------ -------- --------------- --------- 100002 1 1 1 Each Combo Assembly.iam True 100004 2 2 1 Each Catch Post.ipt True 100005 3 3 1 Each Lock Shackle.ipt True 100006 4 4 1 Each Case Inner.ipt True 100008 5 5 1 Each Case Outer.ipt True 100011 6 6 1 Each Case Back.ipt True 100010 7 7 1 Each Dial.ipt True 100003 8 8 1 Each Catch Assembly.iam True 100012 9 9 1 Each Catch.ipt True 100016 10 10 1 Each Combo Backing Plate.ipt True 100009 11 11 1 Each Retainer.ipt ``` **Gets complete Item BOM including inactive and unassigned rows** ```powershell $itemBom = Get-VaultItemBOM -Number '100001' -IncludeInactive -IncludeUnassigned -Recursive ```