View Full Version : shared parameters
jhiggen
2007-12-18, 08:09 AM
I would like to create the shared parameters within an access database and then read them out into the txt-file. The problem seams to me, is the creation of the GUID. Is there a way of doing this?
In a next step I want to generate a type catalogue, which is suposed to be read into revit. This hopefully helps me to create all types within my external database. My idea is, to just have the geometry of my project in Revit.
Does anybody have a good tutorial about how to export those parameters and their values into an access project database again? Even Revit mentions that this is possible it never worked.
Jens Higgen, Germany
jhiggen
2007-12-18, 11:22 AM
Now I found out how to export the parameters. I can give you a good description of how to do that. Hopefully you can help me with the parameter import.
clog boy
2007-12-18, 11:22 AM
Forget what I just said. Your idea sounds cool. It's a step forward in type- and version management.
You'll need to edit the Excel database to make it look like a type catalogue, and export it as a tab separated file. The file needs to have the same name as the component, and you'll need to reload the component afterward.
aaronrumple
2007-12-18, 01:43 PM
The problem seams to me, is the creation of the GUID. Is there a way of doing this?
In a next step I want to generate a type catalogue, which is suposed to be read into revit.
I've never tried it, but I'm guessing a GUID is just a GUID and Revit wouldn't care how or when it was generated. So if you are using Access, you could use VBA to generate a GUID for your shared param. Note that the shared parameter file is only relevant during content creation. After that it isn't used by Revit. You'll have to experiment to see if it does work - as I said - I haven't tried it.
Type catalogs are much more simple to create with a database or Excel. There are some good examples for Excel floating around here.
clog boy
2007-12-19, 06:48 AM
Just out of common interest, what is a GUID? I know GUI stands for Graphical User Interface, does that have anything to do with it?
If one needs a GUI to generate a type catalog, I'd use a professional script language like PHP or perhaps JS or Perl.
jhiggen
2007-12-19, 11:06 AM
GUID = Globally Unique Identifier!
aaronrumple
2007-12-19, 06:26 PM
Just out of common interest, what is a GUID? I know GUI stands for Graphical User Interface, does that have anything to do with it?
If one needs a GUI to generate a type catalog, I'd use a professional script language like PHP or perhaps JS or Perl.
Or just make one online.... http://www.guidgenerator.com/
Do the rest in notepad....
paubin
2007-12-20, 01:57 PM
Hi folks:
I have a related issue. If the same custom parameter was created in two different shared parameter files (the client has multiple offices, and they have a procedure for replicating the shared parameter file over the WAN so that they are the same, but in this case, it apparently did not happen) and then loaded into a project (in some cases via loaded families, and some other cases via project parameters) is there any way to unify these two parameters to make them one?
Obviously in the Revit UI, the user sees the same field twice: i.e. "Item Code" and "Item Code", but to Revit they are different. Naturally, this is causing problems as users are inputting data into the wrong field, and worse, have no easy way to tell which is the correct one.
Thanks.
aaronrumple
2007-12-20, 02:20 PM
Hi folks:
....is there any way to unify these two parameters to make them one?
No. They will need to decide which is the "correct" one and then recreate the parameters in the incorrect content files. There is no other way around this as the GUID is then embeded in the RFA at that point and can't be changed without destroying and recreating the parameter.
paubin
2007-12-20, 03:04 PM
I suspected as much, but always nice to get a second opinion. Thanks.
Henry D
2007-12-20, 03:46 PM
Hey Paul! Great to see you posting on the Revit site. I've been reading your books since I used ADT six or seven years ago.
paubin
2007-12-20, 04:06 PM
Hi Henry:
Thank you! Glad to be here!
sbrown
2007-12-20, 05:28 PM
Has anyone figured out how to load multiple shared parameters into a family easily?
paubin
2007-12-20, 05:40 PM
Pretty much one by one. I am not sure if there is a faster way using the API.
Pretty much one by one. I am not sure if there is a faster way using the API.
Not possible with the API currently. Creation of parameter groups and shared parameters is possible with the API that's about it.
Guy
ckc.mike
2007-12-28, 09:49 AM
Hi Jens,
I have a similar idea of yours, and I found that the limitation so far is Revit haven't release all the parameter type available for API. For example, if we want to create a parameter with a parameter type like the keynote and the assambly code which able to select valve from a .txt file, there is no such parameter type available yet in both Revit and Revit API. Might be i haven't find it yet.
Kevin Janik
2008-04-07, 07:56 PM
Along with this discussion, I have a few questions due to some training input that said to make parameters in families shared parameters not family parameters since they are more useful. That sounds great but with the GUID problem and mulitple creators we are just looking for problems?
If seems that the safest way is to create family parameters and then switch them to shared parameters by modifying them later when the parameter is needed to be used in a tag or a schedule.
Questions:
Should shared parameters be used instead of family parameters as the training I noted above suggested?
Can you switch them back a forth from family to shared without loosing them or the data attached to them?
When switching them to a shared parameter, we must have one share parameter file to use correct or only some of them will work since their GUIDs will be different?
When fixing problem ones can you just modify them by using the modify option in the parameters dialog and hook them to your standard shared parameters file correct parameter and the data will stay intact? (like the one above.)
Could someone outline the process of dealing with shared parameter issues?
Thanks for the help!
Kevin
Steve_Stafford
2008-04-08, 01:38 AM
...Should shared parameters be used instead of family parameters as the training I noted above suggested?...
Shared parameters are best added to projects and associated with categories as long as the same value in a family isn't required to actually change a physical property of the family itself. In other words change the model geometry. Adding them to a project is more efficient.
For some a motivation for using shared parameters is naming consistency, they can set up a variety of office standard terms and use them for parameters. Have you read the articles on my blog about Shared Parameters (http://www.revitoped.com)? I written quite a few include another fairly recently. I ask because I hesitate to write it all again in response :smile:.
Kevin Janik
2008-04-08, 08:50 PM
Steve,
Thanks for the post. I went back a carefully read the posts from your website. I skimmed most of them before but now things are a bit clearer and I played with a door family using family and shared parameters. I will answer my questions below and propose a few more to get a better handle on these. Hopefully the answers will help others.
Should shared parameters be used instead of family parameters as the training I noted above suggested? Your site talks about using shared parameters for only "only when it must appear in schedules AND constrain or flex the geometry in the family" You went back on that a bit in a later post, but why the flex geometry approach? I am still confused on that. There could be things you want scheduled that do not flex geometry.
Can you switch them back a forth from family to shared without loosing them or the data attached to them? I switched them back a forth using a door family. When I had that parameter scheduled, Revit just left the field empty when I switched back to a Family Parameter (In my case I made the shared parameter text.) When I removed the field from the Scheduled Fields in the schedule Revit looked like it moved it to the available fields but in reality it became unavailable only then vanished from the list at the left. When I switched back to a shared parameter with the in active field in the schedule, Revit filled back in the text information.
When switching them to a shared parameter, we must have one share parameter file to use correct or only some of them will work since their GUIDs will be different? I find that to be true and if you use two different Shared Parameter files with the same parameter name, you can end up having a schedule with two of the same parameter names, one connected to the data and the other not.
When fixing problem parameters, can you just modify them by using the modify option in the parameters dialog and hook them to your standard shared parameters file correct parameter and the data will stay intact? (like the one above.) From what I have done, I believe that this is true. Once the data is in the project, as long as you do not delete the parameter completely as Family or Shared Parameter, the data is maintained in the Revit Project.
Could someone outline the process of dealing with shared parameter issues? I think the above helps resolve some issues but there are a couple more questions I have below.
Your website outlines the below parameter types. It seems that all System Parameters are Scheduleable and usable in tags, correct? Are Project Parameters only if they are Shared Parameters? Also some families are not able to use Shared Parameters as noted by my list in my next question. Do Project Parameters enable some of this functionality at the project level?
Project Parameters: (Encountered in a project environment)
* System (type or instance)
* User Defined (type or instance)
Family Parameters: (Encountered in a project or family editor environment)
* System (type or instance)
* User Defined (type or instance)
Shared Parameters: (Encountered in a project or family editor environment)
* Project (type or instance)
* Family (type or instance)
Last, to organize the Share Parameters office file, would it make sense to use the list from Revit Help below. It is a list of what catagories allow Shared Parameters?
Family Categories Allowing
Casework
Ceilings: created as in-place families
Columns
Curtain Panels
Curtain Wall Mullions
Doors
Electrical Equipment
Electrical Fixtures
Floors: created as in-place families
Furniture
Furniture Systems
Generic Models
Lighting Fixtures
Mechanical Equipment
Parking
Planting
Plumbing Fixtures
Railings
Ramps
Roofs
Rooms
Site
Speciality Equipment
Stairs
Structural Columns
Structural Foundations
Walls
Windows
Additional Categories
Areas
Drawing Sheets
Structural Beam Systems
Structural Beam Systems
Structural Columns
Structural Connections
Structural Foundations
Structural Framing
Structural Rebar
Last, last, could someone clarify Project Parameters to more of a degree with some example than the Revit Help which says, "Project parameters are parameters you define and then add to multiple categories of elements in a project. They are specific to the project and cannot be shared with other projects. You can then use those project parameters in multi-category or single-category schedules." They can also be Shared Parameters? The plot really gets thick! There seems to be some lack of clarity here about parameters which is confusing.
Thanks for the help in advance!
Kevin
Steve_Stafford
2008-04-08, 10:18 PM
...
Should shared parameters be used instead of family parameters as the training I noted above suggested? Your site talks about using shared parameters for only "only when it must appear in schedules AND constrain or flex the geometry in the family" You went back on that a bit in a later post, but why the flex geometry approach? I am still confused on that. There could be things you want scheduled that do not flex geometry. These posts and this thread are getting a bit too intense so I'll try to deal with each question in a separate reply.
Let's talk about an actual example, a door and a value for undercut. I want to schedule the undercut of the door in the project AND I want to actually change the door panel size when the undercut value changes in the schedule or the properties of the door.
If I only care about the "information" of undercut I can just add a Project Parameter to a project, no shared parameter at all. I just click Settings menu > Project Parameters > click Add and type a name etc. The advantage of the Project Parameter is that it will be added to ALL doors whether they have any such parameter in them or not. I can schedule a value for Undercut for all doors in the project and I didn't have to do anything to my library of doors.
Since I wrote that I want undercut to ALSO change the family geometry I have to provide a way to do this. If I add an undercut parameter in the family so the panel can change I'll be able to change it in the project through the door properties but I won't be able to schedule it. That's because the only parameters that work between family and project automatically are those that Revit built in like Width, Height etc.
This is where Shared Parameter come in. Revit needs a way to let a project and family know they are really using the same "term" which is why I compare the shared parameter file to a dictionary...a place to store definitions.
When you first create a Shared Parameter called "Undercut" you can then reach out and use it when you make the family and then also add it to your project parameters. It can also be added to a door tag family which makes it possible to tag/indentify the information later.
To summarize: A parameter that has to change family geometry MUST be created IN the family and in order to schedule or tag that same thing in a project it MUST be a Shared Parameter.
Information only can simply be added to a project as Project Parameter and it does not have to be a shared parameter if it will only be displayed in a schedule and the element properties of the selected element(s).
Steve_Stafford
2008-04-08, 10:21 PM
...
Can you switch them back a forth from family to shared without loosing them or the data attached to them? I switched them back a forth using a door family. When I had that parameter scheduled, Revit just left the field empty when I switched back to a Family Parameter (In my case I made the shared parameter text.) When I removed the field from the Scheduled Fields in the schedule Revit looked like it moved it to the available fields but in reality it became unavailable only then vanished from the list at the left. When I switched back to a shared parameter with the in active field in the schedule, Revit filled back in the text information...
I don't understand the ultimate reason for the question as I don't appreciate why I'd want to change back and forth between shared parameters or otherwise. There must be a deeper problem you want to solve or assumption feeding this notion. I say if you make it a shared parameter it stays one. No reason to go back and forth...that I see...
Steve_Stafford
2008-04-08, 10:25 PM
...
When switching them to a shared parameter, we must have one share parameter file to use correct or only some of them will work since their GUIDs will be different? I find that to be true and if you use two different Shared Parameter files with the same parameter name, you can end up having a schedule with two of the same parameter names, one connected to the data and the other not.A firm should maintain one Shared Parameter file. For firms with multiple offices this can be a copy of the "master". Since the GUID is the same in a copy anything made using a Shared Parameter from the master or copies will be treated as the "same".
The problem as you described is when we use separate files and create various content using the "same" named parameter but they really have different GUID's, because they are separate files.
There is no active relationship between your families, projects and the shared parameter file. The information acquired from the Shared Parameter file is stored in the family and project. If you lost the shared parameter file no harm would come to them. You'd only have a harder time making new things that need to use the same shared parameters. To fix this it is possible to export a shared parameter to a new file.
Steve_Stafford
2008-04-08, 10:27 PM
...
When fixing problem parameters, can you just modify them by using the modify option in the parameters dialog and hook them to your standard shared parameters file correct parameter and the data will stay intact? (like the one above.) From what I have done, I believe that this is true. Once the data is in the project, as long as you do not delete the parameter completely as Family or Shared Parameter, the data is maintained in the Revit Project...
For the most part you can but a Shared Parameter's name, data type and discipline cannot be changed without deleting the original which means that you'd have to redo whatever work was done with the "wrong" Shared Parameter.
Kevin Janik
2008-04-08, 10:28 PM
Steve,
Thanks for the reply!
Sorry for the length. I am trying to figure this out and also document what is really going on.
If you want to output to OBDC then a Shared Parameter or a Project Parameter is necessary, correct?
Kevin
Steve_Stafford
2008-04-08, 10:35 PM
...Could someone outline the process of dealing with shared parameter issues? I think the above helps resolve some issues but there are a couple more questions I have below.In the grand scheme of things...hopefully without offending...you are overthinking this. The number of users who need to really understand Shared Parameters is probably less than 5 in any given firm.
Even at a certain big (very) firm I visit every now and then this is true... It comes down to the cad/bim manager delivering on requests. User says, "My client wants us to show a value in our drawing list so I need to be able to add it to our sheets." So you create a Shared Parameter for that value, add it to your titleblock family....or just add it to your Project Parameters and tell them to "go". Or you show them how. But very few people need to regularly mess with the Shared Parameters themselves.
When a firm has under taken a highly customized approach, for doors as an example, where they are not using stock values like Width and Height instead choosing their own like Panel Width and such the shared parameter file gets more action but once it is setup users just pull the "definition" from the file. They don't create any new ones. In this situation the Shared Parameter file becomes not only the dictionary but the "rule" for the naming convention so every family created has precisely the same format as well as GUID defined.
Steve_Stafford
2008-04-08, 10:35 PM
...If you want to output to OBDC then a Shared Parameter or a Project Parameter is necessary, correct?...Yes it is required.
Steve_Stafford
2008-04-08, 10:41 PM
...
Last, to organize the Share Parameters office file, would it make sense to use the list from Revit Help below. It is a list of what catagories allow Shared Parameters?...list stripped...In practice I haven't encountered shared parameters for a great many categories and certainly not all. The most frequently appearing would be doors, windows, project information, rooms, sheets.... Certainly the more family customization you do can impact how much you do with Shared Parameters. Collaboration is likely to affect this as we go forward but it isn't really clear how much right now.
Steve_Stafford
2008-04-08, 10:45 PM
...
Last, last, could someone clarify Project Parameters to more of a degree with some example than the Revit Help which says, "Project parameters are parameters you define and then add to multiple categories of elements in a project. They are specific to the project and cannot be shared with other projects. You can then use those project parameters in multi-category or single-category schedules." They can also be Shared Parameters? The plot really gets thick! There seems to be some lack of clarity here about parameters which is confusing....I hope that my earlier response clears up the project parameter concept a bit. But to restate...a project parameter is a quick way to store information for one or more element categories without doing anything to the actual content itself. I can added important information to all doors without editing any door families in the family editor. But it only works when it is JUST information that doesn't actually alter the door geometry too. For that the parameter must be IN the family and for it to schedule and tag it must be a Shared Parameter.
Head spinning yet???
Kevin Janik
2008-04-09, 12:04 AM
Steve,
Thanks again for the information. I will cut and paste it together as a help document for our use.
I am the BIM manager for my firm by default and understanding this is very helpful since only the other day I got involved in Shared Parameters because of video training from Cyril that noted we should use Shared Parameters for families generally which seemed a like it could be a problem. As a result, I wanted some answers to give to the people in the training including myself.
It would seem that in time Revit could resolve some of this into a small group of parameters that have all the capabilities one would need without have to have multiple types. It seems like Shared and Project Parameters were added to take care of some issues not available in other parameter types, perhaps, but I do not know the history. Maybe is is really clear for those at the factory and we just need to get on their wave length.
If others need this information in a PDF for, I could provide it as an attachment with some addition information from your website. Often, you go into more depth than we find here.
Kevin
aaronrumple
2008-04-09, 01:56 PM
It would seem that in time Revit could resolve some of this into a small group of parameters that have all the capabilities one would need without have to have multiple types....
The best thing Revit could do to simplify the use of shared parameters is to put in more standard parameters into the families.
Having done implementation at several offices, I find that the same additional parameters are requested over and over. With a good survey or the industry and some discussion with the industry, I'm sure that the list of shared parameters everyone is using could be distilled into a very short list. Then these could be incorporated into the family templates using standard names. Heck, even ADT did a better job with standard OTB Property Sets than Revit does with Parameters.
A better list of built in parameters (object model) would only strengthen the whole concept of BIM in Revit and promote better communication from office to office. Who doesn't want Hardware to be a standard parameter for doors?
aaronrumple
2008-04-09, 01:58 PM
...or maybe we should start a Shared Parameter Consortium and develop a univesal shared parameter file?
Kevin Janik
2008-04-09, 03:24 PM
Aaron both of those suggestions sound great and both come from one list of parameters people would want. How about starting that list here. People could chime in on it and the Parameter Groups they would fall under for Architecture and then there could be lists for MEP and Structural. After each list is created it could be submitted as a very specific wishlist item for the factory and until then people could use it to standard Family or Shared Parameters for content.
The same could possibly be created for Project Parameters?
For general information, Revit Content Creation Standards dated 9/9/05 state the following regarding Family Creation:
Parameter Names
• Parameter names should be as close as possible to natural English (minimize
abbreviation/truncation)
• Standard parameter names should be used whenever possible.
• Do not change label names present in templates.
• Use title case for parameter names. Parameters are case sensitive.
Parameter Usage
• Create parameters only when variation creates meaningfully differentiated types that
represent real world possibilities.
• Parameter names reused to create equalities should be carefully checked for name
coherence.
By the way, is there a newer version of the Revit Content Creation Standards?
What are the thoughts out there?
Kevin
Kevin Janik
2008-04-10, 03:19 PM
Any comments on the above from those heavy shared parameter users with great insight?
Kevin
ededios
2008-05-08, 12:50 AM
Any comments on the above from those heavy shared parameter users with great insight?
Kevin
This sounds like a very good idea. I'm just now trying to understand Shared Parameters, so I use it correctly and know what I'm doing. Once I get a better handle on it I'll definitely have a comment for you.
Thanks!
Powered by vBulletin® Version 4.1.11 Copyright © 2013 vBulletin Solutions, Inc. All rights reserved.