I have built a hierarchical portlet which contains 3 levels.
Default this portlet would be showing level-1 data.
I have added filters to filter the data directly from Level-2 and Level-3.
Assume the hierarchy as shown below.
Unit Name Unit level
Suppose the data is filtered with Level-2 unit 'B'. In portlet the data gets filtered with Unit name 'B' and shows + symbol to see next level hierarchy. But there comes the issue.
After clicking on + symbol near B clarity shows the data as shown below. Clarity repeats the level2 unit along wtih + symbol on next row and then shows the Level3 unit.
Actual Result Expected Result
Unit name Unit level Unit name Unit level
B 2 B 2
+B 2 C 3
Has anyone came across such issue while developing hierarchical portlet?
Please give your valuable advise to fix this issue.
Any suggestion friends?
Debugging hierarchical queries is very hard (even when you can see the code behind it) - all I think anyone could say is that there is something "wrong" with your SQL logic in the UNION part of the query that builds "level 2" (in that that part of the query should not be returning the same data that you have returned in the "level 1" part of the query).
i.e. you have "SQL problems" not "Clarity problems"
Somehow the data is getting repeated at unit level 2. Is this the same issue when you filter with unit level 1 i.e. A? Can the results not be duplicated using a DISTINCT or a UNIQUE keyword? One thing to observe is that A is a parent only and C is a child only whereas B is a parent as well as a child.
As David mentioned, you need to look into your SQL Query in detail to find the root cause of this issue.