I know that an assembly must contain the references to parts it contains, but do those parts also contain 'back references' to the assemblies which contain it?
Generally speaking, No.
If, however, you have "in context" features in the part, it will reference the assembly in wich those features were made.
We don't do the 'in context' thing so I guess the answer is no. That's good.
The reason I was asking is that we use file protections to 'lock down' released parts and drawings and there's concern that if that part is then used in a further assembly, it may fail if, for some reason, the part needs to be updated to include a 'back reference' to the assembly that uses it. That would create a very sticky situation, and I'm pleased that we don't have to worry about it.
I think you are still in the dark and liable to get into trouble down the line. You should read up on Propagation, Association and Derivation.
With any ECN system, you need to find where the part being changed is used, whether using SWEx or your ERP system is up to you. From there you need to evaluate the change to see how it affects every assembly where it is used. Generally speaking, you only really need to evaluate within released assemblies; anyone working with that released part should ideally be notified about the change, but they'll find out eventually when the new part is loaded into their new assembly. Bear in mind that if you delete (for example) a hole from that changing part, mates in the assemblies will fail because the mate reference is gone.
So, you can't just blindly not worry about it. You do need to keep in mind that changes made to the part could still create a sticky situation.
The locking down part is good tho. You definitely don't want someone changing a released part.
you could do a where used on a specific part if running PDMWorks
BUT, SWExplorer can find where used as can any competent PDM system. There is also an API that can do this.
It sounds like what you are talking about when it comes to parts to their assemblies
is if you look in Solidworks Explorer what is called "Where Used". Parts have those
references back to the assemblies.
No, they do not. SW explorer finds those "where used" by searching through all of the files in the folders it is set up to search and seeing which ones reference the selected file. if the data were stored in the part, it wouldn't take so dang long.
Retrieving data ...