While using OOTB Dashboard metrics template, keep getting The selected page ABC expects an object of type Y, which is not available here.
Hi, While using the OOTB "Dashboard metrics" template, I keep getting this error: "The selected page 'ABC' expects an object of type 'Y', which is not available here." My questions are: Why would a dashboard be passed an object at all? I get the same error using a microflow which retrieves object Y from an association with X from the calling page. I get the same error using the Report Chart widget. While I understand the premise of the error message, how do I resolve this without starting from an overview page with a list view, since these widgets actually handle lists of objects to graph? What am I missing? Any hints are appreciated, Guislain
What you need to do here is start with a dataview and then use the widget. Most widget need to know about which entity we are working with. Chart widget need most of the time a specific enity to be able to show data. Now how to retrieve the right object for the dataview? Either use the listen to functionality in a datagrid. The the dataview will 'listen' to the datagrid and pass the selected object in the grid to the dataview. Another option would be a datasource microflow that retrieves by logic the right object to pass to the dataview.
Hope this helps a bit. If not edit your original question so we can help you further.
Thanks for the prompt answer.
The OOTB Dashboard does embed the TimeSeries widget inside a DataView. Specifically in this case, I configured them as follows:
The DataView's DataSource is Context=My_Sustainability_App.Result
The TimeSeries widget's Series is DataEntity=My_Sustainability_App.Result (the same)
yet the calling page throws this error:
Message: "The selected page 'Results_Energy' expects an object of type 'Result', which is not available here."
Element: "Property 'Page' of action button 'ResultsIconActionButton'"
Page: "Page 'Dashboard':
My solution has been to add a List View from the calling "Dashboard" page, which feels like a work around. Is there a more elegant way?
A more elegant solution would be a dataview where the data source is a microflow.
In the microflow you can use for example the $CurrentUser variable, enabling you to display user associated data on your dashboard.