Since updating to Inventor 2017 from Inventor 2015 we have run into multiple issues, but here is the latest.
I have been checking our stock assemblies out of Vault (to fix the appearance and migrating issues that popped up in 2017), and now I can not check the assemblies back in as long as our iLogic rules contain the iLogicVB.UpdateWhenDone = True code.
I don't get any errors, it simply will not check in. I will attach two screenshots of what the check-in window looks like. If I comment out the Update code, it will check in both the assembly and the part. If I do not comment out the Update code, it will only check in the part.
Anyone know what this is about? I would sure like to keep the Update code in our iLogic (as most of our assemblies contain this code).
Do you have this code running based on a triggered event? If so make sure the trigger is not happening "AFTER SAVE".
Mark Lancaster
& Autodesk Services MarketPlace Provider
Autodesk Inventor Certified Professional & not an Autodesk Employee
Likes is much appreciated if the information I have shared is helpful to you and/or others
Did this resolve your issue? Please accept it "As a Solution" so others may benefit from it.
SyntaxEditor Code Snippet
MultiValue.List("CatchBasinDia") = GoExcel.CellValues("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "Catch Basin", "B7", "B18") GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "F5") = CatchBasinDia GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "D5") = "MonoBase" GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "F10") = "BaseHeight" GoExcel.DisplayAlerts = False Parameter("CB MonoBase-01:1", "Height") = BaseHeight Parameter("CB MonoBase-01:1", "OD") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "E13") Parameter("CB MonoBase-01:1", "ID") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "F13") Parameter("CB MonoBase-01:1", "JT") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "D16") Parameter("CB MonoBase-01:1", "RD") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "E16") Parameter("CB MonoBase-01:1", "FThk") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "F19") Parameter("CB MonoBase-01:1", "LiftPinRad") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "E23") Parameter("CB MonoBase-01:1", "LiftPinDrop") = GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "F23") Parameter("CB MonoBase-01:1", "Sump") = Sump Parameter("CB MonoBase-01:1", "SumpPipeDia") = HoleDia iLogicVb.UpdateWhenDone = True If CatchBasinDia = 600 Then MultiValue.List("BaseHeight") = GoExcel.CellValues("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "Catch Basin", "N7", "N12") Sump = 500 HoleDia = 356 TwoHoles = False Keyway = False WeeperHoles = False Parameter("CB MonoBase-01:1", "Height") = BaseHeight-GoExcel.CellValue("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "CB Dimensions", "F19") Feature.IsActive("CB MonoBase-01:1", "600 Leak Ring") = True MessageBox.Show("Dimensions may not be correct due to lack of information at this time. Please review ALL dimensions.", "WARNING") Else If CatchBasinDia = 900 Then MultiValue.List("BaseHeight") = GoExcel.CellValues("C:\_Workspace\Designs\05 - Reference\Master Catch Basin Information.xlsx", "Catch Basin", "N13", "N18") Feature.IsActive("CB MonoBase-01:1", "600 Leak Ring") = False End If If Keyway = True Then Feature.IsActive("CB MonoBase-01:1", "TopKeyway") = True Feature.IsActive("CB MonoBase-01:1", "Chamfer1") = True Else If Keyway = False Then Feature.IsActive("CB MonoBase-01:1", "TopKeyway") = False Feature.IsActive("CB MonoBase-01:1", "Chamfer1") = False End If If WeeperHoles = True Then Feature.IsActive("CB MonoBase-01:1", "Weeper1") = True Feature.IsActive("CB MonoBase-01:1", "Weeper2") = True Else If WeeperHoles = False Then Feature.IsActive("CB MonoBase-01:1", "Weeper1") = False Feature.IsActive("CB MonoBase-01:1", "Weeper2") = False End If If TwoHoles = True Then Feature.IsActive("CB MonoBase-01:1", "TwoHole") = True Parameter("CB MonoBase-01:1", "Pipe2Angle") = Hole2Angle Parameter("CB MonoBase-01:1", "Pipe2Dia") = Hole2Dia Else If TwoHoles = False Then Feature.IsActive("CB MonoBase-01:1", "TwoHole") = False End If iLogicVb.UpdateWhenDone = True
No, it is not based on a triggered event. This is the entire code.
With this particular assembly (I just checked a random one out from vault), I cannot check in even with both of those Update snippets commented out. So something else must be stopping it.
[edit] And again, this was NOT an issue in Inventor 2015. It worked fine until we installed Inventor 2017.
It appears to be an issue specific to these catch basin assemblies. We have two options 600, and 900 but do not have complete information in the referenced spreadsheet for 600. It didn't like something to do with that. In order to get it checked in I had to delete all code relating to the 600 option. As well, I still had to comment out the UpdateWhenDone code.
I have moved on to different structures entirely and haven't run into issues with the UpdateWhenDone code (they checked in just fine).
False alarm. There is definitely some new issue that Inventor 2017 has with our iLogic. I have run into this again with various other previously working assemblies. I have to go through all the rules and comment out iLogicVB.UpdateWhenDone = True
I have no idea why. I can't see any issues with the code.
OK, so for anyone that cares I will give a complete rundown of what works and what doesn't for this issue. I have a feeling it may be something Vault related.
So we update (for lack of a better word, as it certainly hasn't been an upgrade) to Inventor 2017. I have been working the same way I always have. I checked out an assembly from vault. I want to change everything in the assembly so I right click on top level assembly, go down to Vault, click Check Out, proceed to check out all children parts/assemblies. Make changes, go to check back into vault the same way (right click on top level assembly, go down to Vault, click Check In). The Check In window pops up and shows everything except the parent assembly. As mentioned previously, I found that I can go into my iLogic rules, comment out the UpdateWhenDone snippet, then when I go to Check In, the window shows that it is checking in everything including the parent assembly. Weird.
So after playing with this all morning, double checking event triggers to make sure it wasn't running any rules that would conflict with the Check In procedure. All looked well. For some reason I tried clicking over to the Vault tab and clicking that Check In button. It works. With the UpdateWhenDone snippet running as normal, it will check everything in as normal. So I click cancel, try checking in the other way (right click, Vault, Check In) and it works now.
Some sort of bug in 2017?
Hello @scott.314,
I will ask for this post to be moved into the Inventor customization forum where its better suited.
Best Regards,
Don
Can't find what you're looking for? Ask the community or share your knowledge.