10 Replies Latest reply on Oct 31, 2017 10:35 AM by Steven Mills

    Assembly Structure - References

    Jason Warnke

      I've been using SW since 2004.  I like it; it is a great piece of software - but it seems like there has got to be a better solution to all the file referencing issues that happen.

       

       

      For the CSWPs, referencing issues are really non-issues.  We understand how the software works and we navigate well within those boundaries; so our file structures remain clean.  The problems come in when you're training new users - which takes time and inevitably involves cleaning up messes (a lot).

       

       

      I have long wished for some means of shutting down sub-assembly re-referencing when working with multiple assemblies containing similar file names.  Maybe one exists?   A checkbox setting I'm overlooking (or-misunderstanding?)?

       

      If nothing exists, would it be possible to add a document-properties specific setting that could be activated on specified assembly files that would disable re-referencing on secondary instances of similar file names?  Like...no matter how high up the assembly is; everything it opens is told "you must keep your original reference" and where secondary instances occur some marker forcibly separates the files in the design tree structure?

       

      There must be some way to do this...if not - there must be some way to make the next software release do this - anyone?

        • Re: Assembly Structure - References
          Alex Lachance

          Hey,

           

          In Tools>Options>External references there is an option, the third from the top, which when unchecked blocks people from doing multi-context. Unfortunately, it is a system setting and not a document setting so you might turn it on and off once in a while, depending on what you require. I'm not sure that is what you are looking for though.

          • Re: Assembly Structure - References
            Dan Pihlaja

            You might be able to play with the settings and then lock them down per user.   There is a way to disable certain settings for each user based on an image file. 

             

            http://www.javelin-tech.com/blog/2016/09/lock-solidworks-system-options/

             

            Then you can specify that no external relations be added and even make sure that the file referencing isn't searching other folders.

            • Re: Assembly Structure - References
              Glenn Schroeder

              It sounds to me like you might be talking about problems with multiple files having the same name.  If so, the only way I know of to avoid issues (other than the obvious not having multiple files with the same name) is to keep all files for a project in the same folder, and never have files from multiple projects open at the same time.

                • Re: Assembly Structure - References
                  Jason Warnke

                  Glenn - Yes.  That is exactly what I wish SW could make happen.

                   

                  I didn't think there was a way to do it; but the reality is that, when you start getting into making really large assemblies (like - I have a 40 foot long in-line machine comprised of about 25 different stations/sub-assemblies, with more subs within themselves), file management can become brutal if the wrong people get ahold of high-up assemblies.   There is alllll manner of opportunity to screw things up by having files of similar names elsewhere (and they will inevitably exist elsewhere).

                   

                  The reality though is I dont want to have to precede every file with a job specific number (file names get too long) - Instead I want to be able to have files of similar names in dual locations sometimes; for fasteners and such (and more of course).  I realize that the toolbox approach is the common approach - and shared libraries are useful for depositing pre-made models into ones assembly, but the thought of 1248 job folders all utilizing 1 solidpart?  That seems a recipe for disaster.  Keeping jobs exclusive is so much nicer imo (even if it does suck up more file space).

                   

                  There must be some way the software designers can come up with a method to keep competing references on same-named documents exclusive to one another, yet still usable within the same assembly?

                    • Re: Assembly Structure - References
                      Alex Lachance

                      Excuse me for asking but why not rename those files with matching names to have it be a name that leans more towards your project?

                       

                      I.E. say your part is named skeleton, why not name it SKELETON-001 or something like that and then have the correct number of instances required created, so that when you open your project it will open the right file

                      • Re: Assembly Structure - References
                        Jim Sculley

                        Jason Warnke wrote:

                         

                        Glenn - Yes. That is exactly what I wish SW could make happen.

                         

                        I didn't think there was a way to do it; but the reality is that, when you start getting into making really large assemblies (like - I have a 40 foot long in-line machine comprised of about 25 different stations/sub-assemblies, with more subs within themselves), file management can become brutal if the wrong people get ahold of high-up assemblies. There is alllll manner of opportunity to screw things up by having files of similar names elsewhere (and they will inevitably exist elsewhere).

                         

                        The reality though is I dont want to have to precede every file with a job specific number (file names get too long) - Instead I want to be able to have files of similar names in dual locations sometimes; for fasteners and such (and more of course). I realize that the toolbox approach is the common approach - and shared libraries are useful for depositing pre-made models into ones assembly, but the thought of 1248 job folders all utilizing 1 solidpart? That seems a recipe for disaster. Keeping jobs exclusive is so much nicer imo (even if it does suck up more file space).

                         

                        There must be some way the software designers can come up with a method to keep competing references on same-named documents exclusive to one another, yet still usable within the same assembly?

                        No two documents have the same full name in a file system.  Every document has a unique path.  SOLIDWORKS chooses to throw away this useful information and rely on the file name alone, which is silly.

                          • Re: Assembly Structure - References
                            Jason Warnke

                            The file names get too long.  Our network has a LOT of directories (within directories, within directories).  Windows limits character usage (in our case anyway) for a file path to ...I don't remember...30 or 40 or something long.  The problem is that the longer file names get, the quicker I get error issues with file name/path lengths. 

                             

                            Also - we use part numbers (like, part ordering numbers) as the file names.  This makes it easy to cross the BOMs with the models, easier to search/locate and easier to output to excel and copy to a source-head BOM (which is how we do it here; BOMs are not always linked-driven by SW; in the case of many companies, purchasing doesn't use SW, and likes to add or change things...purchasing...argh! !). 

                          • Re: Assembly Structure - References
                            Steven Mills

                            Some partial solutions. Part/Assembly/Drawing numbers. Need some unique ID anyway, so use ePDM to assign them to each, and maintain a database of what is used with what. Maintaing such things is what the ePDM is made for.

                             

                            If you don't have an ePDM, how about just using time-stamps when a new part is made. 201710310930 -> 2017 = year, 10 = month, 31 = day, 09 = hour, 30 = min. A new unique number every minute, or less if you add seconds. Also semi-autosorts when using windows explorer.

                             

                            And lastly when you pull a part from the design library, instead of leaving it linked to the part in the library you can;

                            One - Save As a new name.

                            Two - change it to a virtual part. This will cut it's ties to the original file, and save all the information for that part into the assembly. No new file is even made, and won't auto-cross reference with other parts. One word of warning with this though, I had a problem once when the assembly file became corrupt and I lost all the virtual parts within it.

                        • Re: Assembly Structure - References
                          John Stoltzfus

                          Creating and maintaining a part number and filing system can be difficult if there's no or little file management/control...  Don't envy you at the moment..

                          • Re: Assembly Structure - References
                            Michael Fernando

                            So, you are building Large assemblies!

                            Unless you have a streamlined filing/part numbing structure, things will get messy rapidly. I can remember when I started my previous job and the company was in a transition from 2d system to 3d Solidworks. In 2D drawings, there was a table showing Stations and their quantities and with a 2d system it was ok. But as we progress to a 3d system, we made copies of those components with unique names Project#_Station#_Subassy Code#_ Serial# regardless if they were same or not. This paved the way to modify each component if needed, without compromising other stations.

                            As you know under Large assemblies, it’s a best practice to make sub assemblies. So, when we make a similar station/s, we used pack&go replacing only the station #, and the latter numbers matched for similar components throughout the project.

                            Having unique names enabled us to implement a PDM system (PDMworks) without an issue. With a PDM system, you could perform concurrent designing without overwriting issues is a major advantage. If you make a mistake, you could go back to a previous revision.

                            Likewise, there are many things you could do outside of CAD software to make your life easier.