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

Why this expression can not work?

pjatelier
Contributor

Can not see why this expression does not work. The expression is set to Area and it is set to appropriate classification. When i have tried to simply set a simple value like 1m*1m instead of element property it works. But this way it only says can not be evaluated. Why?

expression:

IFS (Element Type = "Wall"; Surface Area of the Wall Out­side Face (Condi­tional); Element Type = "Slab"; Area;Element Type = "Beam"; Left Side Surface; )

 

Operating system used: Windows 5003

1 ACCEPTED SOLUTION

Accepted Solutions
Solution
vlahtinen
Enthusiast

If I understood correctly what you're trying to do here, you could just put the parameters to different sequences. Archicad then tries to evaluate the sequences in order. If the parameter is not available for the element, Archicad moves to the next one. Note that since Area is a general parameter, it's available for most types if not all and the execution stops there. Therefore the Area parameter must be the last on the list.

 

In the screenshot below I have a wall, a slab and a beam selected.

 

vlahtinen_0-1723661579889.png

 

View solution in original post

5 REPLIES 5
Xandros
Advisor

@pjatelier wrote:

 

IFS (Element Type = "Wall"; Surface Area of the Wall Out­side Face (Condi­tional); Element Type = "Slab"; Area;Element Type = "Beam"; Left Side Surface; )


The last semicolon might be the culprit. Try this:

 

IFS (Element Type = "Wall"; Surface Area of the Wall Out­side Face (Condi­tional); Element Type = "Slab"; Area;Element Type = "Beam"; Left Side Surface )

 

ArchiCAD 27 GER / Win10
Intel i9-9900K / 64GB RAM / nVidia GeForce RTX 2080 Ti
pjatelier
Contributor

It is not that, i have translated it and have rewritten it from my language in AC it is correct. Anyway

I have found out that if anyone from three properties can not be solved, hole expression can not be solved. Even if the propriety is under condition that is false.

For example when i choose wall, then the "Left side surface" from beam can not be computed even if it is under false condition. AC is checking it so now i am looking for some way around how to say if you can not compute it than it is for example 0. any suggestions?

Solution
vlahtinen
Enthusiast

If I understood correctly what you're trying to do here, you could just put the parameters to different sequences. Archicad then tries to evaluate the sequences in order. If the parameter is not available for the element, Archicad moves to the next one. Note that since Area is a general parameter, it's available for most types if not all and the execution stops there. Therefore the Area parameter must be the last on the list.

 

In the screenshot below I have a wall, a slab and a beam selected.

 

vlahtinen_0-1723661579889.png

 

pjatelier
Contributor

Super i will give a try

pjatelier
Contributor

Well that has solved it, Thank you very much, most important is the note, because i have tried before but unluckily i had global area on first place.

Setup info provided by author