11-22-2017
10:44 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
11-22-2017
10:44 AM
I think your issue was that you weren't returning FORM from your function to a variable.
Sub Main ()
Dim oDoc As Document = ThisApplication.ActiveDocument
If oDoc.DocumentType <> DocumentTypeEnum.kAssemblyDocumentObject Then Exit Sub
Dim oADO As Inventor.ComponentOccurrences = oDoc.ComponentDefinition.Occurrences
iProperties.Value("Custom", "FORM") = 0
iProperties.Value("Custom", "PUNCH") = 0
iProperties.Value("Custom", "WELD") = 0
For Each aDoc As Document In oDoc.AllReferencedDocuments
Form = 0
If aDoc.DocumentType = DocumentTypeEnum.kAssemblyDocumentObject Then
Dim oAssmDoc As AssemblyDocument = aDoc
oDef = oAssmDoc.ComponentDefinition
ElseIf aDoc.DocumentType = DocumentTypeEnum.kPartDocumentObject Then
Dim oPartDoc As PartDocument = aDoc
oDef = oPartDoc.ComponentDefinition
End If
' MyOperations = New String(){"FORM", "PUNCH", "WELD"}
'
' For Each op in MyOperations
' MsgBox(op)
' Next
If oDef.BOMStructure <> BOMStructureEnum.kPhantomBOMStructure
Dim Amount As Integer = oADO.AllReferencedOccurrences(aDoc).Count
Form = collectQuantity(aDoc,Amount,oLibraryPath)
End If
FORM_QTY = FORM_QTY + Form
Next
iProperties.Value("Custom", "FORM") = FORM_QTY
End Sub
Function collectQuantity (aDoc As Document, Amount As Integer,oLibraryPath As String) As Double
Dim oPropsets As PropertySets = aDoc.PropertySets
Dim oCustomPropSet As PropertySet = oPropsets.Item("User Defined Properties")
Dim FORM As Double
Try
FORM = oCustomPropSet("FORM").Value * Amount
'MsgBox(FORM)
Catch
FORM = 0
End Try
Return FORM
End Function
--------------------------------------
Did you find this reply helpful ? If so please use the 'Accept as Solution' or 'Like' button below.
Justin K
Inventor 2018.2.3, Build 227 | Excel 2013+ VBA
ERP/CAD Communication | Custom Scripting
Machine Design | Process Optimization

iLogic/Inventor API: Autodesk Online Help | API Shortcut In Google Chrome | iLogic API Documentation
Vb.Net/VBA Programming: MSDN | Stackoverflow | Excel Object Model
Inventor API/VBA/Vb.Net Learning Resources: Forum Thread
Sample Solutions:Debugging in iLogic ( and Batch PDF Export Sample ) | API HasSaveCopyAs Issues |
BOM Export & Column Reorder | Reorient Skewed Part | Add Internal Profile Dogbones |
Run iLogic From VBA | Batch File Renaming| Continuous Pick/Rename Objects
Local Help: %PUBLIC%\Documents\Autodesk\Inventor 2018\Local Help
Ideas: Dockable/Customizable Property Browser | Section Line API/Thread Feature in Assembly/PartsList API Static Cells | Fourth BOM Type
Inventor 2018.2.3, Build 227 | Excel 2013+ VBA
ERP/CAD Communication | Custom Scripting
Machine Design | Process Optimization
iLogic/Inventor API: Autodesk Online Help | API Shortcut In Google Chrome | iLogic API Documentation
Vb.Net/VBA Programming: MSDN | Stackoverflow | Excel Object Model
Inventor API/VBA/Vb.Net Learning Resources: Forum Thread
Sample Solutions:Debugging in iLogic ( and Batch PDF Export Sample ) | API HasSaveCopyAs Issues |
BOM Export & Column Reorder | Reorient Skewed Part | Add Internal Profile Dogbones |
Run iLogic From VBA | Batch File Renaming| Continuous Pick/Rename Objects
Local Help: %PUBLIC%\Documents\Autodesk\Inventor 2018\Local Help
Ideas: Dockable/Customizable Property Browser | Section Line API/Thread Feature in Assembly/PartsList API Static Cells | Fourth BOM Type