Removing shared parameter from each family in a Revit project

Removing shared parameter from each family in a Revit project

vitalij.marcukov2BP2F
Advocate Advocate
726 Views
9 Replies
Message 1 of 10

Removing shared parameter from each family in a Revit project

vitalij.marcukov2BP2F
Advocate
Advocate

Our families contain shared parameters. We may or may not need them (depends if client wants those). I am thinking of creating a script that edits each family to remove those parameters (RemoveParameter method) when those are not needed and we can run the script on a detached from central model. but have a feeling it's a time consuming process. Is there some sort of a batch-process that can speed it up? Please advise. 

Thank you for your time and I look forward to hearing from you.

0 Likes
727 Views
9 Replies
Replies (9)
Message 2 of 10

TripleM-Dev.net
Advisor
Advisor

Hi @vitalij.marcukov2BP2F ,

 

Short answer, nope. Family needs to be opened -> Shared parameter(s) delete -> family reloaded into project -> Repeat.

So depends on size of family how long the reloading into the project takes and how many families contain those parameters.

 

I have to ask; Can those parameter be safely removed, they don't drive geometry or used in formula etc...??

If so why even bother having them in the family?

I'm guessing it's some text parameter containing some project/product info that is applied to almost all families in certain categories?

 

In that case make the template/project so the shared parameters are project parameters attached to the necessary categories, en does assure it doesn't drive anything. And to clean it, just delete the parameters from the project.

 

In our template generic parameters are on the project level, and only exist in the family itself if necessary for the family operation/functionality

 

- Michel

0 Likes
Message 3 of 10

vitalij.marcukov2BP2F
Advocate
Advocate

We use an add-in to store the families on cloud and bring families when needed into a project. It's convenient. Storing all families in a template is not that efficient I guess. Thanks for the reply anyway.

0 Likes
Message 5 of 10

TripleM-Dev.net
Advisor
Advisor

Hi @vitalij.marcukov2BP2F ,

 

I assumed it were families already in use in a Project.

If they are edited BEFORE they are added into a project, the only time used is the opening > edit > saving.

To increase the load, spread it over multiple sessions; so split the list of families to edit into 2 or more and process them in seperate Revit Sessions (as many as the system can handle)

 

Still curious, are those free-to-delete parameters?

0 Likes
Message 6 of 10

vitalij.marcukov2BP2F
Advocate
Advocate

Thank you for the reply @TripleM-Dev.net . Yes, those are just text shared parameters. 

 

So the way to achieve it is to open, edit and save families. Can you please elaborate on this bit - 'spread it over multiple sessions'? 

0 Likes
Message 7 of 10

TripleM-Dev.net
Advisor
Advisor

Hi @vitalij.marcukov2BP2F ,

 

With multiple session I literally mean opening up Revit x-times (= x sessions) and process the families spread over them.

 

So depending how the families are accessed/stored (Through file explorer or a database) split the list of families up in x-lists and process each list in a seperate Revit Session.

 

If the list is split up in 3 parts, the processing of the families would be about 3x as fast (will actually be some lower)

The key is how to split up the list of families, just by the amount of families or take their size into consideration.

So if all families combined are 1Gb, start placing families in a list until it reaches 333Mb, then start the next list.

 

Or build a system with a shared list (database or so) among the sessions and if a family is going to be processed by a Revit session mark it as busy, and the other session takes the next available family etc..

 

The x-times a Revit session can run and process families depends on the system.

I assume with current multi-core systems a minimum of 3 session would be possible, maybe even more (depending other software running)

0 Likes
Message 8 of 10

vitalij.marcukov2BP2F
Advocate
Advocate

Thank you. I will start doing / testing the script shorty. Will provide a feedback. 

0 Likes
Message 9 of 10

pratibha_rao
Community Visitor
Community Visitor

how we can remove a group of parameters from a nested families, in a family

0 Likes
Message 10 of 10

TripleM-Dev.net
Advisor
Advisor

Only way is to open nested family in family editor and reload in the family.

0 Likes