Select to view content in your preferred language

Table Widget doesn't want to load if I don't click on the widget

479
6
Jump to solution
09-04-2024 04:21 AM
JasonBOCQUET
Frequent Contributor

Hi everyone, I have a strange bug today.

Let me explain to you, here is my application :

JasonBOCQUET_0-1725448329819.png

as you can see, the first tab is a map view, the second tab is about a Table view.

The right side is about to filter the data on the map and on the Table.

 

So here is the problem : When you enter on the application you are on the map tab view. If I don't click on the "Table Etablissement" tab, then I use filter and finally click on the Table tab, the widget is blank.

JasonBOCQUET_1-1725448583395.png

As you can see on my screenshot, on the right the counter was correctly actualized with what I filter (3 establishment remaining) but the table is not actualized.

 

Now, if I launch my application, click on the Table tab, back again on the Map tab and do the same manipulation (filtering data and click on the Table tab) the data appears correctly on the Table.

JasonBOCQUET_2-1725448736335.png

 

As you can see on this screen, now it's working.

 

So my question here is simple : Why do I have to click on the table tab for the Table widget to finally work?

0 Kudos
2 Solutions

Accepted Solutions
JasonBOCQUET
Frequent Contributor

Ok @Shen_Zhang i have new information.

I look for the Section Widget parameter and I see this :

JasonBOCQUET_8-1725524998135.png

 

The Lazy Loading was not crossed.

So I made a test : launch my app without checking the box : obviously the bug is present.

I launch again with checking the box (only for the Table tab) : I filter on the map tab and click on the table tab and WOW magic, IT WORKS ! my tab loading and was actualized, not blank !

 

But it keep a mystery : I'm going again on my 1.14 dev edition to see if I have check this box before... and the answer is nope. The table loading correctly without checking this functionnality on 1.14

 

tl;dr : on 1.14 everything works, box checked or not. On 1.15 i'm forced to check this box to have a result on my Table tab view if I filter before clicking on this tab.

 

So, what's going on to this difference between 2 versions ? 

 

 

View solution in original post

0 Kudos
Shen_Zhang
Esri Contributor

@JasonBOCQUET thank you so much for providing so many details to troubleshoot. Based on your description I can confirm this is indeed a known bug introduced from the ArcGIS Maps SDK featureTable component. The bug is: Sometimes the table widget shows blank records when filters are applied. These blank records should be filtered out. Both the Experience Builder team and the Maps SDK team are aware of this issue.

From the ExB side, we made a fix in 1.15 that the table widget forces to refresh itself whenever the filter on the data changes. Unfortunately, it wasn't able to cover the case we're facing at the moment - the table widget is invisible when the filter changes, so when the table renders (the filter does not change at that exact moment but before) it doesn't refresh itself. The best way to verify what I said above is to refresh the table when you see the blank rows. It should display the correct results after the manual refresh.

That's why you see different behaviours when the lazy loading option is on/off. If you turn on lazy loading for the table tab, the table widget will only render until you go to the tab so it can pick up the filter changes. 

We are working to get this solved in the next release. For now please check lazy loading as a walkaround. Thanks again for your time on this issue!

Shen Zhang

View solution in original post

0 Kudos
6 Replies
JasonBOCQUET
Frequent Contributor

For information, i'm actually works on Experience Builder Dev Edition 1.15

 

I made a test few minutes ago and come back to a previous version of my application in EXB Dev 1.14 and I have not this problem.

 

So it's a "bug" only present with the 1.15 edition of EXB ?

0 Kudos
Shen_Zhang
Esri Contributor

Hi Jason, thank you for the feedback. Looks like you are using a Views Navigation widget to switch between views. I did something similar but was not able to reproduce the bug you encountered. Can you share more information on the design of your app? A few screenshots on TOC, types of data sources and app layout would be of great help. Thanks!

Shen Zhang
0 Kudos
JasonBOCQUET
Frequent Contributor

