Issue With Asset Library And API FDU In 2024.1 And Newer
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report
My company currently uses both Inventor and Factory Design Utilities (2024) to complete our layout designs for our material handling projects. We use some custom programming with both Inventor's API and FDU API to simplify the asset placement process for our engineers. Our engineers put in some information into a series of forms, and our external rules will drop in assets from our Vault library and update their factory properties accordingly. This has been the case for us since 2020. We have used Inventor, FDU, and Vault versions 2020 and 2022 previously with this same setup.
Until recently this has not had any issues with the asset library and our programming. However, we applied the 2024.1 FDU update and began having errors with our system trying to drop in assets from the library. We rolled back to 2024.0 and it worked without issue. We tried again with 2024.1.2 and got the same result.
The error that happens seems to be that the programming part of the API that calls up the asset executes, but no model tree occurrence is created, and so there is a "ghost" instance in the layout that has no physical occurrence to go with it. Therefore it cannot be deleted or removed from the factory assembly. I confirmed this by writing a routine that counted the number of asset instances in the layout. The completely empty layout would return 1 instance. The interesting thing is that there is a workaround which is done by going to the asset browser and dropping in an asset from the Vault library manually first before executing the rule. Then it seems to work with no problems, until Inventor is shut down and re-launched. Then the process repeats itself.
The error occurs between these two lines. The first is the one that calls the Factory API to add the asset instance.
The second line gets the occurrence that is supposed to correspond to the created instance to rename it.
Once it errors, I can delete all components from the assembly run a count of all the assets, and it will still show 1 for the asset it never actually created.