Hello again @Mark.Ackerley - Yeah its a bit nasty alright, and knowledge on listing has failed me before - if you or anyone else in the forum has any suggestions on how to make it more efficient, I’d be very much open to it
I’m listing out COBie Parameters, and placing them in specific rows on an excel that I would like to use to edit, manage etc. then push back into Revit.
Maybe I should note that this is the export list - hence its structure in a specific order as it populates a very specific colour coded excel, I was planning to use UniqueId or ElementId to match and map back in from excel, but haven’t got to look at that just yet.
thinking ahead this might help you later in the process
the uniqueId values can come from excel
to get it from elements (beit type or instance) use Element.UniqueId
to get to elements use Revit.ElementSelector.ByUniqueId(Id, true)
I have changed the title this thread to “Automating COBie-UK 2012”. I’ll keep posting my amendments, and updates I make, in this thread for all to follow, and I’ll add a bunch of annotation to explain the rationale behind the decisions I’m making in the graph, feel free to chip in if you’re familiar with COBie.
I can share my experience of COBie so far (one of my best decisions was to do a course last year with two of the authors of the recent Delivering COBie Using Autodesk Revit) as I was managing delivery for a large scheme, with 5 buildings.
Got a similarly sized scheme (by floor area) but split into 14 buildings, and would naturally like to automate as much as possible.
I’ll give Richie, one of the authors on the book a call as he’s from an MEP background, and see if he can help out, we can expand this to look at systems and spaces for MEP too, which I’ve not looked at practically (only in theory) as I am from an Architectural background.
try lacing on the elementgetparametervaluebyname set to longest (not sure here)
you’ll need more inputs on the list create node too, the same amount as the parameters.
if that doesn’t work you might want to go back to the spirograph so the lists for every column in excel will be made (even when empty)
you’re getting the hang of it
looks OK to me
now fill in the missing data in excel
keep in mind that the data source (the elements) has its own order
to keep that order always use the same source gathering your data
in other words the transpose node should be used only once so id’s and values are on the same row in excel
ermmm why aren’t you lacing the element.GetParameterValueByName by cross product? (right click that node, go to lacing, choose cross product. … that will change the bottom right value to xxx instead of auto.) no need for using levels @L1 … and no need to transpose the list …
Literally just learned about this, still don’t fully understand, but am reading up on it
“Cross Product Lacing connects each item in one list to all items in the other list. Be careful when using this setting. Large datasets can cause performance issues and cause Dynamo to crash altogether. The number of results is the number of inputs squared”
I’ll keep an eye on this, as COBie.Component can easily get into the high thousands on larger jobs. Not sure if that is considered a “large dataset”.
Can we make it a bit cleaner? Can we refactor to remove these nodes?