Revit. Parametrization. Strategies Materials, InMEPSystem. Functions STRINDEX, VALUESTR, EINDEX. Updating favorite fields
Introducing the update to the Parametrization plugin, which brings new strategies, new functions, a bit of redesign, improvements in formula processing and the ability to update your favorite fields.
It's all in order later in this article.
Materials - allows you to process all materials of the current document, regardless of the element selection option.
InMEPSystem - allows you to process elements that are part of the MEP system (electrical system, piping system or duct system).
STRINDEX - finds one text string in another and returns the starting position of the first string. For example, if you write STRINDEX(my,"Hi, my name is Sasha"), the function will return 5.
VALUESTR - returns the parameter value as a string with units. Only relevant to those parameters that have units displayed in the standard property palette.
EINDEX - returns the index of successful use of the current formula expression. Suppose you write the expression $[Comments]=EINDEX() and process 10 walls with an unfilled parameter with this expression. Since all 10 times the expression will work with a positive result, all walls will be written 1, 2, 3, ..., 10 to the "Comments" parameter. If the parameter is not set when the expression is processed (there will be an error, or the same value), the success count for that expression will not be incremented.
In the list of strategies swapped the system and user name of the strategy. Added "Check all" and "Unchec all" buttons to the list of rules. Removed preview of the formula from the tooltip, since it greatly influenced the loading speed of the list of rules. Now the formula is displayed when you select a rule in the list
For those who like dark themes, added support for dark themes in the formula editor
Many small, but useful improvements made in the formula processing algorithms:
- added the ability to escape double quotes \".
- added a check for unescaped parentheses that do not belong to functions.
- added extraction of all double-quoted expressions from the formula before checking and processing. That is, you can now write double-quoted expressions in a formula that include control characters and not worry about escaping them. For example, "(Glazed)", "Type A,2", etc. Except, of course, the double quotation mark itself, which must be escaped in this case - "Type \"A\"".
- added possibility in conditional expressions (mostly used in IF, AND, OR functions) to use "Starts with", "Ends with", "Not starts with" and "Not ends with" conditions. To do this, use the "Contains" or "Not contains" condition and add an "*" to the second argument. For example, to write the condition "Parameter A ends in "wo" you should write it like this: $[A]~*wo.
- added special processing of parameters "Type Name" and "Family Name" - if an instance is processed, these parameters will be taken from the type. This is a strange solution in Revit itself - all instances of elements always have these parameters, but they always have no value. So it's necessary to take the values of these parameters from the type.
Formula fields will now have an asterisk icon in the list of fields if they are in the favorites list
Favorites list can now be launched from plugin options dialog. There are two important and useful features in the list of favorite fields now:
- the ability to add a new field by pressing the plus button
- possibility to update a field in all rules of all configurations. I.e. you can make a change to the field, press the button and the field will be found by the key in all the rules and the value of the field will be replaced with the new one. At the end, you will get a detailed report in which rules the change has taken place
All improvements are made based on requests from our users, so don't forget to write us your suggestions!
Enjoy your work with ModPlus!