Multi-Level Expand and Filter for Client Page Datagrid using Odata

I'm unable to filter a Column in an expanded item. The other column filters work with no issue but not the one highlighted which the only difference seems to be the column I'm trying to filter is 2 levels deeper:

I would expect if ProductMaterial/Product is declared in expand property it should work or am I missing something? Can you please show me the proper syntax and/or better approach to do this?

Thank you for your response, this is my first post and I was not sure if this is the right place to post for my 16 hour dedicated support!

I did see the link you provided and followed the same and it seems to help expand access to underlying child tables but for some reason not the filtering part. I think maybe I don't understand the syntax and I'm unable to find anywhere in your documentation that is specific to this and/or more advanced use cases. When I use the query builder to invoke it only gives me a very basic first level option to expand and filter capability for the UI therefore unable to follow and expand the C# syntax output of the query builder to build upon.

I'm aware of this video you uploaded: Three Level Hierarchy Datagrid but I'm unable to follow and replicate as your video is tailored for old Radzen Blazor. I think it would be very helpful and intuitive for your customers if you can please upload a version of the same but for Radzen Blazor Studio, are you able to do this?

Hi @Ramses915,

I think you should set the expand setting to:

expand: "Order,Status,Plant,ProductMaterial($expand=Product)"

according to the OData spec and the linked forum thread.

What happens when you do that? Also how does the final query look like (as a complete URL)? You can check that from the browser's developer tools.

We may do that in the future. To be quite honest I don't consider a three level datagrid the best UX. It is very easy to get lost in the hierarchy especially when showing more than a dozen records.

Hi Enchev/Korchev,

Reporting back, yes I was able to figure out the issue. The solution was to use the nested expand ProductMaterial($expand=Product) as you both suggested. Also, even more helpful was using the developer tools, which I was not aware could give me more readable insight to the URI header/payload data that was being sent. Thanks for this!

I'm almost there with this filter however, having trouble implementing that last part to this which is the Excel like filter as your demo here Filter Like Excel Demo.

Not sure if you've seen this but for some reason it underlines "apply" as it doesn't recognize it...Do you know why?:

image

Indeed $apply support is available at the moment only in our demo service - we will check if it's safe enough to add it to the generated service by Radzen Blazor Studio for our next update.

UPDATE: We've added the apply parameter and it will be available in our next update next week.

Excellent news...I was going crazy re-installing everything.

Thank you! :sweat_smile: