Collaboration with other software
About model and data exchange with 3rd party solutions: Revit, Solibri, dRofus, Bluebeam, structural analysis solutions, and IFC, BCF and DXF/DWG-based exchange, etc.

property expressions, "NONE" or jump to next Line

Does anyone know a good way to jump into a new expression line (Add button)?
Case:
IF Typ is a wall show a wall-value If Not jump into next calculation.
I tried "None" but it won't work in all of the cases

I need this to shorten the expressions an keep a good overview.
Mac OSX - up to date

GER Archicad Full, Up to date
7 REPLIES 7
Eduardo Rolon
Moderator
That might be helpful,

AFAIK you might achieve that by placing each item in the Sequence section of Properties. The trick is that the sequence gives a result then it will stop there so you have to be creative on how to line them up.

For example if you a particular expression will work if it goes conceptually as this:

- If Category is Wall do this
- If Category is Slab do this
- If Category is Roof do this

In this case the expression will only give a result as long as the object has one of those categories. If the object has 2 of them then it will only give the first one that applies in the sequence.

So if the sequence is this:

- If Category is Wall do this
- If Category is Wall ALSO do this

You will never get to the second line.
Eduardo Rolón AIA NCARB
AC27 US/INT -> AC08

Macbook Pro M1 Max 64GB ram, OS X 10.XX latest
another Moderator

Thanx eduardo,

I figured that out to so far. For the expression I'm working on it would be of much help to have a "jump" option.
Tried many workarounds, but none of them really work...

Guess I'll have to wait for an update one day....

Thanks for the clear answer.

Lukas
Mac OSX - up to date

GER Archicad Full, Up to date
poco2013
Mentor
FYI:

If you are using a sequence, you do not necessarily have to use if statements.
You can take advantage of the fact that Archicad will error check the statement beforehand for the applicability of the properties to the element selected.
If any property within the statement is not applicable, it will not try to do the statement but will skip to the next sequence.
So just use the calculation line applicable and Archicad will decide if it is valid for that type element.

The problem that you may get into is if you want to use the expression for different types which may have common properties like doors and windows. In that case use a empty property classified only for the element type of interest -- within the false return of a single line if statement.

This approach creates a single line statement for each element type. So you can use one expression for several different types (one sequence for each element type) without resorting to chaining ifs.
Gerry

Windows 11 - Visual Studio 2022; ArchiCAD 27
thanks poco, in my case i need the if to ask for the classification...so i cant go without an "else". I would need a jumper property for each classification.......not to happy with this workaround
Mac OSX - up to date

GER Archicad Full, Up to date
Red
Advocate
lukaso wrote:
thanks poco, in my case i need the if to ask for the classification...so i cant go without an "else". I would need a jumper property for each classification.......not to happy with this workaround
I assume there still isn't a feature as an ELSE?
Thanks,
Red
i7 8700k
ROG Strix Z390-E MoBo
64gb RAM
EVGA GeForce GTX 2080
_______________________
http://www.facebook.com/flatcreekdesignstn
http://www.sraarchitects.biz
I assume there still isn't a feature as an ELSE?
No there isn't. But there is IFS now (it has no ELSE at all)

By the way, I'm totally happy with the workflow poco explained.
Mac OSX - up to date

GER Archicad Full, Up to date

Hi poco2013, thanks for your response here. I too am having the same query as lukaso and wanted clarification on this point. do you mean to use the function below and leave the ValueIfFalse entry blank?

 

IF ( Logical, ValueIfTrue, ValueIfFalse )

 

I am not clear how I would be able to filter the elements (eg. windows) by their property value (eg. sliding, top hung, ... etc) without using the IF or IFS function.

 

Thanks

 

Femi