most of our products and parts are custom built. any conveyor, machine, table and etc. all from stainless steel and all are different.
sometimes the products has only slight difference, what is the most common way to easy build new projects and use old parts with little difference - how to organize them in a library
If you have two parts that are similar, you MUST give them each a unique file name. Or give them each a configuration name if you will be making use of those.
I've never made use of one of the PDM solutions, but maybe somebody can comment on their use in this situation.
To organize the files, I'd keep a library of parts saved in a common location. When you create a custom product, make a new folder and save the unique parts, and the assembly and drawing files for it in the new folder.
If you are using a common part, use the one in the main library. If you decide to customize a common part for the new assembly, save the part off with a new name, and store it in the assembly folder.
Two additional factors to consider:
What will be your file naming convention for all parts, assemblies and drawings?
What will be your revision tracking process for all parts, assemblies and drawings.
This week I made several complex assemblies whose parts varied. I modeled several bodies in the same part and then I inserted them into a new part one by one and they become pieces that can be "edited in the context" at any time I do not model In this basic part, all the components of my future assembly, only those that will be manufactured by us, or I can model 2 or 3 base parts to insert dozens of parts into a sub-assembly. The final assembly contains parts which each have their own context and which will each have a drawing + sub-assemblies (such as the structure for example) that can be treated separately in a drawing. Large assembly I make a drawing with a page of an exploded with nomenclature, another page with details and general descriptions, which defines the parts and sub-assemblies that will be the object of a manufacturing drawing. When I have another project similar, I copy the base parts under another name and another file. I modify them and I start the process of recording piece by piece. All I have to do is create more subassemblies and another large assembly. It is better to avoid making configurations for the parts you will have to make. The configurations are interesting for the library parts and you have to know that it stunned the files. Already, that the pieces have different "display states" is already a lot.
I do not like to leave an important piece outside a folder in a library. I make a copy of this part but only with the configuration that interests me, and saving in the same folder as the others with my subassemblies and large assemblies. At any time I can save the complete file with a "USB drive" on a USB key without fear of missing parts. Unless I use software like Team Viewer to access the library, I like to keep all the parts in the same folder.