The Global Archicad Community

Stay informed. Get help. Share your knowledge.

Discussion of non-graphical data: Properties, Property Expressions, Classifications, Interactive Schedules

Moderators: Karl Ottenstein, LaszloNagy, ejrolon, Barry Kelly, gkmethy

User avatar
By daviiiiidave
#297899
Moin guys,

im trying to make a Properties Checker.
It sounds more fancy then it is.
e.g. Window Object with 2 different properties. Lets say it is Test1 (Option-List: Information; Note) and Test 2 (Option-List: Information: Note).

Now i wanna have another property called "All information set?" within an calculation like "IF (( OR (ISUNDEFINED (TEST1); ISUNDEFINED (TEST2) ) "No" "Yes")

Then i wanna make an GO to get a visual feedback.

My Issue is that im new to the property manager and the whole wording and syntax is new to me.

I cant make it work. Where is my mistake? What do i have to read to get this right?
User avatar
By LaszloNagy
#297938
Could you write exactly what property you want to test for what condition? Then we could give you an expression syntax.
User avatar
By daviiiiidave
#297942
Actually I'm trying to do this:

I wanna add some properties to the window object. These properties are chosen by the layout the windows maker gave us. Most of them are properties with option-list.
Now I wanna have our team members to put in all properties. For this I need an "property checker". The aim is to get an property which checks if any of the window properties is undefined. If so it should gave back "Döp you have missed something". This property I wanna put in a graphic override and get a visual feedback. e. g. all windows you have forget to put in an property value is red. Keeps being red till all informations have an value :)
User avatar
By daviiiiidave
#297947
In the german forum we found out that "ISUNDEFINED" is not workin properly with the option-list.

Seems its fixed in AC23.
User avatar
By LaszloNagy
#297949
Here is what I found: the Expression you stated in your first post should be fine (aside from some syntax issues). However, what I find is that the ISUNDEFINED function works only on Properties with "TRUE/FALSE", "INTEGER" and "NUMBER" Data types.
So, in your case, when the Data Type is "Option Set", the ISUNDEFINED function cannot be evaluated. I think this is either a bug or a limitation.

So, for example, this simple Expression:
Code: Select all
IF ( ISUNDEFINED ( {Property:OPENINGS/Fire Exit} ), TRUE, FALSE )
will correctly return "TRUE" when the "Fire Exit" Property is <Undefined>, and return "FALSE" when the "Fire Exit" Property is either TRUE or FALSE (not <Undefined>). The "Fire Exit" Property has the "True/False" Data Type.

However, the following Expression:
Code: Select all
IF ( ISUNDEFINED ( {Property:GENERAL RATINGS/Fire Resistance Rating} ), TRUE, FALSE )
will always be evaluated as "FALSE", regardless of whether it is default (Undefined), is set to Undefined, or set to any other value. The "Fire Resistance Rating" Property has the "Option Set" Data Type.


I tend to think it is a bug, because we should be able to tell if any Property is undefined or not, regardless of its Data Type, and that is exactly what the ISUNDEFINED function is for. It should work for all Data Types, not only for numeric Data Types.
So I will report this to GRAPHISOFT for them to look at.
User avatar
By daviiiiidave
#297957
Yeah kinda the same issue we found out in the german board. Thanks for reporting and thanks for your time! Hope this is getting fixed :)
User avatar
By LaszloNagy
#298144
Look what I just found in the Release Notes of AC22 build 6000:

https://www.graphisoft.com/downloads/ar ... version=22
256527 DOCUMENT: ISUNDEFINED function of the Expression-based Properties was not evaluated correctly for Option Set type Properties.

So it seems that in the latest build it will be fixed. It is in Preview state but you can install it if you want.
User avatar
By daviiiiidave
#298165
yeah nice! thanks. so it was not intentionally. nice they fixed it.