on 07-02-2015 2:29 PM
Hi All,
I have a design studio 1.5 application where I use four crosstabs as selector component for a hierarchy tree, for four different views. I do this because I want to retain the changes done in each view. Hence the four crosstabs. I have a reset button that removes the selection on the crosstab. When I do this, I removeSelection() for all crosstabs at the same time. So when a crosstab is hidden, and when I do a removeSelection() for a hidden crosstab, the hidden crosstab does not appear when I go to that view. My design studio version is 1.5 in BW query on 7.3
I have recreated the same scenario with sample data in below.
Following is the initial view of the application:
There are four different Crosstabs for four different selections in the Dropdown. All the crosstabs are enabled with the “Single select” option. For the first time when any of the selections is made in the dropdown, the corresponding crosstabs appear and the selections can be made on the crosstabs as below.
1.Select a region in the crosstab while the dropdown is in Fuel Oil -S
2.Select a region in the crosstab while the dropdown is in Light distillates -ST
3. Select a region in the crosstab while the dropdown is in Medium distillates –ST
4. Select a region in the crosstab while the dropdown is in Others –ST
5. Click on the reset button present in the application:
When “Reset” button is clicked, all the selections in all the crosstabs get deselected. And the crosstab that is visible in that particular view shows that the selection is removed.
6. Now click on light distillates- ST in the dropdown. The crosstab disappears
The charts disappear for the immediate first selections of all the values in the dropdown, after Reset Button is clicked .During the second time of the selections, there is no problem with the Visibility of the charts.
The same problem arises every time the RESET button is clicked.
Thanks & Regards,
-Veera
Hi,
can you upload somewhere the biapp file of your app? the question is, what are the scripts behind the scenes...
Karol
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Veera
I'm also facing the exact same problem!!!
Running on DS 1.506 the crosstab has the same behavior.
If I use CROSSTAB_1.removeSelection(); to remove the selections made by the user, after we hide the CROSSTAB_1 afterwards it’s NOT possible to see the same crosstab because it simply disappears!!!
Even if we force to make the table visible (CROSSTAB_1.setVisible(true);) it doesn’t work. The only way to get this table again is to reload the application.
Steps:
a) User selects some rows
b) User removes the selections by clicking on “Remove selections” button.
Code: CROSSTAB_1.removeSelection();
c) User makes the table not visible by clicking on “make invisible” button
Code: CROSSTAB_1.setVisible(false);
(CROSSTAB DISAPPEARS -> CORRECT BEHAVIOR)
d) User wants the table visible again by clicking on “make visible” button
Code: Code: CROSSTAB_1.setVisible(true);
THE CROSSTAB NEVER SHOWS AGAIN.
ONLY IF WE RELOAD THE APPLICATION WE GET THE TABLE VISIBLE AGAIN.
Note: If we don’t use CROSSTAB_1.removeSelection(); we can always make a crosstab visible or invisible, but after we use this command + make this table invisible afterwards it cannot be visible again.
Any progress on this issue? Any workaround?
Regards
A. Santos
Hi everyone,
In my case the following workaround helped to solve the issue:
After removing the selection you have to hide the crosstab and show it again:
CROSSTAB.removeSelection();
CROSSTAB.setVisible(false);
CROSSTAB.setVisible(true);
I hope this will help you too!
Regards,
Matti
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Veera
Could you please update us if you have raised a ticket and got some answers from SAP?
Thank you
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hello Veera,
i'm facing the same issue with DS 1.5 and found a small workaround to remove the selection on a Crosstab. You just have to assign a new DataSource to the Crosstab before assigning the old one again.
CROSSTAB_1.setDataSource(DS_ANY);
CROSSTAB_1.setDataSource(DS_TO_SHOW);
After calling this script the selection on the Crosstab should be removed.
Regards
David
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Hi David
Good news!!!
I believe that I've founded a small workaround that seems to be working.
Instead of using CROSSTAB_1.removeSelection(); - that makes the table disappear - follow the below steps:
After user selection of rows on the crosstab:
1 - Click on "Swap DS" button
CROSSTAB_1.setDataSource(DS_1); //new DS
CROSSTAB_1.setDataSource(DS_1); //DS to be displayed
CROSSTAB_1.setVisible(false);
CROSSTAB_1.setVisible(true);
2 - User clicks on "make invisible" button
CROSSTAB_1.setVisible(false);
3 - User clicks on "make visible" button
CROSSTAB_1.setVisible(true);
If I follow these steps the selection disappear!!!
Try it? Does it work for you also?
A. Santos.
PS. This is a poor workaround so I think SAP should provide a fix for this "bug".
Hi Santos,
you're right - my workaround is in a diffrent context which seems to bee important for the functioning:
I called the script while the crosstab is on a diffrent page of a pagebook. Same effect happens when the crosstab is not visible. But only if you seperate this in two single calls.
So this script is not working:
CROSSTAB_1.setVisible(false);
CROSSTAB_1.setDataSource(DS_2); //new DS
CROSSTAB_1setDataSource(DS_1); //DS to be displayed
CROSSTAB_1.setVisible(true);
But if you first call this:
CROSSTAB_1.setVisible(false);
...and then this:
CROSSTAB_1.setDataSource(DS_2); //new DS
CROSSTAB_1setDataSource(DS_1); //DS to be displayed
CROSSTAB_1.setVisible(true);
it works!
Well, it is a messy workaround because you need two single calls. Maybe someone else finds a better solution.
Best
David
Hi David,
Setting datasource to a crosstab has an overload on the component, doing it twice causes a performance impact on the dashboard. Our customers are pretty strict about the performance of the dashboard and do not want the dashboard to become slower.
Is there no other workarounds that would not involve assigning data sources to crosstab?
We tried setting visibility to the crosstab as well and that did not help. We actually do not have crosstabs hidden in my client dashboard.
I will keep working on this..
Regards,
-Veera
Hi,
once again - it seems to be a bug, if one of you could open the ticket it can be checked by support and development.
if the issue is with visibility change, I can imagine one workaround for now. instead setting to invisible, use the left margin and set it to 0 - width (in the negative area). then you will have "visible" technically crosstab but not visible for the user.
eg. CROSSTAB.setLeftMargin(-2000);
then, switch visible means, set it to some real margin.
Perhaps someone can check this.
Karol
User | Count |
---|---|
82 | |
10 | |
10 | |
9 | |
6 | |
6 | |
5 | |
5 | |
4 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.