Inventor stops highlighting features/components in the browser after awhile

Inventor stops highlighting features/components in the browser after awhile

EScales
Advocate Advocate
2,108 Views
11 Replies
Message 1 of 12

Inventor stops highlighting features/components in the browser after awhile

EScales
Advocate
Advocate

Has anyone had any issues with Inventor 2018.3 where is stops highlighting the part feature or assembly component in the browser?  I can still hover my mouse over a feature and assume I'm selecting the right one, right-click on it and still get the proper right-click menu, but it won't highlight the feature.  I've even suppressed a feature and it physically does it in the model, but the browser doesn't strike out or gray out the suppressed feature.  It becomes hard to work this way and if I save and close all my files, shut down Inventor and restart, it will work correctly again...for awhile.  Then it goes back to doing the same thing.  It does the same thing in an assembly, where it won't highlight a component in the browser if I select it.  Having to shut down and restart every half hour or so is getting very annoying.

I have all the Inventor 2018 updates installed and I've even rebooted my machine.  Nobody else in our engineering department is having this problem.  Any ideas?

 

2018-05-02_1352.png

2018-05-02_1354.png

2018-05-02_1359.png

0 Likes
2,109 Views
11 Replies
Replies (11)
Message 2 of 12

johnsonshiue
Community Manager
Community Manager

Hi! this behavior does not sound right to me. Is your graphics driver up-to-date? Could you try resetting your settings? Go to All Programs -> Autodesk -> Autodesk Inventor Pro 2018 -> Tools -> Inventor Reset Utility -> 2018. Please note that all customization will be reset back to install default.

Many thanks!

 



Johnson Shiue (johnson.shiue@autodesk.com)
Software Test Engineer
0 Likes
Message 3 of 12

Xun.Zhang
Alumni
Alumni

Hi Escales, 

Sounds like browser node is not sync up the state. Normally, Inventor browser is always refresh and up to date, sometimes, if the browser node is not refresh properly or delay, please minimize the Inventor windows and restore it, the browser will up to date.

It may happen after windows lock the screen or system back from sleep sometime. 

Hope it helps!


Xun
Message 4 of 12

EScales
Advocate
Advocate

I've tried minimizing the browser numerous times, but it doesn't refresh anything.  I've tried running a day or so WITHOUT my iLogic event triggers enabled, and I haven't had any browser issues.  This morning, I enabled my event triggers again, and already I'm having trouble with the browser not highlighting correctly.  Could there be a connection? 

2018-05-04_0920.png

0 Likes
Message 5 of 12

johnsonshiue
Community Manager
Community Manager

Hi! Then it could be rule specific. Could you share the rule here?

Many thanks!

 



Johnson Shiue (johnson.shiue@autodesk.com)
Software Test Engineer
0 Likes
Message 6 of 12

EScales
Advocate
Advocate

I'm in the middle of creating and changes multiple rules right now, so it's to hard to tell what might be causing the problem.  And, it doesn't do it all the time either.  So, I'll table this issue right now until I can get my rules working correctly and then try to isolate the issue again.  Thanks for the feedback.

0 Likes
Message 7 of 12

EScales
Advocate
Advocate

I just re-enabled the event triggers, since I turned them off 2 months ago.  I had actually forgot about this problem.  I enabled my rules on everyone else PC's and I'm already getting complaints from other people that their Inventor browsers are acting weird and not highlighting or selecting after a short time.  I have 5 different rules being triggered at different times.  Can anyone see anything in the rules that would cause this erratic behavior in the Inventor browser?  Here are the rules:

 

Rule 1:

iLogicVb.Automation.ParametersXmlLoad(ThisDoc.Document, "L:\Autodesk Software\iLogic Rules\NuTec M_P_S Custom Parameter.xml")

iLogicForm.ShowGlobal("NuTec (M,P,S)", FormMode.Modal)
	
'This calls the current value of the M_P_S parameter and truncates the value to 1 character
iProperties.Value("Custom", "Mfg, Purchase, Stock") = Left(Parameter("M_P_S"), 1)

'This changes the BOM Structure for this assembly to Purchased if M_P_S = P (Purchased)
'Else it changes the BOM Structure to Normal
Dim oAsmDoc As AssemblyDocument = ThisApplication.ActiveDocument
	If Parameter("M_P_S") = "P (Purchased)" Then
		oAsmDoc.ComponentDefinition.BOMStructure = BOMStructureEnum.kPurchasedBOMStructure
	Else
		oAsmDoc.ComponentDefinition.BOMStructure = BOMStructureEnum.kNormalBOMStructure
	End If

InventorVb.DocumentUpdate()

