Revit API Forum
Welcome to Autodesk’s Revit API Forums. Share your knowledge, ask questions, and explore popular Revit API topics.
cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Including non-schedulable system families instance parameters into schedules

11 REPLIES 11
Reply
Message 1 of 12
matrena
977 Views, 11 Replies

Including non-schedulable system families instance parameters into schedules

Hello,

 

To come around the issue of not been able to include some system families element’s instance parameters into a schedule (like floors “Thickness”) I need to create a Macro that “goes through” all the model’s floors one by one, getting the desired instance parameter value and copping it into an auxiliary project or shared parameter (includable in a schedule) that I created (like "Floor_Thickness_Sch" or something similar...). Please take note that I don’t want to use this for tagging, what I really need is a way of showing the floor’s thickness in a schedule.

 

Since I’m new to Revit programming I would like to request the experts help for writing this piece of code.

 

Assuming the auxiliary instance parameter is already created and available in the floors (instance) properties, I think the structure of the macro should look something like this:

 

1 – Find the “first” floor’s ID

2 – Read and store the value of the desired instance parameter (in this case the “Thickness” instance parameter) for the floor identified in the step 1 or 4 (depending on if this is or not the first cycle’s run);

3 – Paste the value into the auxiliary instance parameter ("Floor_Thickness_Sch") of the current floor;

4 – Move on identifying the “next” floor’s ID and perform tasks 2 to 4 until there are no more floors left in the project

 

I know a little about VB programming (and almost nothing of the other languages available for Revit API), so, ideas in VB would be very helpful.

 

Thanks a lot!

11 REPLIES 11
Message 2 of 12
Zsolt.Varga
in reply to: matrena

Hi, 

 

You find a Dynamo solution with downloadable scripts for this on the German DynamoBIM blog here: 

http://dynamobim.de/blog/parameter-kopieren/

 

I have just translated the description of the steps documented in the German blog post for you as follows. 

 

Room height label (or any other instance parameters) - The prerequisite for this script is a shared parameter in your Revit file that is assigned to the category "room":
- picture in the blogpost - 
You can choose the name of the parameter, as you wish, it is only important that you specify it, minding capital letters in the Dynamo script:
- picture in the blogpost - 
Dynamo takes care about the rest for you - if you leave the Dynamo window with the script in the background open and select the automatic execution, the values ​​will be updated with each change.
- picture in the blogpost - 
The room height parameter is a shared parameter that you can select now for the tag family. 

- picture in the blogpost - 
Wall thickness label (or access any type parameters)

On the way described earlier, you can read all the copy parameters - in case of type parameters you will need to change the script a little:
- picture in the blogpost - 
The conditions here are the same as with the previous example; So you need a shared parameter in which the determined value should be written.

 

I hope this information was helpful. 

Please hit the Accept as Solution button if my post fully solves your issue or answers your question. You can also give Kudos for helpful posts.

 

Best regards,



Zsolt Varga
Technical Support Specialist
Autodesk, Inc.

Revit Ideas | Screencast | Revit Help | AKN

Message 3 of 12
jeremytammik
in reply to: matrena

Dear Zsolt,

 

Thank you very much for your interesting and comprehensive answer!

 

It fits in very well with my discussion yesterday of the pyRevit RevitPythonShell library:

 

http://thebuildingcoder.typepad.com/blog/2016/04/the-pyrevit-ironpython-script-library.html

 

Dear Matrena,

 

Thank you for your query.

 

'Request' is a rather harsh word in English... a softer way of putting things might be 'appreciate some assistance' 🙂

 

If you really insist on someone else doing the work for you, you can always contact Autodesk Consulting and ask them for a quote.

 

If you are interested in addressing this yourself, please refer to the Revit API getting started material; I suggest working through the DevTV and My First Revit Plugin tutorials first of all:

 

http://thebuildingcoder.typepad.com/blog/about-the-author.html#2

 

The easiest way to get going with the Revit API without installing an external development environment is to implement and play with macros using the built-in SharpDevelop IDE (integrated development environment).

 

I hope this helps.

 

Best regards,

 

Jeremy



Jeremy Tammik
Developer Technical Services
Autodesk Developer Network, ADN Open
The Building Coder

Message 4 of 12
p.grezzi
in reply to: Zsolt.Varga

Hi,

this page does not exist.

Where can i find downloadable scripts for Dynamo?

thanks

Message 5 of 12
jeremytammik
in reply to: p.grezzi
Message 6 of 12
p.grezzi
in reply to: Zsolt.Varga

Hi,

this page does not exist.

Where can i find downloadable scripts for Dynamo?

thanks

 
Message 7 of 12
Zsolt.Varga
in reply to: p.grezzi

Hi @p.grezzi,

 

Indeed the link got outdated or the script I was referring to got moved. 

 

Here you can find packages for Dynamo: 

https://www.dynamopackages.com/

 

You can also find a collection of useful links (for customers with German language) here:

http://bimblog.typepad.com/autodesk_bim_blog/2015/07/dynamo-linkliste.html

 

...and here: 

http://blogs.autodesk.com/bimblog/category/dynamo

 

I hope that helps. 

Please, don´t forget to mark this as accepted solution if it does 😉

 

Best regards, 



Zsolt Varga
Technical Support Specialist
Autodesk, Inc.

Revit Ideas | Screencast | Revit Help | AKN

Message 8 of 12
MichaelWolff
in reply to: matrena

I admit I share @matrena 's attitude towards Autodesk having users fit out the software with missing functionality. I now chose this way and wanted to adopt the dynamo script shared by @Zsolt.Varga only to find that link no longer exists. I will now try to figure out which of the scripts  might fill the gap as Zsolt's second comment does not directly link to an updated version of the earlier script.

Message 9 of 12
MichaelWolff
in reply to: p.grezzi

Hi @p.grezzi, do you by any chance remember whether you found the appropriate dynamo script in the links shared by Zsolt Varga at the time?
Message 10 of 12

Dear Michael,

  

I searched the German Dynamo forum for 'parameter kopieren' as suggested above, and found the following updated link:

  

https://blogs.autodesk.com/bimblog/parameter-kopieren

  

I hope this helps.

  

Cheers,

  

Jeremy

  

Jeremy Tammik, Developer Advocacy and Support, The Building Coder, Autodesk Developer Network, ADN Open
Message 11 of 12
p.grezzi
in reply to: MichaelWolff

Hi,
nope.unfortunately I have´t found this script.
Please if you found it share it! i´m still interested! Thank´s
Message 12 of 12
denisyukJ
in reply to: matrena

Hi probably you can use simple dynamo script and export it to Excel. Here is the sample for parameter you are searching for (Thickness). With the same manner you can create any set of parameters you like.

denisyukJ_0-1662725967449.png

 

denisyukJ_1-1662726001225.pngdenisyukJ_2-1662726032927.png

 

 

Can't find what you're looking for? Ask the community or share your knowledge.

Post to forums  

Autodesk DevCon in Munich May 28-29th


Rail Community