Place elements onto worksets

Hi, I’ve done a lot of searching, and couldn’t find any answers, so I made a very sad attempt of my own.

I am trying to simply place ALL reference planes onto a specific workset. Revit doesn’t allow you to “select all” for reference planes. This is what I have so far, and I’m hoping to get some help on why it’s not actually placing all the reference planes onto the workset named “reference planes”. I really suck at dynamo hahah. Ideas?

Have you tried Changing Lacing to Longest

You could simply miss a node called Workset.Id, see here:

Note that the search tool returns only 3 results when typing “Element.SetWorkset”…

Hi, the lacing didn’t do anything :frowning:

Ya this was the first thread I found, and I did try the Workset.Id node at the time, but it doesn’t seem to do anything. The reference planes in my project are still all on different worksets…

Hmm, this is an interesting one. Getting the same error, but also the parameter appears as read-only.


Python scrypt from How to set worksets without using packages thanks @Nick_Boyts

Alternative workflow shown is to dump the reference planes into a selection set and change them all once through the Revit GUI. :face_with_raised_eyebrow:

1 Like

Sucess! :smiley:
Just had to match the correct number of inputs… dont know why this would cause a read only though?

Does this work for you @Melonie_Beskowiney?


Thanks all! I actually had some help from someone outside of the forum (thanks, Nick!), and it works without any packages or python script:


I’m here! You’re welcome!


1 Like

The Element.SetWorkset node will work with Document.Worksets from the same package…

Hi Nick,
Thanks for sharing your knowledge. I tried this script to change workset of reference plane but I can see that it completed with some warnings. It says that the workset of some reference planes are readonly and gives null results. I tried to identify those reference planes in the model using the element ID but couldn’t find them. Do you (or someone) know the reason for this?
Thanks in advance:)

Hi Jay, this is because you likely have some reference planes in a drafting or legend view. This is why the script is so brilliant, because Revit doesn’t allow you to “select all” when you have both in your model. The reference planes will all switch, except for those in the 2D views. This is one of those rare moments that you can ignore the warning (or edit the script to ignore the warning). You can test this out by creating a new project from the default Revit template, and draw 3 reference planes. Draw 2 in a floor plan, place one on workset1, the other on the shared levels and grids workset. Place the 3rd in a drafting view. Run the script (tell it to place everything on one of those 2 worksets, or a totally different workset), and you should have the result of the 2 reference planes in the floor plan being on the right workset, and 1 error.

1 Like

Thanks for the explanation Melonie.
Out of curiosity to find the workset of those reference plane with warnings, I added few more nodes and a python script (sourced from other forum). Hope this could could be helpful for somebody!!!Finalworset

I got some additional information regarding this topic:raising_hand_man:

During my trials of this script I found that the reference planes in model groups and array groups also returned null as result and dynamo fails to over write the workset for them.

Now am unable to identify the group in which these reference planes are in the model.

Any suggestions to over write these reference planes?

Thanks in advance.