Choose your top Archicad wishes!

Read more
Project data & BIM
About BIM-based management of attributes, schedules, templates, favorites, hotlinks, projects in general, quality assurance, etc.
SOLVED!

Expression for splitting both Composite & Complex Profile wall types

tjmillar
Enthusiast

We use both composite and complex profile walls. The composite & profile names have the same structure, with a colon delimiter separating Wall Code, Wall Type, Finishes, & Thickness. This allows for properties that separate those qualities to be used in schedules. eg SPLIT ( Composite Structure, ":", 2) returns the second field in the name, such as "240 Brick Veneer". 

I'm trying to create a property that will return that field regardless of whether the wall is a composite or a complex profile. The parameter "Structure Type" will return "Composite" or "Complex Profile", so I've tried using the expression
IF ( Structure Type = "Composite", SPLIT ( Composite Structure, ":", 2 ), SPLIT ( Complex Profile, ":", 2 ) )
That returns the correct result for composite walls, but says it can't evaluate the property if it's a composite wall. It seems as though it will work if the logical function is true, but can't evaluate if it's false - instead of returning the result required for a "false" in the logical function. 

I've tried lots of variations to simplify and test the function - can't get it to work. Any suggestions?

 

AC26 Australia, Windows 10
1 ACCEPTED SOLUTION

Accepted Solutions
Solution

I may have mislead you.

It can't be two separate commands in the same expression.

But you can have more than one expression in the sequence.

 

BarryKelly_0-1681369807540.png

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

View solution in original post

4 REPLIES 4
Barry Kelly
Moderator

If it is not working in the one expression, you can always use two separate expressions.

If the first expression is true it will do hat you want and ignore the other expressions.

If not it will work through the list until it finds an expression it can complete.

So it is like an IF command without actually using the IF command.

 

SPLIT ( Composite Structure, ":", 2 )

SPLIT ( Complex Profile, ":", 2 )

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

Thanks for your fast response Barry, 

Your answer is exactly what I want (which as you note is the same as the IF function), but I don't see how to make it work. If I try to create a property with two separate expressions, it says there is a syntax error and won't let me save. If I add each expression into my schedule, I get two columns for the same value, which is not what I want. How do I make one property work through two different expressions?

AC26 Australia, Windows 10
Solution

I may have mislead you.

It can't be two separate commands in the same expression.

But you can have more than one expression in the sequence.

 

BarryKelly_0-1681369807540.png

 

Barry.

One of the forum moderators.
Versions 6.5 to 27
Dell XPS- i7-6700 @ 3.4Ghz, 16GB ram, GeForce GTX 960 (2GB), Windows 10
Lenovo Thinkpad - i7-1270P 2.20 GHz, 32GB RAM, Nvidia T550, Windows 11

Perfect! Thanks so much! 

AC26 Australia, Windows 10