Simple List Lacing Problem for Setting Parameters

Hi All–

I tried posting this issue but think what I was asking was too convoluted. The problem is simplified here. I think it’s a simple lacing problem for someone who is experienced with Dynamo.

I have two lists of sublists. A set of areas for one list, and a set of strings for the second list. I want to set the strings as a text parameter for each of the areas as is shown in my (poorly drawn) lacing diagram in the screenshot. Basically both items in “Sublist 0” would receive the one item from “Sublist 0”

It feels like there is a simple solution to this problem but I am still very new to Dynamo and working on a pretty basic set of knowledge.

This is the closest I get by setting the “Element.SetParameterByName” to “longest lacing”:

Thanks in advance for any help and let me know if you need more information! Thanks all.

It’s not a lacing problem but a list@level. Lacing only matters if the two lists are different length, this is not the case here, you have 5 items in both of the lists.

Read more about list@level: https://primer.dynamobim.org/06_Designing-with-Lists/6-3_lists-of-lists.html#listlevel

You don’t need the String.Join node, nor the transpose. This should work with correct levels:

Set both of the inputs to ‘Use levels’ and set the level to level one, similarly to this:

1 Like

Thanks so much for you reply, I appreciate you taking the time to help me out here. I understand your solution, however, I concatenated the list of strings on purpose so that the field for a specific Unit Type in Revit will list all of the unit #'s associated with that unit type. So, the lists actually are uneven.

For example the “Unit Numbers” parameter I am trying to set for Unit A.1 should read “#101, #102”.

Hope that clarifies things…

Thanks!

The problem here is your list structure. You have a @L3 list of elements and a @L3 list of values. Because both inputs have the same structure, Dynamo assumes they’re all matched up. You want a single (@L2) list of values, so that each value is lined up with each sublist of elements.

1 Like

Nick–

Thanks a ton, that worked! I knew it was something simple I was missing. This is great to know for other scripting moving forward too.