Crosstab inside of a table [message #653465] |
Wed, 09 February 2011 15:41  |
Eclipse User |
|
|
|
Originally posted by: remkus.wideopenwest.com
My application constrains me to using BIRT 2.2.1.
I'd like to have a table of data with groups defined.
In the detail row, I'd like to have a crosstab which is filtered on data
from the table.
I've tried setting a filter on the crosstab .. no luck.
<property name="level">PerformanceView/DEVICE_NAME</property>
<property name="filter">
<filter-condition-element>
<expression
name="expr">dimension["PerformanceView"]["DEVICE_NAME"] </expression>
<property name="operator">eq</property>
<simple-property-list name="value1">
<value>data._outer["DEVICE_NAME"]</value>
</simple-property-list>
</filter-condition-element>
</property>
When I run the report, I get a message
"org.mozilla.javascript.EcmaError: TypeError: Cannot read property
"DEVICE_NAME" from null"
Any suggestions?
Thanks
|
|
|
|
Re: Crosstab inside of a table [message #653729 is a reply to message #653711] |
Thu, 10 February 2011 15:38   |
Eclipse User |
|
|
|
Originally posted by: remkus.wideopenwest.com
Jason,
I had been thinking along the lines of setting a variable in the row's
onCreate, but it didn't dawn on me that I could just access the variable
from the reportContext when building the filter expression!
It works ... I'm not sure if you just made a typo or if there's a
concept I don't understand between get/setGlobalVarable and
get/setPersistentGlobalVariable, but I had to use persistent variables
to make my report work
Thanks a ton!
On 02/10/11 13:43, Jason Weathersby wrote:
> Dave,
>
> Not sure this will work but can you add an oncreate script to the row
> containing the xtab. In that script get the column value device name
> and use reportContext.setGlobalVariable("dn", yourvalue);
>
> Then in the filter put
>
> reportConxtext.getGlobalVariable("dn");
> instead of
> data._outer["DEVICE_NAME"]
>
> Jason
>
>
>
> On 2/9/2011 3:41 PM, Dave Remkus wrote:
>> My application constrains me to using BIRT 2.2.1.
>>
>> I'd like to have a table of data with groups defined.
>>
>> In the detail row, I'd like to have a crosstab which is filtered on data
>> from the table.
>>
>> I've tried setting a filter on the crosstab .. no luck.
>>
>> <property name="level">PerformanceView/DEVICE_NAME</property>
>> <property name="filter">
>> <filter-condition-element>
>> <expression
>> name="expr">dimension["PerformanceView"]["DEVICE_NAME"] </expression>
>> <property name="operator">eq</property>
>> <simple-property-list name="value1">
>> <value>data._outer["DEVICE_NAME"]</value>
>> </simple-property-list>
>> </filter-condition-element>
>> </property>
>>
>>
>> When I run the report, I get a message
>> "org.mozilla.javascript.EcmaError: TypeError: Cannot read property
>> "DEVICE_NAME" from null"
>>
>> Any suggestions?
>>
>> Thanks
>>
>>
>
|
|
|
Re: Crosstab inside of a table [message #653732 is a reply to message #653729] |
Thu, 10 February 2011 15:57   |
Eclipse User |
|
|
|
Dave,
It was not a typo. Persistent variables are written to the rptdocument
allowing the separation of run and render task in two java processes.
It should be fine to use persistent. I am a bit curious why the
standard global did not work.
Jason
On 2/10/2011 3:38 PM, Dave Remkus wrote:
> Jason,
>
> I had been thinking along the lines of setting a variable in the row's
> onCreate, but it didn't dawn on me that I could just access the variable
> from the reportContext when building the filter expression!
>
> It works ... I'm not sure if you just made a typo or if there's a
> concept I don't understand between get/setGlobalVarable and
> get/setPersistentGlobalVariable, but I had to use persistent variables
> to make my report work
>
> Thanks a ton!
>
> On 02/10/11 13:43, Jason Weathersby wrote:
>> Dave,
>>
>> Not sure this will work but can you add an oncreate script to the row
>> containing the xtab. In that script get the column value device name
>> and use reportContext.setGlobalVariable("dn", yourvalue);
>>
>> Then in the filter put
>>
>> reportConxtext.getGlobalVariable("dn");
>> instead of
>> data._outer["DEVICE_NAME"]
>>
>> Jason
>>
>>
>>
>> On 2/9/2011 3:41 PM, Dave Remkus wrote:
>>> My application constrains me to using BIRT 2.2.1.
>>>
>>> I'd like to have a table of data with groups defined.
>>>
>>> In the detail row, I'd like to have a crosstab which is filtered on data
>>> from the table.
>>>
>>> I've tried setting a filter on the crosstab .. no luck.
>>>
>>> <property name="level">PerformanceView/DEVICE_NAME</property>
>>> <property name="filter">
>>> <filter-condition-element>
>>> <expression
>>> name="expr">dimension["PerformanceView"]["DEVICE_NAME"] </expression>
>>> <property name="operator">eq</property>
>>> <simple-property-list name="value1">
>>> <value>data._outer["DEVICE_NAME"]</value>
>>> </simple-property-list>
>>> </filter-condition-element>
>>> </property>
>>>
>>>
>>> When I run the report, I get a message
>>> "org.mozilla.javascript.EcmaError: TypeError: Cannot read property
>>> "DEVICE_NAME" from null"
>>>
>>> Any suggestions?
>>>
>>> Thanks
>>>
>>>
>>
>
|
|
|
Re: Crosstab inside of a table [message #653922 is a reply to message #653732] |
Fri, 11 February 2011 16:20  |
Eclipse User |
|
|
|
Originally posted by: remkus.wideopenwest.com
Jason,
I must have typo'd something when I was trying set/getGlobalVariable ...
now that I have the report working with persistent variables, I went
back and tried standard globals and they work fine! (:doooh!)
Thanks
On 02/10/11 15:57, Jason Weathersby wrote:
> Dave,
>
> It was not a typo. Persistent variables are written to the rptdocument
> allowing the separation of run and render task in two java processes. It
> should be fine to use persistent. I am a bit curious why the standard
> global did not work.
>
> Jason
>
>
> On 2/10/2011 3:38 PM, Dave Remkus wrote:
>> Jason,
>>
>> I had been thinking along the lines of setting a variable in the row's
>> onCreate, but it didn't dawn on me that I could just access the variable
>> from the reportContext when building the filter expression!
>>
>> It works ... I'm not sure if you just made a typo or if there's a
>> concept I don't understand between get/setGlobalVarable and
>> get/setPersistentGlobalVariable, but I had to use persistent variables
>> to make my report work
>>
>> Thanks a ton!
>>
>> On 02/10/11 13:43, Jason Weathersby wrote:
>>> Dave,
>>>
>>> Not sure this will work but can you add an oncreate script to the row
>>> containing the xtab. In that script get the column value device name
>>> and use reportContext.setGlobalVariable("dn", yourvalue);
>>>
>>> Then in the filter put
>>>
>>> reportConxtext.getGlobalVariable("dn");
>>> instead of
>>> data._outer["DEVICE_NAME"]
>>>
>>> Jason
>>>
>>>
>>>
>>> On 2/9/2011 3:41 PM, Dave Remkus wrote:
>>>> My application constrains me to using BIRT 2.2.1.
>>>>
>>>> I'd like to have a table of data with groups defined.
>>>>
>>>> In the detail row, I'd like to have a crosstab which is filtered on
>>>> data
>>>> from the table.
>>>>
>>>> I've tried setting a filter on the crosstab .. no luck.
>>>>
>>>> <property name="level">PerformanceView/DEVICE_NAME</property>
>>>> <property name="filter">
>>>> <filter-condition-element>
>>>> <expression
>>>> name="expr">dimension["PerformanceView"]["DEVICE_NAME"] </expression>
>>>> <property name="operator">eq</property>
>>>> <simple-property-list name="value1">
>>>> <value>data._outer["DEVICE_NAME"]</value>
>>>> </simple-property-list>
>>>> </filter-condition-element>
>>>> </property>
>>>>
>>>>
>>>> When I run the report, I get a message
>>>> "org.mozilla.javascript.EcmaError: TypeError: Cannot read property
>>>> "DEVICE_NAME" from null"
>>>>
>>>> Any suggestions?
>>>>
>>>> Thanks
>>>>
>>>>
>>>
>>
>
|
|
|
Powered by
FUDForum. Page generated in 0.25117 seconds