Thursday, July 04, 2013

Cross referencing parameters


I’m not convinced this is good practise but it might be useful. A request came to me the other day, “I would like to show the keynote parameter & the window mark parameter in the same tag?” On further investigation you soon discover you can either have a dedicated keynote tag which will pull out the keynote reference, but you can’t pick up the window mark type. Or you have a window tag, which can pull out the mark type, but not the keynote reference. This client wanted to show both parameters in one tag. So a quick hack around with some shared parameters & we resolved the request very simply. This is how…..

I started by creating a  “text” shared parameter called fake_keynote.


Next I ensure this parameter is used in the project. I assign the parameter to the window category, I also ensure the parameter is setup as an instance parameter.


I opened up the window tag, added a new label & assign the fake keynote shared parameter to the label in the tag & loaded the family back into the project.


This is what my new window tag now looks like.


You will observe that the tag is still not filling in any keynote data. Now the cool thing here is you can cross reference parameters, but you need to edit the window family to achieve this. I select the window & choose to edit the family.Then I add the fake_keynote shared instance parameter to the family.

imageI then make the shared instance parameter “reference” the real keynote parameter. This is achieved by adding =keynote to the the fake keynote parameter under the Formula field.


Save the family & then load the family back into the project updating any existing versions in the project. Now  when the window is loaded into the project, the keynote data is cross referenced into the fake_keynote parameter & the tag in turn displays the actual keynote data in the window tag.



Andy Milburn said...

WOW. Less is more. Very nice David

snowyweston said...

David - unless I'm missing something, the =Keynote reference (in the .rfa) doesn't appear to work in 2014.

Luke Johnson said...

Yes, this seems broken in 2014 at this point.