Hi @Shen_Zhang thanks for your reply !

Yes I used a View Navigation Widget to switch between my views.

 

Here some screen that I hope can help to solve the problem :

 

JasonBOCQUET_0-1725523619211.png

Here you can see the View Navigation Widget embed on a Fixed Panel Widget with the 3 views in the right panel.

JasonBOCQUET_2-1725523703090.png

Here the second Fixed Panel widget who contering the Section widget which manage the 3 views. I develop the "Table" tab view to see the widget and on the right the settings.

The other 2 Fixed Panel are here to manage the bottom page with the button to see layers by thematics

JasonBOCQUET_3-1725523802265.png

 

and to manage the Filter Zone on the right side of the application

JasonBOCQUET_4-1725523842149.png

 

For the Table Widget specifically :

JasonBOCQUET_5-1725523878257.pngJasonBOCQUET_6-1725523886540.pngJasonBOCQUET_7-1725523905013.png

 

For me there is nothing specific on the parameter;

I change litteraly nothing between the 1.14 and the 1.15.

But in 1.14 it works without any problem. In 1.15 I have the problem that I describe.

 

To finish, the data on my table are the following : 240.000 rows with 32 collumns, Data, Int, Text  data type, nothing strange.

 

I don't know what other kind of information can I give to you ; tell me if you need something else ?

0 Kudos
JasonBOCQUET
Frequent Contributor

Ok @Shen_Zhang i have new information.

I look for the Section Widget parameter and I see this :

JasonBOCQUET_8-1725524998135.png

 

The Lazy Loading was not crossed.

So I made a test : launch my app without checking the box : obviously the bug is present.

I launch again with checking the box (only for the Table tab) : I filter on the map tab and click on the table tab and WOW magic, IT WORKS ! my tab loading and was actualized, not blank !

 

But it keep a mystery : I'm going again on my 1.14 dev edition to see if I have check this box before... and the answer is nope. The table loading correctly without checking this functionnality on 1.14

 

tl;dr : on 1.14 everything works, box checked or not. On 1.15 i'm forced to check this box to have a result on my Table tab view if I filter before clicking on this tab.

 

So, what's going on to this difference between 2 versions ? 

 

 

0 Kudos
Shen_Zhang
Esri Contributor

@JasonBOCQUET thank you so much for providing so many details to troubleshoot. Based on your description I can confirm this is indeed a known bug introduced from the ArcGIS Maps SDK featureTable component. The bug is: Sometimes the table widget shows blank records when filters are applied. These blank records should be filtered out. Both the Experience Builder team and the Maps SDK team are aware of this issue.

From the ExB side, we made a fix in 1.15 that the table widget forces to refresh itself whenever the filter on the data changes. Unfortunately, it wasn't able to cover the case we're facing at the moment - the table widget is invisible when the filter changes, so when the table renders (the filter does not change at that exact moment but before) it doesn't refresh itself. The best way to verify what I said above is to refresh the table when you see the blank rows. It should display the correct results after the manual refresh.

That's why you see different behaviours when the lazy loading option is on/off. If you turn on lazy loading for the table tab, the table widget will only render until you go to the tab so it can pick up the filter changes. 

We are working to get this solved in the next release. For now please check lazy loading as a walkaround. Thanks again for your time on this issue!

Shen Zhang
0 Kudos
JasonBOCQUET
Frequent Contributor

@Shen_Zhang thanks for your reply and your explanation. So, it's definitly a bug.

I have thinking about the refresh on the table. But if I start my application, filtering without clicking on the Table tab, the Table was blank and the Refresh button stay inactive because the widget think there is no data on the table.

So it's not possible to "refresh" with the button. I'm forced to click on the table tab, see the blank table and refresh by F5 on the page. 

 

Thank you for your time. The Lazy loading it's a good solution, it's a win-win for me, no more problem and my application load faster.