All I think I found an issue with Views and the re...
# gooddata-ui
s
All I think I found an issue with Views and the reset filter in the GoodData UI/SDK/etc. Seems that when you interact with the reset filter button, it destroys the views you have saved.
Even after a refresh, they do not work. Only way to address is to delete them and re-create them.
Correction, As soon as I interact with the navigation thats filtered, the views start to work again. But its like they're stuck because of the filter reset and until you "unblock" the reset by interacting with the filters you get your views "back"
Same "views" but I moved the filter item and magically they start working again.
@Josh Roberts fyi
👍 1
very strange. In this example, same views, but interact with different filters, even those that cross-filter and change the grouping. The view selection goes back to the "reset" view. Then again, only when I interact with that specific filter do the views work.
Screen Recording 2025-07-09 at 3.00.42 PM.mov
m
Hi Steve, thank you for reporting this. The behaviour does not look intended indeed, could you let me know if you are having the same issue in the platform? Additionally, what SDK version are you using? Ideally, please share the package.json file. Thanks!
s
This is in gooddata ui directly
Its the same in the SDK, but its directly within gooddata that I recorded these videos. Originally I saw this happening in our embedded solution, but when I saw the same behavior, I switched over to the gooddata ui to see if it was our implementation/sdk or something else
m
Thanks for the details. Could you please send me a direct link to the workspace in question? I will take a closer look.
s
We saw it in every workspace/dashboard we have, but this is the one I used for the videos https://analytics.golmn.com/dashboards/#/workspace/LMN_31259/dashboard/31bfea7f-73ed-4873-a5b0-28bfcf75a4f4
@Moises Morales any update here?
m
@Steve Fox our apologies for the radio silence, please be aware that according to your subscription, you can also reach out to us via an internal ticket any time; I would recommend keeping this in mind depending on how critical the issue is. We have checked the dashboard entity in the parent workspace: https://analytics.golmn.com/dashboards/#/workspace/LMN_Single_Parent/dashboard/31bfea7f-73ed-4873-a5b0-28bfcf75a4f4 and found that the definition for the filter attribute in the filter context is using the incorrect id; For example, in the following filter context:
Copy code
"attributeFilter": {
"displayForm": {
"identifier": {
"id": "DIM_DIVISION.DIM_DIVISION_ID.divisionname",
"type": "label"
}
},
"selectionMode": "multi",
"localIdentifier": "94769c46b0894461aa53bec77665bb7e",
"attributeElements": {
"uris": []
},
"negativeSelection": true
}
},
The id is set to
DIM_DIVISION.DIM_DIVISION_ID.divisionname
, instead of
DIM_DIVISION.DIM_DIVISION_ID
. If you change the id so it is set to the primary label of the attribute, then the saved view will behave correctly. You can check the definition from the filter context entity, e.g:
/api/v1/entities/workspaces/LMN_Single_Parent/filterContexts/bda52822-1164-49e4-97ef-4b2d299dda7b
and modify it via a PUT call.
s
Not following, that filter is using the attribute for display are we saying that we have to use the ID's to display?
Also we were using the Job Group filter, not division.
Are you saying we cannot use "Display Values AS" and have the filters work with views properly? Seems like an issue to me.
m
That's correct, you will always have to use the primary label as the id for the attribute in the filter context. Regarding the Job Group filter, I see it has the same issue: Definition in the filter context:
Copy code
{
            "attributeFilter": {
              "displayForm": {
                "identifier": {
                  "id": "DIM_JOB_GROUP.JOB_GROUP_ID.jobgroupname",
                  "type": "label"
                }
              }
But according to the LDM, it should be:
DIM_JOB_GROUP.JOB_GROUP_ID
Let me know if you are still experiencing the same issue after setting the correct ID.
s
I'm sort of confused then. Are we saying our PDM is backward?
I cannot use the group_id as the primary in the filter -> it would be just a list of numbers....
thats why we say to use the jobgroupname.
m
There are no issues with your PDM, the issue here is specifically related to the ID in the filter context definition highlighted previously. You can check for instance, the metadata for the dashboard entity and see the "displayAsLabel" key under the attributeFilterConfigs array, this defines the label you are using for the filter, e.g., if you are using the secondary label, that's OK, but if you check the definition for the filter context, it has incorrectly assigned this same label (secondary) instead of the primary one; The id of an attribute in the filter context entity can only be its primary label.
s
I feel like something is off here. If the attribute is defined based on the id, I'm using the secondary attribute to do the filtering, yet you're saying Gooddata is using the attribute's secondary label as the filter context. How do I fix it? Apologies, I feel like I'm missing something fundamental here.
m
It can be done via a PUT call. You can check the definition from the filter context entity, e.g:
/api/v1/entities/workspaces/LMN_Single_Parent/filterContexts/bda52822-1164-49e4-97ef-4b2d299dda7b
. We noticed this behaviour on a another customer's setup and it was fixed the same way.
s
@Moises Morales sorry that this took so long for me to get back to, but I'm having some trouble trying to fix this issue. 2 things 1. I switched the primary label to be the name, so that when I default bring in the column things match 2. regardless of how I setup the LDM -> whenever I select the name instead of the ID, the attribute ID uses the "wrong" value as you describe here. According to what you're saying in this thread, the ONLY way for this field to work properly is for me to use the ID field for sorting, which seems like I'm at a loss for how to implement this while showing the meaningful value with the Display text. For background, we've found that we need to name the ID field as the base and then add things like the display name or other labels ontop to make sure that when using these the sorts/filters use the ID field to define the query. But for some reason this one does not.
m
Thanks for following the steps and no worries, it is in our best interest this is cleared out. Just to make sure, could you please send over a link to the dashboard with the issue persists? I will explore once again all possibilities for the issue to make sure nothing was overlooked last time. Once I get the link to the dashboard, I will circle back to you with my findings. Thanks!
The LDM for Job Group has been changed such that the • DIM_JOB_GROUP.JOB_GROUP_ID.jobgroupname is the default • DIM_JOB_GROUP.JOB_GROUP_ID is the attribute
I have not verified if switching the default "fixed" the issue, but when I export the view, the attribute ID for the filter is still saying jobgroupname (instead of the job group). Not sure if I'm understanding the json well enough to get how that comes through.
image.png
So I clone the original dashboard, then manually added the filter using the UI. I've tried it a couple of different ways, one without the change to the LDM, one with and then switching back and forth. The ONLY time that the attribute filter context showed what you provided as the example was when the values shown in the filter were the ID numbers, not the display text. I do have a version of this dashboard in an environment where the LDM is not updated if that helps. @Moises Morales any updates? I'm definitely interested in trying to complete this issue if I can.
Morning, I've been doing some investigation into this issue further and I'm still seeing strange results. I have another filter in the same dashbaord as the one we discussed. I've verified it was setup correct • Attribute filtered on display as is the default view • Using views I could see the attribute not clearing properly • Then I simply edited to filter, changed it around/put it back, then the filter was saving properly So I feel like this is not deterministic. Like almost like filters created years ago are no longer accurate and therefore we just need to edit them to "fix" them. Is that possibly the reason for our issues? Something has changed with how filters are stored/created now and something older is not correct model wise?
m
Morning Steve, thank you for the additional remarks and further investigation. In the end it does seems that the issue is due to those secondary levels used instead of the correct one, although I am still double checking this on my end and working on a reliable reproducer. I will circle back to you with an update as soon as I know more. In the meantime, do you know by any chance how were the filters created originally? Was it done programmatically or via the UI?
s
Via the UI.
I really can't get a consistent fix nor a consistent behavior. • different dashboard with the appropriate setting ◦ primary is the id ◦ default view is the name attribute When I use the default view, I can get the reset filter to work, but the view I created doesn't work after. Can we have some kind of a call/demo session? I'm really trying to figure out if we have something wrong in our LDM assumption, or perhaps our filter setup but not sure whats happening. Also in the console i'm seeing this message: • AttributeFilter: Filter's displayForm is not primary -> migrating filter to primary label I'm assuming thats expected because I'm using the default attribute to display the names/values and the filter is falling back to the primary attribute which is the identifier.
@Moises Morales I submitted a support request to get this into a more formal understanding. https://support.gooddata.com/hc/en-us/requests/129854 Wonder if our issue relate to a miss-understanding on primary vs default view? • primary -> id • default -> display I have lots of attributes setup "correctly" as far as I understand but we don't seem to be making any consistent improvements.