Filter Request from Custom Domo App
Hi everyone, I am currently working on a custom Domo app using React, and I'm trying to develop an interactive filter app. I've researched the domo.js library and found that it mainly provides functionality for managing and operating datasets, users, groups, etc., in Domo. However, it doesn't seem to be suited for sending filter requests with the Domo App Framework for real-time interactive operations.
For instance, the one I am trying to achieve: when I click somewhere on the filter app, other cards in the same dashboard can receive filter requests from the app.
In light of this, I would like to seek help on the best approach to implement a filter in a Domo custom app. Specifically, I would like to know if there are any existing APIs or methods that would allow me to achieve this functionality. If there are no direct APIs or methods available, any suggestions or workarounds for achieving this goal would be greatly appreciated!
Best Answer
-
Guys, just share some updates on this:
After some extensive research and communication with domo support team, it seems that creating custom filter to affect all cards and custom apps on the same dashboard is not directly feasible, due to isolated environment where domo cards and custom apps live on.
In other words, while we can manipulate the data sources powering these cards and apps, we cant control their behaviours directly from an external custom app filter as they do not share any state or context.
I appreciate the assistance from domo support team in helping me understand the current capabilities and limitations.
Cheers.
0
Answers
-
Have you looked at the domo.filterContainer() method?
**Was this post helpful? Click Agree or Like below**
**Did this solve your problem? Accept it as a solution!**1 -
Hi Grant,
Thank you for your suggestion! I have indeed looked into the
domo.filterContainer()
method. However, this method is specifically for creating a filter container within my custom app, which affects the data displayed within the app itself. My goal is to send filter requests to other cards within the same dashboard when an interaction occurs within my custom app.To provide a simpler example, let's say I want to use the Domo custom app to develop a filter UI. I would like this custom filter to work similarly to Domo's native filters within a dashboard, affecting the data displayed on other cards in the same dashboard based on the option selected/entered. So, while the
domo.filterContainer()
method is useful for creating filters within the custom app, it doesn't directly address my need to send filter requests to other cards in the dashboard.If you has any further suggestions or insights on how to deal with this, I would greatly appreciate it! : )
0 -
Guys, just share some updates on this:
After some extensive research and communication with domo support team, it seems that creating custom filter to affect all cards and custom apps on the same dashboard is not directly feasible, due to isolated environment where domo cards and custom apps live on.
In other words, while we can manipulate the data sources powering these cards and apps, we cant control their behaviours directly from an external custom app filter as they do not share any state or context.
I appreciate the assistance from domo support team in helping me understand the current capabilities and limitations.
Cheers.
0 -
domo.filterContainer() would add a filter on top of the page similar to what chart interactions do. This would then filter your other charts / cards/ apps if that same column is encountered in the dataset powering them.
I wonder if this is what you are looking for. This is not just limited to the app, but it does actually filter the entire page.'Happy to Help'0 -
From what I understand, when you interact with customAppA, and push a filter from customAppA, you want customAppB to listen on that filter event and have some sort of effect occur.
You can try using
domo.onFiltersUpdate((filters: domoFilters[]) ⇒ doSomethingWith(filters));
in customAppB0 -
As highlighted by @GrantSmith, the
domo.filterContainer()
function within the app framework api can be used to apply filters to the entire page, which in turn affects the other cards on the same page/dashboard, assuming the filter definitions passed in are also applicable to those cards (and the cards have filter interactions enabled within the dashboard)
Other custom apps on that same page/dashboard can/will also have those filters passed in, which can be handled using thedomo.onFiltersUpdate()
event handler also mentioned above by @dnguyen.
I think custom apps can alternatively handle filters via the iframe's url; using the pFilters url parameter.0
Categories
- All Categories
- 1.8K Product Ideas
- 1.8K Ideas Exchange
- 1.5K Connect
- 1.2K Connectors
- 300 Workbench
- 6 Cloud Amplifier
- 8 Federated
- 2.9K Transform
- 100 SQL DataFlows
- 616 Datasets
- 2.2K Magic ETL
- 3.9K Visualize
- 2.5K Charting
- 738 Beast Mode
- 57 App Studio
- 40 Variables
- 685 Automate
- 176 Apps
- 452 APIs & Domo Developer
- 47 Workflows
- 10 DomoAI
- 36 Predict
- 15 Jupyter Workspaces
- 21 R & Python Tiles
- 394 Distribute
- 113 Domo Everywhere
- 275 Scheduled Reports
- 6 Software Integrations
- 124 Manage
- 121 Governance & Security
- 8 Domo Community Gallery
- 38 Product Releases
- 10 Domo University
- 5.4K Community Forums
- 40 Getting Started
- 30 Community Member Introductions
- 108 Community Announcements
- 4.8K Archive