I received a question related to my last posting that I thought was good and also helps to illustrate the previous posting. The question that came in asked about the new Open Drawing command that is part of the subscription pack. When you have a part, assembly, or presentation document open and right-click on the top node in the browser you'll see the new Open Drawing command in the context menu, as shown below.
Based on the last posting, the obvious question is how can this work since we learned that the part doesn't know which documents it's referenced in. Is there something I wasn't telling you? The answer is that nothing has changed from the last posting and everything I explained there still applies. But then how can this command work? It's actually quite simple how the command works and could have easily been implemented as a small add-in command.
When you run the Open Drawing command it looks in the current directory and subdirectories for a file that has the same name as the active document, but with a .idw or .dwg file extension. If it doesn't find the file in the current directory or subdirectory it will search the other directories defined by the active project. If it still doesn't find the file then it displays the Open dialog to allow you to specify the file. The part doesn't have any knowledge of the drawing, it's only the program logic that's making that association based on the filename of the part.
There was also a related question in the customization newsgroup that I thought was answered in the previous posting but I think probably needs to be emphasized. The concept to understand is that a reference to another document is just the filename, i.e. MyPart.ipt, NOT the full filename, C:\Temp\MyPart.ipt. When Inventor opens an assembly it reads the file reference list and looks for the referenced files on disk. It does this using the file name and the active project to define the possible locations of the file. The location is not part of the file reference. The important thing to get from this is that if you need to reorganize your files and move them around on disk you don't need to do anything about the file references. You only need to make sure that the project specifies the directories that contain the files. The only time you need to change file references is when you've changed the filename of the file.