Receiving “No data to retrieve in <query>” or “There is no data corresponding to this query…” pop-up boxes is very confusing for end users. In addition your Web Intelligence (viewers and Java Report Panels) and Desktop Intelligence document may look not as intended. It will typically show column headers without any content, zero totals, and some formulas may even display awkward error messages.
Causes for the “No data to retrieve in” message
There could be lots of different factors. I list the most common issues
- Parameters and/or report conditions are too restrictive or negating each other.
- The data is missing in the table you query from the report
- Row-level restrictions for the current user
- Incorrect universe connections
However there are times when you may expect that report will not have any data for any or all queries. So how can we suppress this pop-up window
Suppressing the “No data to retrieve” message?
To overturn this message some Business Objects forum threads proposing the use of VB macro or some other SDK integration. Yet there are more simple ways to do this.
1. Use conditions in the report objects. Create a variable that will hold number of rows returned by data provider eg variable “RowCount”, formula =NumberOfRows(DataProvider(<MyQuery1>))
The next step is to assign condition to your table/chart to be visible when datasourse returns some data and hide it otherwise. Create “No data” block to display when datasource contains no data. Position both objects on top of each other
2. Create a union in your datasource query such that always one of the queries returns a value. I usually use my dummy empty objects for the second query. The only catch is that number of objects and objects types in the “Result Objects” pane must be the same. To keep you report clean you may need to add report level filter. Note dummy objects must reference dummy table or view in order to parse in Designer.