Hi all,
I am trying to use a EC Expression for a Reports Calculated Column Expression and can't seem to find a way to relate the expression to the model object being reported,
eg. i would like to use an expression like "this.GetElement().Name" to get the Name property of an element or a property using "this.GetElement().GetDisplayValue("xxx")" , however, i can't get this to work.
Is there some special syntax to get the report to select the current model object to retrieve values using Calculated Column Expressions?
Regards,
Mark
Hi Mark,
I am not sure I understand your question right. Is it possible to share a few elements example to demonstrace, what properties you want to include into the report?
Jan
Bentley Accredited Developer: iTwin Platform - AssociateLabyrinth Technology | dev.notes() | cad.point
Hi Jan,
This may explain better - eg. i have a Report for line objects and added a column for its Level property. If i then create a Calculated Column Expression and use the EC expression that normally gets me the level name, it doesnt work. No normal "this.GetElement" EC expressions look to return a value so i am thinking there must be something different with these expressions.
I am trying to use these EC Expressions here to display properties that are not "standard" as I do with Item Types. I am hoping these behave the same so i can get usable Reports for Civil data (in ORD, etc.)
OpenRoads Designer 2022 R3 (10.12) | Microstation 2023 | ProjectWise CE 3.4
based on your answer and hands-on testing, I think I understand the issue now :-)
What confused me was "model object element properties", which makes the question more complex than it is ("Report Calculated column cannot work with reported element").
I guess it is a feature (limitation) of this technology preview: When calculated column is used, the expression does not support "this" specification, so it is not possible to write an expression, that accesses the reported element.
It seems that "objects", available in Item Type expressions and Report expressions are similar, but not the same: In Item Type, e.g. "this" is available, whereas in Report, "Column" is available.
With regards,
Thanks Jan, im hoping that the Expressions are not just limited to Report Column data and can somehow be extended to operate on the objects being reported also. If so, it will allow users to get the most out of their data in Reports, otherwise quite limiting in my opinion.
Mark Shamoun said:im hoping that the Expressions are not just limited to Report Column data
I think it's all about what symbol provider is configured to be available for "reports engine".
Mark Shamoun said:and can somehow be extended to operate on the objects being reported also.
Expressions in reports are Technology Preview, so I guess it is good time to discuss such extension here or to create an idea.
I do not know how reports work internally, so maybe existing flexibility (reports can work with plenty of objects, not only graphical elements) makes implementation of "elements specific" expressions complicated?
Mark Shamoun said:If so, it will allow users to get the most out of their data in Reports, otherwise quite limiting in my opinion.
From my point of view it looks like that expressions, accessing elements data, should be part of Items, attached directly to elements. And expressions, working with reports itself, should be part of report definition.
But maybe it's only because of early development stage and such feature is planned already ;-)