Rule 2:

If iProperties.Value("Summary", "Category") = "FASTENERS" Then
	MessageBox.Show("This is a FASTENER", "M,P,S")
	Return 'Do nothing
Else
	'Import custom M_P_S Parameter
	MessageBox.Show("This is NOT a FASTENER", "M,P,S")
	
	iLogicVb.Automation.ParametersXmlLoad(ThisDoc.Document, "L:\Autodesk Software\iLogic Rules\NuTec M_P_S Custom Parameter.xml")

	iLogicForm.ShowGlobal("NuTec (M,P,S)", FormMode.Modal)

	'This calls the current value of the M_P_S parameter and truncates the value to 1 character
	iProperties.Value("Custom", "Mfg, Purchase, Stock") = Left(Parameter("M_P_S"), 1)

	'This changes the BOM Structure for this part to Purchased if M_P_S = P (Purchased)
	'Else it changes the BOM Structure to Normal
	Dim oPrtDoc As PartDocument = ThisApplication.ActiveDocument
		If Parameter("M_P_S") = "P (Purchased)" Then
			oPrtDoc.ComponentDefinition.BOMStructure = BOMStructureEnum.kPurchasedBOMStructure
		Else
			oPrtDoc.ComponentDefinition.BOMStructure = BOMStructureEnum.kNormalBOMStructure
		End If
End If

InventorVb.DocumentUpdate()

Rule 3:

