Make Products in Assembly unique


is there a smart way to make all products in an assembly unique?

I’m just able to solve this with itsy bitsy python scripty.

Thx & Regards

What do you mean with unique?

Hy @TSy,


Thx & Regards

OK, so you want to make the components of product instances in a PM assembly product instance unique, i.e. have some assembly instance at simulation runtime and make the dynamic components unique so their nodes don’t share feature trees anymore.

I don’t really see why you would need to do such a thing, and it probably can only be done with scripting.

Hy @TSy,

Jes that’s exactly my target!

I have my reasons… :wink:
I actually do this with scripting successfully!
I open this discussion because I try to find a clean way without scripting…

In PM-Product menue (when rightclick on assembly) there is such unique-button but it seems that has no effect on the different products in the assembly… :frowning:


Thx & Regards

Those in the Product Type Editor are Product Types, not product instances so changing them is not the same as changing the product instances which get created from the product types during simulation.

The “make unique” command for Product Types is also completely different than what you have for components during modeling. Product Types don’t rely on unique names, but have an internal GUID id instead which defines its identity.
The Product Type id is also used in merging Product Types when you add a layout to an existing layout, or add a feeder component to a layout which comes with its own Product Types. Product Types with same ids are not duplicated but either replaced or not from the loaded layout / component.

So, “make unique” just assigns a new randomly-generated id to the Product Type so it will considered different from any other Product Type ever created anywhere.

If you are using “same component” as the template component in multiple Product Types, those might share features trees even though the template component is always copied into the Product Type when assigned. To make these template components unique you would need to first create unique components and then re-assign them into the Product Types. You can’t get the component out from the Product Type either once assigned, so you need to have the components somewhere else and then replace them in the Product Types.

Anyway, I think making dynamic components (those created during simulation) unique is slow and hacky, and shouldn’t be necessary except in some special cases. Doing that for components of product instances is even hackier.

Ok I unterstand.

I think I’ll stay by my solution with Python!

Thx & Regards