I use SolidWorks to do P&IDs (I know it's not made for that, but we deal with it).
To do this, I created a library of components in the form of blocks in a drawing.
On the other hand, I would like to know if from these saved blocks, I can create a nomenclature automatically. For the moment, I do it manually but if it can be done by itself, I might as well take advantage of it.
I don't think you can make a block nomenclature in a drawing.
On the other hand, you could create sldprt from your blocks, assemble them into a sldasm by drawing the beams at that level, and then insert this assembly into your slddrw. From there, you would easily have a bill of materials.
I was writing a response along the same lines as Benoit. I do think that you need to create parts by associating the properties to be extracted for the assembly BOM.
Benoit, I proposed this solution, but we don't keep the possibility of being able to move the geometries on the drawing. You have to do it only on the assembly, which is not always practical. In addition, the links between the components on the drawing should be created. I tried this trick.
Bart, you're talking to me about SolidWorkx electrical, I guess it's a utility in sup?
That's what it seemed to me jmsavoyat. Sketch blocks, even if saved under a name, are not considered components, but only sketches. Too bad... Thank you anyway.
This is not an add-on but a full-fledged software that integrates with SolidWorks. More info here: http://www.solidworks.fr/sw/products/electrical-design/solidworks-electrical.htm
But to do this, you must acquire a license identical to that of SolidWorks, for an equivalent budget.
We had tried to make our diagrams on SW. But it seemed inconvenient to us.
For your information, we make our electrical diagrams on Visio. More info here: https://products.office.com/fr-fr/visio/flowchart-software
@sebastien, As for the practical side, the ideal is to make a false background to insert into the assembly, so that when you place the components you know that you are well "framed". Once in the real drawing (slddrw), we hide this false background.
What do you mean by "creating the links between the components on the drawing"? The strings? If that's right, I'd trace them on a sketch in the assembly. That way, the constraints are well guarded if you move the elements.
So with this solution, the drawing is only used to insert the block!
I think there would be no need for a frame on the assembly, it would be enough to scale directly on the drawing.
When I talk about creating the links between the components, it's the piping that is represented by a line quite simply. If I draw them on a sketch in the assembly, when drawing, it doesn't show up. But I had the same idea too.
What do you mean, it doesn't appear? An assembly sketch can be displayed in a drawing. I just tried it out, it works. Maybe it's a question of setting up your models. You should try to force the display of the sketch by a "Show" on the sketch in the tree.
Or check in Display that "Hide all types" is unchecked and "Sketch" checked.
Edit: see "3D sketch" checked, in case you trace in a 3D sketch.