[#3579] - JPivot errors abound in 3.5.0 RC1 analysis view

Category:
Bug report
Priority:
Immediate
Status:
Assigned
Project: Severity:
Block
Resolution:
Open
Component: Reproducibility:
Always
Assigned to:
0

Installed JasperServer 3.5.0 RC1
Configured database and mondrian connections in repository
Loaded Mondrian schema (configured and previously deployed in a different BI container)

The JPivot UI does not function correctly in 3.5.0 RC1. After creating an analysis view, navigation of the rendered cube is broken.

Issue 1: Clicking "measures" (columns section) to select additional measures to display in the cube produces a new page with a title but no data display or navigation bar. Clicking browser back button returns to the previous page. Refreshing this page or modifying the page url to reload the base page causes the measures selection box to appear. I'm assuming that the problem is in the navigation system; once the box finally appears, I am able to successfully make changes to the measures displayed and save the change. If I do not make changes to the measures or click the OK or Cancel button, every time I click the cube configuration button, the measures box appears instead.

Issue 2: Clicking a dimension (such as calendar in this particular analysis view) should produce a hierarchy of values in this dimension. I should be able to filter the dimension for specific values. Instead, the same "blank" screen appears as in Issue 1 above (no control bar, no data, just a title). To work around the problem, I click the dimension link and get the "blank" page. Click browser back button. Click the button to move the dimension from rows section of the cube to the columns section. The dimension editor appears immediately (normal behavior is for the dimension to move from rows to columns and update the display to reflect that, but again, seems to be a bug in navigation). I can edit the dimension. When I save, the display updates and the modified dimension is in the columns section. I then move it back to rows axis and everything works as normal.

Issue 3: When navigating an analysis view, the generated MDX is not displayed correctly. If I copy the MDX from the MDX box from JPivot and run in as-is, I get this error:

com.jaspersoft.jasperserver.api.JSException: com.tonbeller.jpivot.olap.model.OlapException: Mondrian Error:No function matches signature '{<Level>}'

I cannot save a modified analysis view (if I do, the view cannot be viewed since the MDX is invalid). This is strange because the cube that is rendered works fine. I can successfully drill into a cube, but when I attempt to save the cube's state as a new analysis view, the save will work but viewing the new view fails. Copying the MDX after drilling in and executing it independently also fails.

The first two issues seem to be related to customization of the JPivot navigation system. The last may also be related to JPivot customizations as the internal MDX works fine while the MDX displayed does not.

Please let me know how I can help. I can provide debug information, screen shots, an explanation via telephone, etc.

Thanks,
-John

jcaskey's picture
Joined: Mar 3 2009 - 9:46am
Last seen: 12 years 9 months ago

7 Comments:

#1

Thanks John. I have not seen this. Let me look into it.

#2

I am not able to recreate these issues in the HEAD code. I have been doing some bug fixes in the last week in this area.

What browser are you using? Maybe it is related to IE vs Firefox, say.

#3

We are using IE 6, IE 7, and Firefox. It doesn't work in any of them. We replaced the viewOlap.jsp with viewOlapOrig.jsp and the old navigation system didn't have issues 1 or 2 per this tracker. The data drilldown generates a javascript error, though, but that's prob okay since we're not using corresponding js files with this older jsp. It seems that there is some small nuance between viewOlap.jsp and viewOlapOrig.jsp that allows the older jsp to transition between different displays of the cube navi but is missing in the new jsp code.

#4

We've resolved the first two issues by making a minor change (which I expected is all this would be). Also, another note that I should have included: we are not running 3.5.0 RC1 as a bundle. We downloaded the bundle and put the war file in another app container (jboss). We didn't have to change any of the war contents other than data source stuff and the like; it deployed beautifully.

Here's what we've found to be the cause of Issues 1 and 2 herein reported. First, some debug info:

Initial open of an analysis view produces these values:

withMenu=true
belowCube=false
inDrillThrough=false
menuToolbarCube1=true
menuToolbarCube2=false
menuToolbarCube3=false
menuToolbarCubeAll=true
drillThoughTable1=false
drillThoughTable2=false
menuToolbarCube=true
drillthrough=false

Click cube navi btn and then click Measures link produces these values (which cause our problem):

withMenu=false
belowCube=false
inDrillThrough=true
menuToolbarCube1=false
menuToolbarCube2=false
menuToolbarCube3=false
menuToolbarCubeAll=false
drillThoughTable1=true
drillThoughTable2=false
menuToolbarCube=false
drillthrough=true

The second set of values should be the same as the first set which led us to the xsl that renders the links in the cube navi (js-hierarchy-navigator.xsl). We modified the line containing: ?{$linkParameters}&{$token}&{@id}=x&drillthrough=z and removed the drillthrough=z parameter. Issues 1 and 2 are fixed now.

We are still seeing Issue 3, however (I figured they were unrelated). After just drilling into a cube and displaying the MDX (NO filtering, modifications, etc, just drill into data), I copy and paste the MDX into workbench and get the same error as when trying to save an analysis view to the repository. I suspect the problem here is the same as with Issues 1 and 2 in that it is how the MDX is being passed / rendered to Mondrian and the repository. We're looking into this now, but wanted to pass on the fix for the other two.

#5

JPivot in JS/JA 3.1 Community Edition was standard JPivot with i18n enhancements. In 3.5, we are moving the enhanced JPivot UI from our Professional version into Community Edition, which has a lot more javascript in it.

I have been working on the volume of HTML being output, changing the mdxtable.xsl. I have already fixed issues 1 & 2.

For issue 3, I am not able to recreate it. Did you do this against the foodmart schema? Could you show us some MDX that failed?

#6

After drilling into an existing schema via jpivot and clicking the MDX editor, the following displays:

select NON EMPTY {[Measures].[Actual Purchases], [Measures].[Budgeted Purchases], [Measures].[Percent Purchases Budgeted]} ON COLUMNS,
NON EMPTY Crossjoin(Hierarchize(Union(Union(Union({[Calendar.Calendar].[All]}, [Calendar.Calendar].[All].Children), [Calendar.Calendar].[All].[2009].Children), [Calendar.Calendar].[All].[2009].[March ].Children)), {[Substation.Substation by Type].[All].[System].[SYSTEM]}) ON ROWS
from [Power Purchases]

When copying this out of the editor and pasting it into workbench, when attempting to save the modified analysis view using the Save As button, or when copying / pasting the MDX into a functioning analysis view, I receive the error mentioned in Issue 3. As best as I can tell, the issue is how crossjoins are used in the generation of the query *that is displayed* as compared to how the query that generates the table is generated. I say this because the table works fine in the browser, but any attempts to extract the query for display, save, etc produces an incorrect query.

Hope this helps.

#7

This Might help,

I had the same issue :Mondrian Error:No function matches signature '(<Member>, <Level>)'

After going into my cube design, I found that I had the same string for the allMemberName, allMemberCaption and allLevelName, in the level definition of the dimension, this caused the MDX querry to show the error. After checking (and replacing where needed) that the 3 strings where different Mondrian MDX querry generator the above error dissapeared.

Feedback
randomness