Expression-based properties have been introduced as one of the main new features in ARCHICAD 22 to help designers in creating data-rich building models. Expressions process existing model data with functions and operators to create new information.
For more details, please watch the following video playlist:
Expressions have been introduced as a new option for properties. Navigate to Options > Property Manager and select a property and choose Expression at VALUE DEFINITION. The expression can be typed-in on the popping-up Expression Editor dialog.
Expressions are consisted of model parameters (like the calculated area of a zone), functions (like rounding) or operators (like subtraction) and user-defined numeric values or texts.
No. There are several logical, text editing and data conversion functions available as well apart from the standard mathematical, trigonometrical and statistical functions and operators.
Logical functions (IF, AND, OR, etc.) are for building up complex calculation scenarios. For example you can set up a condition or (even a set of conditions) upon which the calculation result depends.
Text editing (CONCAT, FIND, COMPARE, etc.) and data conversion (STR, STRTONUM, etc.) functions are great help in formatting the final result, like adding measure units to or forming complete, grammatically correct sentences with the calculated values.
In general, expressions work on the same way as functions in the well-known spreadsheet applications. Tooltips help to understand functions and operators. Each function can be added with proper syntax including placeholder arguments which can be easily swapped to the desired ones. In aim to learn more about the available model data parameters, please visit the Element Parameters on the Help Center. For more details on functions and operators, please read Functions in Expressions.
We believe that the element-related information should be stored on element-level as it belongs to the element while schedules are just a view of the model consisted of those elements. Implementing calculations on schedule-level would restrict the use of this information in other element-level features like Labels, Graphic Overrides etc..
You can both add or omit spaces, ARCHICAD will automatically set the proper spacing after you close the Expression Editor by clicking on OK.
Decimal and list separators are controlled centrally by the operating system and not by ARCHICAD. In aim to switch to the preferred separator at first you have to close ARCHICAD, change the language and regional settings of your operating system and restart ARCHICAD.
No, as commas and semicolons are just the preferred display mode of separators which are saved, interpreted and processed in the background exactly on the same way in both cases. Each user will see comma or semicolon separators in the expressions according to his/her own operating system settings.
Yes. If you want to transfer your expressions to other projects it is recommended to export all properties and classifications that are referred in the expression into an XML file, and load this to the target project. You might as well directly access the necessary properties by loading them into the Property Manager from the source project file at import.
For practical reasons, parameters and properties are indentified by invisible GUIDs (Globally Unique Identifiers) in the background and not by their names. Typing the name into the text field will not establish the link between the parameter/property name and the GUID.
Yes, otherwise the properties will not be assigned to any elements.
In case of the Element Selection Settings dialog the expression calculation results may depend on model changes, that are not applied before closing the dialog. Hence, the results of these expressions can’t be evaluated before these changes are made. Changes made in the Info Box are instantly applied to the model, calculation result for performance reasons as these calculations may require time.
These interfaces serve primarily for data input, rather than displaying calculation results. To review expression results while modeling, we recommend the Element Information palette, which displays all properties values, including expression-based ones. For reviewing results while setting up expressions, we recommend the Evaluate function in the Property Manager.
Yes it is! Please multiply the result by 100, convert into a string and add ’%’ after it with the help of the CONCAT function.
Yes! Typical design validation scenarios are based on polar questions clarifying if your design meets the requirements from a certain aspect or not. You can create a separate property with True/False data type and create an expression which sets the value to True or False depending on the calculated value of the numeric property the validation is based on.
Yes, with the help of the IF function you can include only those elements which are placed on a specific layer for example.
Expression-based properties can be added to GDL objects as well like any other properties if you select the classification entities referring to GDL objects at Availability for classifications.
Just as any door and window properties and parameters, expression-based properties of opening objects can be displayed in their markers too.
Expressions can process element listing parameters, project info details, profile parameters, properties and classification data but have access neither to GDL object parameters nor to IFC properties.
Properties can be assigned to elements but not to groups. For this reason, expressions can be evaluated for single elements only, and not for groups of elements.
Building Material and Component listing parameters are not availble in expressions as properties are implemented on element-level.
You can create a separate string property and copy the expression into its value field, as it is not possible to switch between the calculated value and expression display in case of the same property.
It will define a static custom value to the involved property if you change the value of the expression defined property in the schedule. The result of all other expressions referring that property will be automatically recalculated.
No, they can’t.
Expression defined properties can be freely used as criteria, provided that they do not have reference to any model data which requires the regeneration of the 3D model. These are excluded from Graphic Overrides due to performance reasons.
Expression-based properties, as any other custom properties can be displayed in symbol or autotext labels as well.