Hi Gavin, Glad that you are back, we were missing you and your great videos. Thank you for the parameters script upgrade. Looking forward to more videos!!
Indeed, using your package Crumple makes it actually much easier for anyone willing to adopt your approach (and therefore your workflows and shared scripts) to ease their work.
Good to see your package 🙂 I am looking forward to open family from project and update its parameter values. I searched on dynamo forum and Orchid package but all are pointing to directory. In my case every family has item number which is of instance type and the parameter values will be assigned based on that. If you could provide node in your own package, that would be really helpful.
I have typically found directories a more stable method versus from project, however the method you could explore is in this case doc.EditFamily(x) where x is a family symbol object. There's a Python example of it here: forum.dynamobim.com/t/change-family-category/57455/15 I'm unsure how this would work in bulk with the family manager but it's on my list to test out.
Hi Gavin, thanks for all the tutorials. Do you also have one for getting and setting of parameters using your package crumple? Tried varies methods, but only thing it returns is 'null'.
Not currently. For get parameter it only works for strings/numbers and across a list of family documents. For set parameter it requires a list of family documents/parameters and a list of list of values to set. If it isn't in that structure it wont work and will return null.
@@AussieBIMGuru Appreciate your response Gavin! I tried both, first with opening multiple documents in background, secondly with the current document. Or do I understand correct that you have to use a list of family documents? Anyway, there are four nodes; Document.Current, FamilyDoc.Types, FamilyDoc.Parameters and FamilyDoc.ParameterGet the first three all respond like expected, but the last node returns a null on every parameter. It should still run in Revit 2022 right?
@@marcdenheijer606 so I believe I never made the node able to do multiple family documents due to it being too convoluted. I've made an example in Python here of setting multiple family parameters by type and family using Excel here and will make a video for it in late June. github.com/aussieBIMguru/Misc/blob/master/230512_ABG_SetFamParameters.zip It doesn't accommodate for parameter data type, but can set any value with the right data types before it heads into the Python node.
@@AussieBIMGuru This is brilliant, thanks for this script Gavin! Tried the script and with some modification it did exactly what I expected: set certain parameters for all families and types (without specifying them in Excel). I suspected your first statement, therefore I also tried the crumple package also for just the current document. Without any success. Looking forward to your video!
@@marcdenheijer606 glad to hear it helped! I'll likely package these up in a slicker format in my pyRevit toolbar down the line (guRoo), as I've moreorless cracked adding/deleting/replacing parameters and setting/getting/formulating parameter values as well via Excel and Python.
Hi Gavin! Thanks a lot for your videos! I've noticed that the AddParameter Method (String, BuiltInParameterGroup, ParameterType, Boolean) is no longer available in the Revit API 2023. As a result, I've started using the AddParameter method (String, GroupTypeId, Boolean). However, I'm facing issues when trying to adapt a similar workflow for the BIPGbyName node. Could you provide a hint on how to solve this problem? Thanks a lot!
Yep new forge unit API gripes. Theres a good summary of how to work with this new class here as a reference: forums.autodesk.com/t5/revit-api-forum/how-to-use-forgetypeid-to-add-family-parameters-to-a-family-in/td-p/11591733
Thanks! Yes it is indeed, although i would suggest a different script for such an approach if you're driving it via Excel. Orchid and Crumple both have nodes for getting family types and setting parameters by name and family type (in family editor). Orchid has a node that can set formulae by parameter name and familydoc. I have a video on formulae in families from about a year back I think
I see you’re using revit 2020.2.6. Did you also experience stability issues with 2020.2.7? Last month I had upgraded but within a day I experienced stability issues and reverted back to 2020.2.6. Read on an Autodesk forum other users had experienced the same issues. I had to spend over an hour to reinstall version 2020 because of it. Luckily I can do my new projects in version 2022. The PDF export feature is a real time saver for me.
Yep my mates warned me about it so I've been holding off for now. It doesn't seem Autodesk tests their updates very well these days, ever since that family loading debacle in 2021.
Hi Gavin, excellent video... Again! if some of the families allready have the parameters with values, will the script overwrite these values or the script is written in such way that if the paramater exists it doesn´t touch the familly?
Nice explanaation. I have a question. Is there any way to make a similar proccess with imported families in the project? for example - add parameter to section tag family ? How do I open this family, if its in the project itself ?
Yes instead of opening the document you would need to use edit family and load document from revitAPI: www.revitapidocs.com/2024/56e636ee-5008-0ee5-9d6c-5f622dedfbcb.htm www.revitapidocs.com/2024/cb950c8e-f440-c6db-8563-d1dd16ef3fee.htm
@@AussieBIMGuru Thanks for the information. Already made same exel file as yours, saved family as a separate test file, and trying to follow each of your steps in this particular script to make it working.))) And after that, I'll check how to do that with edit family technique that you've shared with me.
@@AussieBIMGuru I'm getting "Parameter not added" in FamilyDoc.AddSharedParameter. Doublechecked full workflow, created exel file and all the nodes from your script. But no luck.(((
thanks a lot , Is there a way if I wanna change the parameters type after i set them to instance or type because i tried it by changing the value in excel file but nothing happened
Yes unfortunately this script only adds new parameters. To modify then you would need another workflow that gets existing parameters then attempts to switch them to type or instance using Python. I believe clockwork may have some nodes that do that.
@@amratef3134 it's probably not going to be a video for me as it's a very narrow topic. I'd suggest looking into clockwork and if not engaging dynamo forums for assistance. I don't tend to do many dynamo videos these days as I'm exploring pyrevit/grasshopper more often.
Hello Gavin, great tutorial (as always). I was wondering if you have used this application for editing a model (and its nested families) received by a design team? If so, how do you get around having to reload each individual family into the working project?
Generally i would save all families out to a directory, run the process over them and then reload them as a set. That or request that the design team provide the parameters in their model in future.
Yep not an easy starter tutorial. I'd recommend my own, good value for money but solid content and getting great feedback so far: courses.bimguru.education/courses/course-dynamo-4revit
@@AussieBIMGuru Tried to edit the node like you suggested in the video to work with the current file but I always get null as a result. Its strange because there was a section in the code that looked like it replaced 'doc' with current document if the input was blank, but whenever I run without that connect it just returns function.
Have you ever tried using this script to implement a FamilyType selection parameter? I'm using the same script plus some extra parameter data pushing to building up my casework library. I have multiple casework doors as subfamilies and I want to be able to swap out the doors with a FamilyType label when within a project. The script will push through all other parameters, but fails to make the FamilyType selection.
My issue isn't allowing the components to swap, if I manually create the parameters and insert the door subfamilies everything works as intended. My issue and the reason I reached out is both the Crumple and Orchid (I know not yours) node for adding shared parameter fail when they try to create the parameter type, a family type drop down selection, that I am using for interchanging the casework doors. Your response did trigger in my head about attempting it through manual process again. I determined the reason the scripts were not inserting the parameter was I had no subfamilies loaded into the family. After loading in a subfamily, the nodes work for creating the subfamily shared parameter as well. I know you aren't developing much with the ABG channel any more. Thanks for all you did for the community. Your Crumple package is amazing.
Nice job!! It works fine, but now I'm trying to add also a formula to some of the parameters. I've add a column to the excel file with formula values and tryed to modify the python script for "familyDocAddSharedParameter" but won't work... any ideas?
@@AussieBIMGuru I've try this: set another input IN[4] as formula: string[]..[]; modify python script: #detect if document is not set if IN[0] == None: docs = [DocumentManager.Instance.CurrentDBDocument] else: docs = tolist(IN[0]) #unwrap all elements to use with API definitions = tolist(IN[1]) bipgs = tolist(IN[2]) isInstance = tolist(IN[3]) #addformula formula = tolist(IN[4]) outcomes = [] # Collect values for doc in docs: if doc.IsFamilyDocument:
outcome = []
# "Start" the transaction TransactionManager.Instance.EnsureInTransaction(doc)
for d,b,i in zip(definitions, bipgs, isInstance): try: new = doc.FamilyManager.AddParameter(d,b,i) doc.FamilyManager.SetFormula(d,formula) outcome.append(new) except: outcome.append("Parameter not added.") # "End" the transaction TransactionManager.Instance.ForceCloseTransaction() else: outcome = "Document is not a family document."
outcomes.append(outcome) OUT = outcomes probably I've done something wrong.... this doesn't work.. :(
We created a Dynamo script that will get the parameters of a selected nested family in the family file, and copy its selected parameters into the family file (creating the same parameters there), and set their default value to the same value that the nested family had. Is there a way to make those parameters automatically associated with the parameters of the nested family?
@@AussieBIMGuru Thank you! Finally, I was able to do it with a Python script, that I copied from a forum, and had to modify to loop through each element of my list. It takes two inputs. IN[1] is a list of the names of parameters that I want to associate with each other (in my case the parameters from the nested family had the same name as the parameters in my family I wanted them to be associated with). IN [0] is the nested family element (for instance parameters), and the nested family element type (for type parameters).
import clr clr.AddReference('RevitAPI') from Autodesk.Revit.DB import * clr.AddReference('RevitNodes') import Revit clr.ImportExtensions(Revit.GeometryConversion) clr.ImportExtensions(Revit.Elements) clr.AddReference('RevitServices') from RevitServices.Persistence import DocumentManager from RevitServices.Transactions import TransactionManager doc = DocumentManager.Instance.CurrentDBDocument elem = UnwrapElement(IN[0]) list_1 = IN[1] for i in range (len(list_1)): paramNames = list_1[i] famNames = list_1[i] if not isinstance(paramNames, list): paramNames = [paramNames] if not isinstance(famNames, list): famNames = [famNames]
Hi Gavin!, by chance do you have the option to add nonshared parameters (regular parameters) in your package? . the orchid node for that is giving me errors. I used to follow your steps in your Orchid shared parameter video and used them with the Add parameter node (nonshared ) from orchid, but once I updated to Revit 2023, the node gives and error, it even says that the orchid installed is not the same as the one in Dynamo.
@@AussieBIMGuru I see, yeah it used to work for me in Revit 2022. I used to follow the same steps from your video tutorial on how to add shared parameters(2020 update) with Orchid, but with Parameter.Create node instead of the SharedParameter.Add node, it worked perfectly. Now updating to 2023 Orchid's node went crazy giving errors, though it still works with shared parameters. Thanks for the video Gavin, learning python is a must, lol cause that flower is unreliable.
@@CrlsE094 yes it looks like they changed it in 2023 to handle forgeunit types, huge pain. This is the method if you get to that point: www.revitapidocs.com/2022/3ac89d60-4b71-694f-002f-125d2e6565fc.htm
FamilyDoc.AddSharedParameter gives me "Parameter not added" message. Recreated all script structure from your video + exel file. Cant figure out whats wrong.
Most common issue that causes that is not being connected to the shared parameter file or typos in the excel data. My nodes wont typically work in 2024+ as they changed the Revit API there as well.
@@AussieBIMGuru I just tried in Revit 2025, yeah they didn't work. Will you please evolve your script? And a last question, How do I get the list of the BIPG ? Thanks, take care! Looking forward to seeing you back and happpy wedding!!
@@qingyangpan78 I've updated the nodes in Crumple a few months back but haven't got time to test them all in R25. I believe most of them should work in Revit 2025 but might be a bit different to this video. I have sample scripts here: github.com/aussieBIMguru/Crumple/tree/master/Script%20samples
@@AussieBIMGuruAlways thrilled to see your fast responses, thank you Gavin. I retried your updated package today but it didn't seem to work either. The problem might be the node "Parameter.BIPGbyName", it doesn't seem to function here...
@@Mohamedhassoun-j2x i havent made one personally, but it would be similar in logic to this, uses the same API class. This is the method to delete a parameter using the FamilyManager object: www.revitapidocs.com/2024/cb266197-b76e-66db-ea15-2cf14bcb4f85.htm
@@AussieBIMGuru Gavin thanks again! one more point Gavin, is it possible to get a list with all types of parameters? for example: in the electrical discipline there are Watts, power, electrical resistivity and so on. Is it possible to get all these types at once? for it to be placed on a table?
Thank you for making your own package and not rely on other packages that is always changing and hard to install.
Glad to help!
Good to see you here again.
Great to be back!
The Crumple nodes made this all possible! Thank you for the many walk throughs!
You're welcome!
Best useful advanced revit tutorials are back!
Hi Gavin, Glad that you are back, we were missing you and your great videos. Thank you for the parameters script upgrade. Looking forward to more videos!!
Cheers! Glad it was helpful.
Indeed, using your package Crumple makes it actually much easier for anyone willing to adopt your approach (and therefore your workflows and shared scripts) to ease their work.
Glad to hear it has been helpful!
Brilliant! Thank you ABG! Worked like a charm.
Awesome, glad to hear!
Everything worked perfectly! Thank you!
You're welcome!
Thank You so much for this tutorial! Saved me so much time!
You're welcome!
Extremely useful ! Much appreciated !
Youre welcome!
Work pefectly, Thankyou.
You're welcome!
Thanks for the content, u are a great teacher
Thank you!
G'day Mate! Thanks for this
You're welcome mate!
Perfect work Gavin!
Thanks :)
You're welcome!
Good to see your package 🙂
I am looking forward to open family from project and update its parameter values. I searched on dynamo forum and Orchid package but all are pointing to directory. In my case every family has item number which is of instance type and the parameter values will be assigned based on that.
If you could provide node in your own package, that would be really helpful.
I have typically found directories a more stable method versus from project, however the method you could explore is in this case doc.EditFamily(x) where x is a family symbol object. There's a Python example of it here:
forum.dynamobim.com/t/change-family-category/57455/15
I'm unsure how this would work in bulk with the family manager but it's on my list to test out.
Hi Gavin, thanks for all the tutorials. Do you also have one for getting and setting of parameters using your package crumple? Tried varies methods, but only thing it returns is 'null'.
Not currently. For get parameter it only works for strings/numbers and across a list of family documents. For set parameter it requires a list of family documents/parameters and a list of list of values to set. If it isn't in that structure it wont work and will return null.
@@AussieBIMGuru Appreciate your response Gavin! I tried both, first with opening multiple documents in background, secondly with the current document. Or do I understand correct that you have to use a list of family documents? Anyway, there are four nodes; Document.Current, FamilyDoc.Types, FamilyDoc.Parameters and FamilyDoc.ParameterGet the first three all respond like expected, but the last node returns a null on every parameter. It should still run in Revit 2022 right?
@@marcdenheijer606 so I believe I never made the node able to do multiple family documents due to it being too convoluted.
I've made an example in Python here of setting multiple family parameters by type and family using Excel here and will make a video for it in late June.
github.com/aussieBIMguru/Misc/blob/master/230512_ABG_SetFamParameters.zip
It doesn't accommodate for parameter data type, but can set any value with the right data types before it heads into the Python node.
@@AussieBIMGuru This is brilliant, thanks for this script Gavin! Tried the script and with some modification it did exactly what I expected: set certain parameters for all families and types (without specifying them in Excel).
I suspected your first statement, therefore I also tried the crumple package also for just the current document. Without any success. Looking forward to your video!
@@marcdenheijer606 glad to hear it helped! I'll likely package these up in a slicker format in my pyRevit toolbar down the line (guRoo), as I've moreorless cracked adding/deleting/replacing parameters and setting/getting/formulating parameter values as well via Excel and Python.
Welcome back!
Cheers Dev!
Gavin, you are god!
Haha not sure I'd go that far in terms of hubris, but thanks!
Hi Gavin! Thanks a lot for your videos! I've noticed that the AddParameter Method (String, BuiltInParameterGroup, ParameterType, Boolean) is no longer available in the Revit API 2023. As a result, I've started using the AddParameter method (String, GroupTypeId, Boolean). However, I'm facing issues when trying to adapt a similar workflow for the BIPGbyName node. Could you provide a hint on how to solve this problem? Thanks a lot!
Yep new forge unit API gripes.
Theres a good summary of how to work with this new class here as a reference:
forums.autodesk.com/t5/revit-api-forum/how-to-use-forgetypeid-to-add-family-parameters-to-a-family-in/td-p/11591733
very powerful and useful script👍
is it possible to assign values or even formulas to the parameters using dynamo?
Thanks!
Yes it is indeed, although i would suggest a different script for such an approach if you're driving it via Excel. Orchid and Crumple both have nodes for getting family types and setting parameters by name and family type (in family editor). Orchid has a node that can set formulae by parameter name and familydoc. I have a video on formulae in families from about a year back I think
@@AussieBIMGuru Thanks Gavin!
I see you’re using revit 2020.2.6. Did you also experience stability issues with 2020.2.7? Last month I had upgraded but within a day I experienced stability issues and reverted back to 2020.2.6. Read on an Autodesk forum other users had experienced the same issues. I had to spend over an hour to reinstall version 2020 because of it. Luckily I can do my new projects in version 2022. The PDF export feature is a real time saver for me.
Yep my mates warned me about it so I've been holding off for now. It doesn't seem Autodesk tests their updates very well these days, ever since that family loading debacle in 2021.
Could you share the shared parameter excel sheet that was used for the crumple Dynamo scripts you uploaded to GitHub about a month ago?
Amen.
The church of BIM!
Another great video Gav....see you at BILT ANZ
Cheers! See you there. Feel free to swing by after my pres' on saturday if we haven't found each other by then.
Hi Gavin, excellent video... Again! if some of the families allready have the parameters with values, will the script overwrite these values or the script is written in such way that if the paramater exists it doesn´t touch the familly?
If the parameter exists already it will fail to add it, but should skip that step in the custom nodes.
Nice explanaation. I have a question. Is there any way to make a similar proccess with imported families in the project? for example - add parameter to section tag family ? How do I open this family, if its in the project itself ?
Yes instead of opening the document you would need to use edit family and load document from revitAPI:
www.revitapidocs.com/2024/56e636ee-5008-0ee5-9d6c-5f622dedfbcb.htm
www.revitapidocs.com/2024/cb950c8e-f440-c6db-8563-d1dd16ef3fee.htm
@@AussieBIMGuru Thanks for the information. Already made same exel file as yours, saved family as a separate test file, and trying to follow each of your steps in this particular script to make it working.))) And after that, I'll check how to do that with edit family technique that you've shared with me.
@@AussieBIMGuru strange thing, on 9:20 I'm getting indexes -1, -1, -1 from paramNames in SharedParameters.Flat
@@AussieBIMGuru I'm getting "Parameter not added" in FamilyDoc.AddSharedParameter. Doublechecked full workflow, created exel file and all the nodes from your script. But no luck.(((
welcome back~~~
Thanks!
thanks a lot , Is there a way if I wanna change the parameters type after i set them to instance or type because i tried it by changing the value in excel file but nothing happened
Yes unfortunately this script only adds new parameters. To modify then you would need another workflow that gets existing parameters then attempts to switch them to type or instance using Python. I believe clockwork may have some nodes that do that.
@@AussieBIMGuru waiting for it, thanks
@@amratef3134 it's probably not going to be a video for me as it's a very narrow topic. I'd suggest looking into clockwork and if not engaging dynamo forums for assistance. I don't tend to do many dynamo videos these days as I'm exploring pyrevit/grasshopper more often.
Hello Gavin, great tutorial (as always). I was wondering if you have used this application for editing a model (and its nested families) received by a design team? If so, how do you get around having to reload each individual family into the working project?
Generally i would save all families out to a directory, run the process over them and then reload them as a set. That or request that the design team provide the parameters in their model in future.
@@AussieBIMGuru Thank you for the quick response. I will check to see if we have any pull with non-Design Build project architects
Lol I’m not lost at all… I need to find a dynamo for dummies course.
Yep not an easy starter tutorial.
I'd recommend my own, good value for money but solid content and getting great feedback so far:
courses.bimguru.education/courses/course-dynamo-4revit
Would be interested in a similar node that worked in the active family document.
If you connect a current document node to the familyDoc input that should do the trick.
@@AussieBIMGuru Tried it out and it produced null as a result and did not add any parameters.
@@AussieBIMGuru Tried to edit the node like you suggested in the video to work with the current file but I always get null as a result. Its strange because there was a section in the code that looked like it replaced 'doc' with current document if the input was blank, but whenever I run without that connect it just returns function.
@@facelessone86 yes the node should get current document by default in latest version of crumple and should not need any changes
@@AussieBIMGuru I'll try checking to see tomorrow if I'm up to date but it looked like I saw it in the code but wasn't working for me.
noticed your new autodesk .ico files on your taskbar. Did you take the OOTB file convert to .png, edit then convert back to .ico?
Nah custom made in photoshop, i have the files here if they help:
github.com/aussieBIMguru/Revit-Files/tree/master/Program%20Icons
Have you ever tried using this script to implement a FamilyType selection parameter?
I'm using the same script plus some extra parameter data pushing to building up my casework library. I have multiple casework doors as subfamilies and I want to be able to swap out the doors with a FamilyType label when within a project. The script will push through all other parameters, but fails to make the FamilyType selection.
This will only work if the components are shared and occur at project level. Sounds like they might not be shared.
My issue isn't allowing the components to swap, if I manually create the parameters and insert the door subfamilies everything works as intended. My issue and the reason I reached out is both the Crumple and Orchid (I know not yours) node for adding shared parameter fail when they try to create the parameter type, a family type drop down selection, that I am using for interchanging the casework doors. Your response did trigger in my head about attempting it through manual process again. I determined the reason the scripts were not inserting the parameter was I had no subfamilies loaded into the family. After loading in a subfamily, the nodes work for creating the subfamily shared parameter as well.
I know you aren't developing much with the ABG channel any more. Thanks for all you did for the community. Your Crumple package is amazing.
Nice job!! It works fine, but now I'm trying to add also a formula to some of the parameters. I've add a column to the excel file with formula values and tryed to modify the python script for "familyDocAddSharedParameter" but won't work... any ideas?
You'll need to use this method of the family manager class to set a formula:
www.revitapidocs.com/2023/cdc3156c-0334-0bba-70af-1df78fb18b50.htm
@@AussieBIMGuru I've try this:
set another input IN[4] as formula: string[]..[];
modify python script:
#detect if document is not set
if IN[0] == None:
docs = [DocumentManager.Instance.CurrentDBDocument]
else:
docs = tolist(IN[0])
#unwrap all elements to use with API
definitions = tolist(IN[1])
bipgs = tolist(IN[2])
isInstance = tolist(IN[3])
#addformula
formula = tolist(IN[4])
outcomes = []
# Collect values
for doc in docs:
if doc.IsFamilyDocument:
outcome = []
# "Start" the transaction
TransactionManager.Instance.EnsureInTransaction(doc)
for d,b,i in zip(definitions, bipgs, isInstance):
try:
new = doc.FamilyManager.AddParameter(d,b,i)
doc.FamilyManager.SetFormula(d,formula)
outcome.append(new)
except:
outcome.append("Parameter not added.")
# "End" the transaction
TransactionManager.Instance.ForceCloseTransaction()
else:
outcome = "Document is not a family document."
outcomes.append(outcome)
OUT = outcomes
probably I've done something wrong.... this doesn't work.. :(
Once we get to python in YT comments its best to take it to dynamo forums, too technical for this environment.
Can you specify the shared parameter file location to make sure the company standard file is being used?
Yes this can be done.
forum.dynamobim.com/t/set-shared-parameter-files/49712/3
We created a Dynamo script that will get the parameters of a selected nested family in the family file, and copy its selected parameters into the family file (creating the same parameters there), and set their default value to the same value that the nested family had. Is there a way to make those parameters automatically associated with the parameters of the nested family?
I havent tried it before but it looks like this should be able to do that:
www.revitapidocs.com/2015/a047ea58-0351-b419-d856-85ed23734ee8.htm
@@AussieBIMGuru Thank you! Finally, I was able to do it with a Python script, that I copied from a forum, and had to modify to loop through each element of my list. It takes two inputs. IN[1] is a list of the names of parameters that I want to associate with each other (in my case the parameters from the nested family had the same name as the parameters in my family I wanted them to be associated with). IN [0] is the nested family element (for instance parameters), and the nested family element type (for type parameters).
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import *
clr.AddReference('RevitNodes')
import Revit
clr.ImportExtensions(Revit.GeometryConversion)
clr.ImportExtensions(Revit.Elements)
clr.AddReference('RevitServices')
from RevitServices.Persistence import DocumentManager
from RevitServices.Transactions import TransactionManager
doc = DocumentManager.Instance.CurrentDBDocument
elem = UnwrapElement(IN[0])
list_1 = IN[1]
for i in range (len(list_1)):
paramNames = list_1[i]
famNames = list_1[i]
if not isinstance(paramNames, list):
paramNames = [paramNames]
if not isinstance(famNames, list):
famNames = [famNames]
elemParams = elem.Parameters
famParams = doc.FamilyManager.Parameters
elemAssoc = []
famAssoc = []
for param in elemParams:
for name in paramNames:
if param.Definition.Name == name:
elemAssoc.append(param)
for fparam in famParams:
for fname in famNames:
if fparam.Definition.Name == fname:
famAssoc.append(fparam)
TransactionManager.Instance.EnsureInTransaction(doc)
for i,j in zip(elemAssoc, famAssoc):
doc.FamilyManager.AssociateElementParameterToFamilyParameter(i, j)
TransactionManager.Instance.TransactionTaskDone()
OUT = elem
Hi Gavin!, by chance do you have the option to add nonshared parameters (regular parameters) in your package? . the orchid node for that is giving me errors. I used to follow your steps in your Orchid shared parameter video and used them with the Add parameter node (nonshared ) from orchid, but once I updated to Revit 2023, the node gives and error, it even says that the orchid installed is not the same as the one in Dynamo.
Not currently, but its a similar python method. The orchid package has nodes for this but theyre not exposed in python.
@@AussieBIMGuru I see, yeah it used to work for me in Revit 2022. I used to follow the same steps from your video tutorial on how to add shared parameters(2020 update) with Orchid, but with Parameter.Create node instead of the SharedParameter.Add node, it worked perfectly. Now updating to 2023 Orchid's node went crazy giving errors, though it still works with shared parameters. Thanks for the video Gavin, learning python is a must, lol cause that flower is unreliable.
@@CrlsE094 yes it looks like they changed it in 2023 to handle forgeunit types, huge pain. This is the method if you get to that point:
www.revitapidocs.com/2022/3ac89d60-4b71-694f-002f-125d2e6565fc.htm
@@AussieBIMGuru Thanks Gavin!, I'm trying to get there soon, I'll save it.
FamilyDoc.AddSharedParameter gives me "Parameter not added" message. Recreated all script structure from your video + exel file. Cant figure out whats wrong.
Most common issue that causes that is not being connected to the shared parameter file or typos in the excel data.
My nodes wont typically work in 2024+ as they changed the Revit API there as well.
@@AussieBIMGuru I just tried in Revit 2025, yeah they didn't work. Will you please evolve your script? And a last question, How do I get the list of the BIPG ? Thanks, take care! Looking forward to seeing you back and happpy wedding!!
@@qingyangpan78 I've updated the nodes in Crumple a few months back but haven't got time to test them all in R25. I believe most of them should work in Revit 2025 but might be a bit different to this video. I have sample scripts here:
github.com/aussieBIMguru/Crumple/tree/master/Script%20samples
@@AussieBIMGuruAlways thrilled to see your fast responses, thank you Gavin. I retried your updated package today but it didn't seem to work either. The problem might be the node "Parameter.BIPGbyName", it doesn't seem to function here...
is there any problem with making parameters in Revit 2023 with Dynamo?
As long as you have the ironpython package installed it should still work.
ok, but the parameter type not working in Revit 2023, and also parameters are not created from Excel, how do we solve this problem@@AussieBIMGuru
where you can find the script?? thank you very much in advanced
Search for my channel name on github
@@AussieBIMGuru This script didn't work for me because I want to add the parameters to the families and specify the family of a Revit file in a model.
@@Mohamedhassoun-j2x yep that would require families to be edited from project vs a directory. Its possible using Revit API and a different approach.
@@AussieBIMGuru can i find a dynamo script that works like this?
@@Mohamedhassoun-j2x i havent made one personally, but it would be similar in logic to this, uses the same API class. This is the method to delete a parameter using the FamilyManager object:
www.revitapidocs.com/2024/cb266197-b76e-66db-ea15-2cf14bcb4f85.htm
Can you share the excel file that you made?
It'll be on my github under the dynamo repo for the date this was released
@@AussieBIMGuru FOUND IT, THANK YOU!
where can i get this parameter mapping file?
Over on my github.
@@AussieBIMGuru Thank you very much Gavin, I have one more question, how can I find more items from the BIPG column?
@@pedroeliassantos2612 this lists them all:
www.revitapidocs.com/2016/9942b791-2892-0658-303e-abf99675c5a6.htm
@@AussieBIMGuru
Gavin thanks again!
one more point Gavin, is it possible to get a list with all types of parameters?
for example:
in the electrical discipline there are Watts, power, electrical resistivity and so on.
Is it possible to get all these types at once? for it to be placed on a table?
@@pedroeliassantos2612 check crumple package which has nodes to get bipgs and bipgs by revit name.
Can you share me xsl data?😁
Should be on my github.
@@AussieBIMGuru Can help me, about link data, i am cannot find it.
@@cucusetiawan1794 github.com/aussieBIMguru/Dynamo_Scripts/blob/master/ABG_220307_AddParameters.zip
1st view
Nice one haha!
👊 ρгό𝔪σŞm
Couldn't translate this unfortunately, but thanks anyway!