License Delivery maintenance is expected to occur on Saturday, November 30, between 8 AM and 11 AM CET. This may cause a short 3-hours outage in which license-related tasks: license key upload, download, update, SSA validation, access to the license pool and Graphisoft ID authentication may not function properly. We apologize for any inconvenience.
Libraries & objects
About Archicad and BIMcloud libraries, their management and migration, objects and other library parts, etc.

Copying elements from another file without materials, fills, linetypes etc.

Anonymous
Not applicable
Hi,
I've got a problem with copying stuff from my old AC files.
I have finally sorted out my template and in the template I have renamed or reordered all materials, surfaces and so on. When I work on a project, sometimes I have to copy something from my old project. For instance that could be an object or a wall with geometry. It works great because AC allows to paste it in the same place. My problem is that when I copy from another file, a pre-template project, predefined project settings such as surfaces, composites or linetypes merge with the new file.

Is there any way to prevent that?

I would like it to use those already defined in a template and I don't mind if they're "missing" and I have to change them. I know that I can delete all settings in the source file (make it blank), but it takes a bit of time each time.
6 REPLIES 6
Barry Kelly
Moderator
Riczmond wrote:
I know that I can delete all settings in the source file (make it blank), but it takes a bit of time each time.
That was going to be my suggestion.
Otherwise if an attribute doesn't exist (attributes are controlled by their index number not their name) it will be created when you copy something in.
If the attribute does exist (index number) it should not get replaced, but you may find the attribute will change in what you copy in (i.e. might have been face brick surface but ends up as red paint when copied across because they are different surfaces with the same attribute index number).

Or you just accept all the new (old) attributes, then in the attribute settings dialogue you can delete and replace with the correct ones.

As far as I know there is no way to copy something across from one file to another while ignoring the attributes.

Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Karl Griffith
Booster
I wonder if you could hotlink those elements into the new file, then break the link. As I understand it, the hotlink won't bring in the attributes. I don't know if they will come in when the link is broken though.
ArchiCAD 22

Win 10
Laszlo Nagy
Community Admin
Community Admin
You could try to save the old Project File as a Module (*.MOD) file. MOD files contain only references to attributes but not the definition of attributes themselves. So if you then place that MOD file as a Hotlinked Module, it should not bring any attributes with it. Then you can just break the link to the Hotlinked Module and incorporate it into your new file.
I think it should work that way.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac27
Barry Kelly
Moderator
LaszloNagy wrote:
You could try to save the old Project File as a Module (*.MOD) file. MOD files contain only references to attributes but not the definition of attributes themselves.
I am not so sure that it does not contain the actual attribute as well.
In the reference guide it says this ...
A .mod file refers only to attributes actually used by their elements. Thus, a .mod file is much
smaller than a .pln file
But I have always understood this to mean that it will 'contain' only the attributes that have been used.
I am sure it will still create these attributes if they do not exist in the file the .MOD is being added to.

Barry.
One of the forum moderators.
Versions 6.5 to 27
i7-10700 @ 2.9Ghz, 32GB ram, GeForce RTX 2060 (6GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11
Erwin Edel
Rockstar
Going from memory, back when I did not have 'module workspace' inside my projects, while the module doesn't officially contain something like a complex profile, it will create this in a pln if it was not present there. However, if you then change this complex profile in the module or some other PLN, you will have to adjust it by using attribute manager.

I do not have an elegant solution for the described problem. We faced this years ago (ArchiCAD10/11 days), when we were just starting to work on a good template and 'stupidly' changed some things from the base template to suit our needs. Around ArchiCAD14 we gave up with having to constantly change the base template on new release to keep 'legacy' copying in place and just added our custom office stuff to the base template (instead of modifying what is there), this made new ArchiCAD version transitions smoother. It also meant we made somewhat of a clean cut and just re-created and re-modeled elements we would want to copy. We still finish running projects on older versions of ArchiCAD if the update impacts the attributes (16 to 17 for example or even 17 to 18 when the surfaces got changed).

These days you could do this: create a new emtpy PLN based on your template. Paste the items you want to copy into the empty PLN. Delete the newly created attributes from the pasting and replace them with the things from your new template. Once you've done this, copy the elements over from the temporary empty file to your project.
Erwin Edel, Project Lead, Leloup Architecten
www.leloup.nl

ArchiCAD 9-26NED FULL
Windows 10 Pro
Adobe Design Premium CS5
Laszlo Nagy
Community Admin
Community Admin
Barry wrote:
LaszloNagy wrote:
You could try to save the old Project File as a Module (*.MOD) file. MOD files contain only references to attributes but not the definition of attributes themselves.
I am not so sure that it does not contain the actual attribute as well.
In the reference guide it says this ...
A .mod file refers only to attributes actually used by their elements. Thus, a .mod file is much
smaller than a .pln file
But I have always understood this to mean that it will 'contain' only the attributes that have been used.
I am sure it will still create these attributes if they do not exist in the file the .MOD is being added to.

Barry.
Hi Barry,

I did some tests and you are right.
So, here is what I found and what could be a solution to the original question.

1. A Module contains the definition of attributes it is actually using. Just as PLN files, MOD files refer to and identify attributes by their index number. This index number can be seen for attributes in the Attribute Manager.
2. When you merge a Module into a Project File, one of 2 things can happen.
A) The attribute with the same index number already exists in the Project File the MOD file is merged into. In such a case the attribute definition with that index number is not used from the MOD file. It will use the definition of the attribute with the same index number existing in the host file. In such a case, after merging the MOD file, elements in it may not look the same as they looked in the original file the MOD was saved from.
B) The attribute with the same index number DOES NOT exist in the Project File the MOD file is merged into. In such a case the attribute definition with that index number WILL BE USED from the MOD file and the attribute with the index number will be created in the host file. In such a case, after merging the MOD file, elements WILL look the same as they looked in the original file the MOD was saved from.

From the above the solution to the original question is to make sure that you will have attributes in the host file with the index numbers stored in the MOD file. Just create enough attributes in the host file that all index numbers referred to by the MOD file are already taken. In that case the MOD file will not create any new attributes, but instead use the attributes defined in the host file.
This way you will not need to clean up attributes brought in by the MOD file. However, you will still need to go over the merged elements and make sure that they are set to the proper attributes. But that is probably not a very large task compared to the possible attribute spam.

Based on my tests, this is the way it works not only in case of merging a MOD file, but also in case you copy element from another project and paste them into your host project.
Loving Archicad since 1995 - Find Archicad Tips at x.com/laszlonagy
AMD Ryzen9 5900X CPU, 64 GB RAM 3600 MHz, Nvidia GTX 1060 6GB, 500 GB NVMe SSD
2x28" (2560x1440), Windows 10 PRO ENG, Ac20-Ac27