Within a team, having a defined folders structure is as important as having a Files Naming convention. Properly classifying the files helps to quickly find them, helps to avoid duplicates, facilitate backup and save hard drive space.
Do you place everything under a project folder? But then an external component that is used in two projects should be in both projects or only in one? If you have clones and need to modify something in one file, to change a property for example, this modification has to be also pushed to every other files… What do you do with the hardware?
It is going to take a significant amount of hard drive space if you have duplicates for each project.
What about standard parts? Where do you put them?
Folder Structure Requirements
There are many way to classify the files but few base rules should be followed:
- Duplicates should be avoided. It takes unnecessary space, changing something in one file is not reflected to others and could lead to inconsistency.
- Components not specific to a project should not be saved inside the project folder. They should be saved in a shared location to be used in multiple projects and by multiple users.
- The folders names should be short as SolidWorks can accept only a limited number of characters for the file path. For this reason, the number of sub-folders should also be limited.
- Related files should stay together. SolidWorks cannot find a drawing attached to a component if it is located in a different folder or if it has a different name. Non-SolidWorks files related to a component should also stay with it to avoid unnecessary clicks and be able to quickly find them.
- The root of the network folder for the CAD should be structured to have 3 main categories. The Database that contains the shared components, the Projects to store everything project related and the Settings to have the same templates and configurations for all users. Of course you can use whatever name you want.
- Project specific parts and assemblies should be saved in a CAD or equivalent folder name inside a project. If a project assembly uses a part or an assembly from a different project, those components should stay where they are and not be duplicated into this new project folder.
Nevertheless, if they are going to be reused in future other projects, maybe they should be considered as company internal standards and should be moved from the original project folder to a standard components database. See the article about the Definition of the Word Component.
- Components not specific to a project should not be saved inside it. Someday the original project might be archived and they are going to be missing for other projects assemblies using them. They should be saved within the shared database in a folder named Standards or after your company name for example. Inside that folder you can add some sub-folders, with relatively short names, to classify them like external components.
- Related files should stay together to facilitate the search and to have a unique location. It is also very convenient as you can quickly know what you have and what you are missing. This is true for non-SolidWorks files and even more true for drawings as discussed below.
If you are using miniPDM, you should absolutely do that so you can have the program to create hyperlinks to these files directly in the BOM. For more information see the Excel Add-in Features article.
- Another good reason to keep everything together is that when you select Save As… To export something into a different format, by default SolidWorks puts you in the parent folder of the original component and name the new file after it. Why do more click to put it somewhere else when you can just click Save?
If something is not at its right location, you cannot just move a component and keep all the links to their containing assemblies and drawings in Windows Explorer. You either need to do it with PDM or SolidWorks Explorer.
In SolidWorks Explorer, click on a component and select the move icon. It will rewrites the links to that component where it is referenced.
The SolidWorks drawings should be in the same folder as their parents for several reasons:
- By default, when you click save on a drawing that you just made after clicking on File > Make Drawing from Part (or Assembly), SolidWorks puts you in the same folder with the name exactly like the part (or assembly) and you just have to click Save. Why should you do more clicks?
- When you are looking at a component, you can right click on it, on the construction tree or on the model itself, and you will have the possibility to open the drawing directly if it is located in the same folder and with the same name. Super convenient!
- When you create a drawing from a component, SolidWorks checks if a drawing with the same name already exists but only in the same folder. When you have dozens of components, it is easy to forget if you already made a drawing if you put it in a different folder. You want to have this message to remind it to you:
- Having everything in the same folder also helps to know which drawing is left to be done in the blink of an eye:
The external components should not be saved inside a project folder as they are not specific to that project unlike custom parts and assemblies. There are two ways to organize the external components database folder: by manufacturer or by component functions.
I really prefer to sort the components per manufacturer to have a clearer vision of the manufacturer I am using and also because sometimes a component can be classified in more than one function and we don’t want duplicates…
- Each folder should be named after the manufacturer. If you don’t know the manufacturer name then go for the distributor you use the most. If later you discover the name of the manufacturer you can still move the components using the technique explained in the Generalities. See the article about the Component Identification.
For the components that have no defined manufacturers or distributors, you can place them inside a Generic folder. This is the case of external
standardized components. See the article about the
Definition of the Word Component.
- Then in each folder, you should try to sort the components the same way the manufacturer / distributor sorts them on its website to facilitate the search and easily know if the model you are looking for is already in there. Don’t go too deep down the tree as SolidWorks can accept only a limited number of characters for the file path. If you have too many sub-folder you will end up with only a couple of component inside the last folder which does not make much sense.
The good thing is that when you search in the components database with Windows Explorer, the folders matching the search keyword will show up making your search easier. See the article about the Component Searching.
To save the models that needs to be shared but are not actually purchased, you should use an Environment folder where you can put the customer’s product or his tools if you are a machine designer, the building models, the mannequin that you use to show the scale, etc…
The hardware is a form of external components, it should then follow the same rules at the exception of the components generated with the Toolbox.
- The toolbox should be in a shared network drive but as is. The content of the default folder SOLIDWORKS Data should not be manually modified. You can rename the containing folder to something more explicit like Toolbox if you want. Having it in a shared location means that if a component is modified trough the interface or a new size is generated, it will be available to everyone in the team. Please refer to the article about the Shared Configuration Files Locations to change the default path.
- The hardware that does not exist in the Toolbox should be added to it if it can be made as a family. A family is a component that can have different sizes but keeps its overall shape and properties. See the article about the SolidWorks Toolbox.
- The hardware that cannot comply with family requirements will have to be treated as external components. If they are defined by a standard (ISO, ASTM, ASME,…) they should be put in the Generic folder instead of a specific manufacturer name as they can be produced by different company and still be interchangeable, in theory.