Real-life use of Expressions in ArchiCAD: Scheduling
We have learned that making mistakes is human nature, and that is, in fact, what helps us learn and grow. The truth is, I am more of the risk-averse type, and I cannot stand making mistakes myself. Therefore, I gravitate towards ways that enable me to incorporate computed calculations and automated input of information in my daily tasks, such as expression-defined properties.
Regardless of how well trained or motivated we are, we do tend to make mistakes, as human failure is normal. The good news is that human failure is also predicable, which means it can be ERIC-ed* to a certain degree.
Part of my daily tasks is to prepare documentation for Building Control, so my job is to ensure the designs I am working on satisfy the requirements of the Building Regulations. One way of doing it is through drawings and schedules. Schedules are an effective way to list out building components, such as windows and doors, and elaborate on, adding a further level of information about the design, that complements the plan drawings. Whilst most of the project information can be easily scheduled in ArchiCAD, the software comes with certain limitations, so any data that cannot be automatically generated by ArchiCAD needs to be inputted ‘manually’ in the schedule. Although this is how schedules used to be created back in the day, typing in figures for each element in part can be a risky practice, especially when changes arise. This is where amendments can get easily overlooked, for human factor intervenes and mistakes happen.
My engineered solution: ArchiCAD expressions
Fortunately, expression-defined properties come to the rescue by removing the human factor from repetitive tasks through automation. Although these have been around for quite a while now, I have never got to use them until recently and I must say that once I have discovered the power of these properties, they became my favourite go-to property for scheduling in ArchiCAD. Not only this helpedalso me minimise errors associated with manually modifying schedules, but it improved my overall workflow and efficiency.
Take for example the size of a #doorleaf - a very basic, yet essential element of a comprehensive door schedule one would expect to find under the available object parameters of the #ArchiCAD Library. This can be quite a pain in the neck when there is nowhere to be found, so I created an #expression property for extracting the single leaf size out of a double door. This was to avoid typing the door leaf size into a text box over the schedule cells directly on the layout, on one hand, and to ensure the leaf size would be automatically updated should any parameter changed, on the other hand.
In order to list the leaf size on my schedule, I have used a basic formula consisting of an existing #parameter. In simple terms, I have reverse-engineered the way I usually calculate a door size: A #metric double door with a leaf size of 826mm, 32mm linings, 10mm tolerance either side and a 3mm gap would have an overall width of 1739mm. Hence, the expression would read as below. In simple terms, all I did was to take out linings + tolerance (87) of the S/O (Width) and divide it by 2.
( ( {Property:General Parameters/Width} - 87 mm ) / 2 ) * 1000
This worked wonders, as I could list this expression parameter in the doors to be scheduled and there was no need to worry about manually editing the schedule when any of the double doors changed, as the information in the schedule would #automatically update should the door width be modified.
Process over outcome
Funnily enough, by the time I finalised the schedules, I learned that a more manageable way was readily available via the library parts parameters. 🤦♀️ This solution has been provided through the courtesy of @hpenbeoglu & GS and pointed exactly to the parameters I wasn’t able to find ie #gs_SecondLeaf_w (Nominal Width Side 1) for asymmetric leaves or #gs_leaf_doorleafwidths (Door Leaf Widths) for uniform leaves.
Although my approach to tackling issues is not all plain sailing, it still counts as a small victory for generating alternative solutions via ArchiCAD expressions and putting to good use the information already available.
If any of you use formulas in properties or schedules in ArchiCAD, I would be curious to know what 'engineered' solutions you came up with, so feel free to leave your comments below or send your thoughts by DM.
*ERIC - common acronym used in design risk management which stands for Eliminate Reduce Inform Control
Comments