''' <summary>
''' Will only run if the activedocument has been saved.
''' </summary> 
Sub Main()
	Dim trans As Transaction = ThisApplication.TransactionManager.StartTransaction(ThisApplication.ActiveDocument, "Export and Attach Step file")
		If Parameter("M_P_S") = "P (Purchased)" Then
			trans.Abort()
		ElseIf Not iProperties.Value("Project", "Part Number") = "" Then
			Dim filenameToAttach As String = ExportToStep()
			If Not filenameToAttach = String.Empty Then
				Dim doc As Document = ThisApplication.ActiveDocument
				AddReferences(doc, filenameToAttach)
			End If
		Else
			MessageBox.Show("NuTec Part Number is blank...Cannot save the .stp file","Error Saving File")
			trans.Abort()
		End If
End Sub

''' <summary>
''' Returns an empty string if the stp file didn't save for some reason.
''' </summary>
''' <returns></returns>
Function ExportToStep() As String
	Dim filename As String
	' Get the STEP translator Add-In.
	Dim oSTEPTranslator As TranslatorAddIn
	oSTEPTranslator = ThisApplication.ApplicationAddIns.ItemById("{90AF7F40-0C01-11D5-8E83-0010B541CD80}")
	Dim oContext As TranslationContext
	oContext = ThisApplication.TransientObjects.CreateTranslationContext
	Dim oOptions As NameValueMap
	oOptions = ThisApplication.TransientObjects.CreateNameValueMap

	Dim Rev As String
	If iProperties.Value("Project", "Revision Number") = "-" Then
		Rev = "_0"
	ElseIf iProperties.Value("Project", "Revision Number") = "" Then
		Rev = ""
	ElseIf Not iProperties.Value("Project", "Revision Number") = "-" Or iProperties.Value("Project", "Revision Number") = "" Then
		Rev = "_" & iProperties.Value("Project", "Revision Number")
	End If

	oStepFileName = iProperties.Value("Project", "Part Number") & Rev

	If oSTEPTranslator.HasSaveCopyAsOptions(ThisApplication.ActiveDocument, oContext, oOptions) Then
	    ' Set application protocol.
	    ' 2 = AP 203 - Configuration Controlled Design
	    ' 3 = AP 214 - Automotive Design
	    oOptions.Value("ApplicationProtocolType") = 3
	    ' Other options...
	    'oOptions.Value("Author") = ""
	    'oOptions.Value("Authorization") = ""
	    'oOptions.Value("Description") = ""
	    'oOptions.Value("Organization") = ""
	    oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism
	    Dim oData As DataMedium
	    oData = ThisApplication.TransientObjects.CreateDataMedium
		oData.FileName = ThisDoc.Path & "\" & oStepFileName & ".stp"
		oSTEPTranslator.SaveCopyAs(ThisApplication.ActiveDocument, oContext, oOptions, oData)
		filename = oData.FileName
	End If
	If System.IO.File.Exists(filename) Then
		Return filename
	Else
		Return ""
	End If
End Function

''' <summary>
''' Attaches any file using the full c:\path\to\your\file.extension format.
''' </summary>
''' <param name="odoc"></param>
''' <param name="selectedfile"></param>
Public Sub AddReferences(ByVal odoc As Inventor.Document, ByVal selectedfile As String)
	Dim oleReference As ReferencedOLEFileDescriptor
	'This deletes any previously attached .stp files before attaching a new .stp file
	For Each oleReference In odoc.ReferencedOLEFileDescriptors
		Call oleReference.Delete()
	Next	
	If selectedfile.Contains("|") Then ' we have multiple files selected.
		Dim file As String() = selectedfile.Split("|")
		For Each s As String In file
			oleReference = odoc.ReferencedOLEFileDescriptors _
				.Add(s, OLEDocumentTypeEnum.kOLEDocumentLinkObject)
			oleReference.BrowserVisible = True
			oleReference.Visible = False
			oleReference.DisplayName = Mid$(s, InStrRev(s, "\") + 1)
		Next
	Else
		oleReference = odoc.ReferencedOLEFileDescriptors _
				.Add(selectedfile,OLEDocumentTypeEnum.kOLEDocumentLinkObject)
		oleReference.BrowserVisible = True
		oleReference.Visible = False
		oleReference.DisplayName = Mid$(selectedfile, InStrRev(selectedfile, "\") + 1)
	End If
End Sub

Rule 4:

''' <summary>
''' Will only run if the activedocument has been saved.
''' </summary> 
Sub Main()
	Dim trans As Transaction = ThisApplication.TransactionManager.StartTransaction(ThisApplication.ActiveDocument, "Export and Attach Stl file")
		If Parameter("M_P_S") = "P (Purchased)" Then
			trans.Abort()
		ElseIf Not iProperties.Value("Project", "Part Number") = "" Then
			Dim filenameToAttach As String = ExportToStl()
			If Not filenameToAttach = String.Empty Then
				Dim doc As Document = ThisApplication.ActiveDocument
				AddReferences(doc, filenameToAttach)
			End If
		Else
			MessageBox.Show("NuTec Part Number is blank...Cannot save the .stl file","Error Saving File")
			trans.Abort()
		End If
End Sub

''' <summary>
''' Returns an empty string if the stl file didn't save for some reason.
''' </summary>
''' <returns></returns>
Function ExportToStl() As String
	Dim filename As String
	' Get the STL translator Add-In.
	Dim STLAddIn As TranslatorAddIn
	STLAddIn = ThisApplication.ApplicationAddIns.ItemById("{90AF7F40-0C01-11D5-8E83-0010B541CD80}")
	Dim oContext As TranslationContext
	oContext = ThisApplication.TransientObjects.CreateTranslationContext
	oContext.Type = IOMechanismEnum.kFileBrowseIOMechanism
	' Create a NameValueMap object
	Dim oOptions As NameValueMap
	oOptions = ThisApplication.TransientObjects.CreateNameValueMap
	' Create a DataMedium object
	Dim oDataMedium As DataMedium
	oDataMedium = ThisApplication.TransientObjects.CreateDataMedium
	
	Dim Rev As String
	If iProperties.Value("Project", "Revision Number") = "-" Then
		Rev = "_0"
	ElseIf iProperties.Value("Project", "Revision Number") = "" Then
		Rev = ""
	ElseIf Not iProperties.Value("Project", "Revision Number") = "-" Or iProperties.Value("Project", "Revision Number") = "" Then
		Rev = "_" & iProperties.Value("Project", "Revision Number")
	End If
	
	oStlFileName = iProperties.Value("Project", "Part Number") & Rev
	' Check whether the translator has 'SaveCopyAs' options
	If STLAddIn.HasSaveCopyAsOptions(oDocument, oContext, oOptions) Then
	    oOptions.Value("OutputFileType") = 0 ' 0 = Binary , 1 = ASCII
	    oOptions.Value("ExportUnits") = 2 ' INCH = 2 , FOOT = 3 , CENTIMETER = 4 , MILLIMETER = 5 , METER = 6 , MICRON = 7
	    oOptions.Value("Resolution") = 0 ' HIGH = 0 , MEDIUM = 1 , LOW = 2 , CUSTOM = 3 , BREP = 4
	    oOptions.Value("ExportColor") = False
	End If
	'Set the destination file name
	Dim oData As DataMedium
	oData = ThisApplication.TransientObjects.CreateDataMedium
	oData.FileName = ThisDoc.Path & "\" & oStlFileName & ".stl"
	STLAddIn.SaveCopyAs(ThisApplication.ActiveDocument, oContext, oOptions, oData)
	filename = oData.FileName
	If System.IO.File.Exists(filename) Then
		Return filename
	Else
		Return ""
	End If
End Function

''' <summary>
''' Attaches any file using the full c:\path\to\your\file.extension format.
''' </summary>
''' <param name="odoc"></param>
''' <param name="selectedfile"></param>
Public Sub AddReferences(ByVal odoc As Inventor.Document, ByVal selectedfile As String)
	Dim oleReference As ReferencedOLEFileDescriptor
	If selectedfile.Contains("|") Then ' we have multiple files selected.
		Dim file As String() = selectedfile.Split("|")
		For Each s As String In file
			oleReference = odoc.ReferencedOLEFileDescriptors _
				.Add(s, OLEDocumentTypeEnum.kOLEDocumentLinkObject)
			oleReference.BrowserVisible = True
			oleReference.Visible = False
			oleReference.DisplayName = Mid$(s, InStrRev(s, "\") + 1)
		Next
	Else
		oleReference = odoc.ReferencedOLEFileDescriptors _
				.Add(selectedfile,OLEDocumentTypeEnum.kOLEDocumentLinkObject)
		oleReference.BrowserVisible = True
		oleReference.Visible = False
		oleReference.DisplayName = Mid$(selectedfile, InStrRev(selectedfile, "\") + 1)
	End If
End Sub

Rule 5:

'This calls the current value of the MASS Inventor property and truncates the value to 2 decimals
iProperties.Value("Custom", "Weight (lb)") = Round(iProperties.Mass,2)

InventorVb.DocumentUpdate()

 

0 Likes
Message 8 of 12

EScales
Advocate
Advocate

So, I started this thread last year and never got it resolved.  At the time I was running Inventor 2018 and had thought it had something to do with my iLogic rules running that caused this issue.  Today, I'm running Inventor 2019 and have my iLogic rules disabled and it started doing this again.  All of a sudden, my browser won't highlight when I select a part or feature.  It highlights in the workspace, but not the browser.  I right-clicked to edit a sketch and when I was finished the sketch and then tried to edit the feature, there was no option for it.  It seems like it thought that I hadn't finished editing the sketch yet, but I had.  It's just very weird.  All I can do is shut down Inventor and restart it to set things back to normal.  It will run fine for awhile, but seems to eventually start acting up again.  I can't believe nobody else has had this happen before.

Any ideas??

Message 9 of 12

johnsonshiue
Community Manager
Community Manager

Hi! I am sorry that the issue has not yet been resolved. But, it does look like a unique issue. Have you updated graphics driver? What is the highlighting setting in Tools -> App Options -> Colors?

Many thanks!

 



Johnson Shiue (johnson.shiue@autodesk.com)
Software Test Engineer
0 Likes
Message 10 of 12

Anonymous
Not applicable

I am currently experiencing the exact same problem. I have tried everything. The colour settings don't make a difference. I have found that setting the selecting options to select anything else but 'select face and edges' works to highlight the objects in the browser. Only when selecting "select face and edges" it does not highlight in the browser. Help would be much appreciated. Thanks

Message 11 of 12

johnsonshiue
Community Manager
Community Manager

Hi! I have not look into the issue deeply to see where the problem is. Do you also have iLogic rules? When the geometry is not highlighted, if you do Manage -> Rebuild All, does it help?

Many thanks!



Johnson Shiue (johnson.shiue@autodesk.com)
Software Test Engineer
0 Likes
Message 12 of 12

C_Haines_ENG
Collaborator
Collaborator

Did this ever get resolved? Did updating fix this issue? 

 

I'm having the exact same problem and I think I've narrowed it down to the transaction manager. Inventor doesn't seem to be leaving the transaction manager correctly.

 

In your code bit here:

Sub Main()
	Dim trans As Transaction = ThisApplication.TransactionManager.StartTransaction(ThisApplication.ActiveDocument, "Export and Attach Step file")
		If Parameter("M_P_S") = "P (Purchased)" Then
			trans.Abort()
		ElseIf Not iProperties.Value("Project", "Part Number") = "" Then
			Dim filenameToAttach As String = ExportToStep()
			If Not filenameToAttach = String.Empty Then
				Dim doc As Document = ThisApplication.ActiveDocument
				AddReferences(doc, filenameToAttach)
			End If
		Else
			MessageBox.Show("NuTec Part Number is blank...Cannot save the .stp file","Error Saving File")
			trans.Abort()
		End If
End Sub

 

If the Part Number is not nothing, then it never leaves the transaction. You would need a trans.end line to do this. This is the furthest I've gotten, and even when I am absolutely SURE I am ending my own transactions it seems to still hold on to them longer than it should. 

 

Especially Select Events, or CommandManager.pick. These guys absolutely disable the browser tree and it drives me nuts. I noticed it still happening on 2025 inventor.