Dynamic Component mixing attributes with other components

Base3D.skp (84.1 KB)
Base1D.skp (61.8 KB)
Hi, I created several Dynamic Components for cabinetry. When I created each one, they all work great independently. I can save them into my Library, pull them into the models, change the attributes, etc.

BUT, when I pull in more thank one into the same model, parts of the attributes are changed to the other models. Each component has a unique name (Base 2D, Base 3D, etc)

Example: in the Door Size for “Cab2D” its showing reference to “Cab3D” - “Base3D!Height-Base3D”, instead of “Base2D!Height-Base2D” which works when its by itself?

Any ideas what I’m doing wrong? Thank you!!

You can use parent! instead of Base3D!
however if the formulas are different and they are overwriting then you have a copied sub-component that has not be made unique before changing. This often happens when reuse in separate files and then they interfere when brought into the same.

Can you upload some in question, then perhaps can figure the quickest fix (Private message?)

OK, thank you so much for responding. I put the 2 files in question on my original question, if you wouldn’t mine taking a look at them. I think that’s what I did. I created Base1D file, did all the parameters, etc, then Saved to Components. Then, I took that file, made changes to it, changed the name to Base3D and saved it. So, inside those, these are still linked and why they are mixing up with the other component? How do I make it unique without exploding and recreating all the parameters all over again? Thank you!!

YOu have to make all instances of all components inside the new DC unique… renaming the top level is not enough… I will often even explode geometry and make a totally new component to prevent issues like this.

There is also an extension out there that allows you to select a group of components and make all of them unique at once… maybe it was Make All Unique or something?

OK, so if I rename ALL the lower components inside the parent (IE: from LtDoor to “LtDoor_Cab1D” and “LtDoor_Cab3D” for example, that will fix the problem? Seems crazy you have to have everything unique, but whatever works. The extension doesn’t work with the new SU. No one has one since 2013 - wow! Thank you!

Renaming is not the issue… the issue is breaking the connection of that component from the rest of the copies. Right now, if you copied a component from another DC, it is still the same component. Each component has to be made unique (right click and choose Make Unique). Changing the name does not make the copy unique, it simply renames all of the components, and possibly breaks other DCs.

I went through and replace the references with the generic parent for Base1D, if there any formula that does not work, in that parent! does not fix, then make that sub unique
kitty.skp (120.0 KB)

OK, I tried renaming - I see what you mean. So, how do I make unique? I clicked on the part and its grayed out? Do I have to explode the parent component, and redo ALL the parameters from scratch?

please try the parent! trick first

I downloaded your version… I see “Parent” everywhere in the Childs… but when I copy it over to one with other models, it renames all the child components something else… see attached

I only did the parent on Base1D, you need to make change “Base3D” to “parent”, type one first
. select that word then control c, to copy, then go all the Base3D references, double click the next base3d, then control v to paste

you can use control f to find any you may have missed (pity there is no replace)

there is a base2d, if any others fix with parent before the interaction

basically the parent! allows a formula to work on different named parents, provided the function of the formula is the same, if there is a difference then you will have make the problem child unique and fix it

I tired that one too - it still changes the reference to the child parts and renames them and disconnects?

in depends on the order of insertion, if D1 was in a file, D2 would change (overwrite) basically change them all or find the subs that has the problem, in that they are not unique, and change them to parent

I tried the Make Deep Unique extension - didn’t seem to do anything. I guess I need to build them all from scratch and start over. Hours of time… thanks for the help - I’m just over my head I guess.

I guess I’m still confused. Even if I build it over from scratch, I can’t use that model to make another one? I have to start fresh with each one? I don’t know how to make each part Unique after I already build one cabinet?

Can I select the Parent component, double-click (so its all grey), select ALL, then say Make Unique to ALL the parts in there? Then, change all the reference to “parent!” in all the child parts? Will that work?

Then, do that for each cabinet(component)? Thx

Rather than trying to find the copied components, best to go through as use parent
You do not have to make all unique, but after doing the parent thing, you bring all the cabinets together, there maybe a copied component where you changed the formula, like for one you originally wrote (now has parent) Parent!lenx +5, whereas its copy you change that to Parent!leny -6. then that will be a problem for one of them when you bring into the model, one would overwrite the other, The unique option would be available, Then you make it unique and correct the formula.

I think I tried that - I made all references to “parent” and it still changes it when I copy it into another file with others? I know its me, I just don’t get it. I tried unique, changing names, changing the definition. Same thing each time. I guess I don’t understand what you mean use as parent?

Also, I saved these into my “components” folder… even though I haven’t loaded the old ones in a file, could that be still messing with them?

There must other influences in the file that’s over-ridding parent, I need to sleep now, 1,47 am, if you private message the files or email