Hello All,
For custom iParts that allow you to set the save location, is there any way to set the default save location so that it is relative to an assembly that the iPart is being inserted into?
For example:
If the assembly location is "Assembly Folder\Assembly.iam"
Could I set the default save location to "Assembly Folder\iParts\iPart.ipt"?
We are using IV2011 and Vault 2011. I have a pretty good working knowledge of iParts, iAssemblies, iLogic, and VBA.
Thanks for any input!
Regards,
Joel Tannas
Solved! Go to Solution.
Solved by bobvdd. Go to Solution.
Joel,
Did you look into proxy folders? Not sure how well they play for custom iparts. On my machine in 2012 , they seem to want to go to the workspace although the wiki Help tells the following:
" ...For custom iPart factories only, enter a location for the iPart factory proxy file. A proxy folder is created automatically with the same name as the iPart factory library, but with a leading underscore (_) character.
If the proxy folder does not exist, use Microsoft Windows Explorer to create it before you add the proxy path or use Add Path again and specify the new folder path. Name the new library the same as the iPart factory library preceded with an underscore character...."
Bob
Thanks for replying Bob
From reading the wikiHelp article you mentioned, it seems like proxy paths are for creating a sort of "storage library" for the iParts generarted by iPart Factories.
In order to make this work how I'd like, it seems like I would need to change the proxy path folder location to the relevant workspace location prior to the .ipt file being created. Is it possible to programmatically (VBA or otherwise) modify libraries in this way?
- Joel
The proxy folder has to be set once and for all by editing your active project file. In below example if you place your ipart factory in the Library path (folder .\Library) , your ipart members will get created in the _Library path (folder C:\shared\boundingbox\toto).. So I am not sure why you would need to do anything more through VBA?
Cheers
Bob
Sorry, I guess I wasn't clear enough with the original post.
I would like to save the iPart members that are placed in an assembly in the same location as the assembly.
A static proxy path would not accomplish this.
I was thinking of using a subroutine to create a new folder in the same location as my assembly, and then redirect the proxy path of the Library to that folder.
Does this make any sense?
-Joel
I think that won't work because this would mean that your assembly would sit in a library folder and Inventor is pretty good in keeping library files read-only. So how would you edit your assembly?
You can put the ipart members in the same folder as the consuming assembly with an extra operation at the end by using Pack and Go and using the "Copy to single path" option. But of course this might not suit your need.
Still not sure why you would want to do this? For obtaining a flat folder structure? For simplicity sake (with the risk of duplicate file names).
Cheers
Bob
Thank you for pointing out the read-only problem, I didn't foresee that. It kinda makes the whole thing impossible.
I'm investigating this because our senior engineer prefers to have all the assembly components in the same location as the assembly, so it's easier to dig through folders for components. He also doesn't like the idea of having all our iPart members in a single Library folder.
I guess I'll just have to convince him to let go of Folder-based file structures and let the Vault database do his organizing.
Thank you for patience! It was a long-shot from the start...
Best Regards,
Joel Tannas
You could also add "Frequently used Subfolders" to your Vault project file.
Frequently used Subfolders show up in the Open dialog. That way it might be a bit faster to navigate to components that you use often.
Bob