Filtering System names and applying a value to a parameter

I have tried writing a dynamo script that filters out all the duct systems and selects all of the systems with the name SA (supply air). i then want to take this list and apply a value to a parameter called Uniclass_Systems_2015, but only for the systems containing SA. My script doesn’t seem to work and i was hoping someone could give me some advice?

try:

connect output of all ellements of category in to input list.filter boolmask

1 Like

Ah yes Nico is right :slight_smile:
Also you could remove the list.create and the list.getitematindex node and just plug the ‘in’ port of the FilterByBoolMask straight into the setparameter node

1 Like

i think list create is not unnecessary
you can remove that node i think

This time T_pover was faster:smiley:

thanks, i tried that out and it doesn’t error, however it also doesn’t push anything into the parameter in revit?

I think you need to plug the “all elements of category” directly to the first ListFilterByBookMask
It should work.

what kind of parameter storage type is uniclass… ?
is it realy a string or number or id?

so Uniclass_Systems_2015 is a project parameter we have set up and it will be populated by a code containing letters and numbers.

Hi Ahmad, thanks i tried your solution and it does work, however it applies the value to all the systems and i only want it to apply to one specific system type.

connect the nodes:

parameter.storagetype
in to
parameter.parameterbyname

in to
element set parameter by name

so you can check what kind of storage type the parameter is

are those nodes from a certain package or pre-built into dynamo?

pre built in

its a string

oke
youre input in element.SetparameterbyName is Right

you can try save and close dynamo and restart dynamo and run again

ok thanks, i’ll give it a go!

could you upload a new image?

that works perfectly, thank you!

you’re welcome

ps

mark this topic as solved