Fabrication Custom Data Methods

I’m trying to access the custom data options and values within Revit fabrication parts. I can’t seem to find any nodes accessing these fields but I can find them within the API doc.

http://www.revitapidocs.com/2018.1/9e1165f6-5f6e-8280-8395-22ab98df3aab.htm

http://www.revitapidocs.com/2018.1/4f9b2836-c05d-0b69-2329-d844f3e7bcbe.htm

I’m trying to write my own node to access the information in the parts but I don’t have the python experience to get them to work. I’ve tried to modify existing nodes in the DynaFabrication and Fabrication API packages with no success. I’m sick of seeing “null”. Can anybody help me out here or point me in the right direction. As a CAD guy for a contractor I feel like I just jumped down a huge rabbit hole and feel like a lost kitten right now.

Can you upload a model for others to test on, what methods you have tried, and a screenshot showing what parameters you’re after in the parameters pallet?

Here is a drop box link with that information.

The revit file is a 2018 file with only a pipe and some hangers that I’m trying to pull data out of. The element to parameters .dyn file is a script we have working to extract other parameters out of the pipe and hangers. The hangers .dyn file is the script I’ve been tinkering with to try and get hanger drop rod size out of the hangers. That’s the end goal here, get hanger drop rod size into revit somehow.

The big issue is that it is not a native revit parameter, the fabrication parts are .ITM files that are built based of the fabrication product suite database (CAMDuct, FabricationCAD, ESTmep, etc). I attached a screen capture of the “options” fields I am trying to get out of the script. I believe the two methods I linked above are the key to getting this data out, but I can’t get them to work by modifying nodes written by others and I don’t know the correct way to write it from scratch. I think it is because the packaged nodes I’m working with use different syntax like double when getting the data, whereas the methods I’m trying to use, use IList< string > and to be honest I don’t really know what that means I have to do differently.

I know the data is in there somewhere because Revit knows what size to draw the hanger rods based off the pipe size and service that is pre-programed into the fabrication database, but I cant for the life of me extract that information into useable data within dynamo. Once it is in dynamo I can take off from there and manipulate the lists etc. to do what I need, I just need help getting the information out of the API.

Any help you can provide would be great!

1 Like

working on something similar here.