How to Know which Cell Value was Clicked
In a SQL report that displays a table control, how can I determine which cell in a table was clicked by the user?
Image a simple SQL report called MainReport that has one parameter and one tablix control. It is a 2-column table control, where the first column will list the names of backup jobs, and the second column will list the time that each job was completed. When you browse to MainReport, you enter a parameter date, such as today’s date (e.g. 04/16/2014), and click [View Report]. The table within the report will then display all of the backup jobs that ran on that date, similar to the following:
Backup Job | Time Completed
X-Job | 12:14 AM
Y-Job | 3:02 AM
Z-Job | 8:46 AM
Z-Job | 6:05 PM
I have the Action property of the cell under the Time Completed column set to Go To Report. Therefore, when you click on a time value, you are redirected to a report called DetailsReport. For example, when you clicked on 8:46 AM, you are redirected to the DetailsReport, and the report will list file names, file types, file sizes, etc. of each file that was backed up by Z-Job on 04/16/2014 @ 8:46 AM. Using the Go To Report action is easy to do, because this action allows you to select which dataset columns should be used to filter the DetailsReport.
The users, however, do not like the fact that when you click a value under the Time Completed column, it displays the DetailsReport in the same browser window. What they want is to have a new browser window appear (or a new tab) that displays the DetailsReport, and to have the original browser window continue displaying the MainReport.
I can change the Action property and have it Go To URL, instead of Go To Report, and have the URL open DetailsReport in a new browser window. I can even pass the date parameter within the URL. But what I can’t figure out is how to determine which time value was clicked. Along with the date, it is also important to know which time value was clicked in order to properly filter the DetailsReport.
Does anyone know how to do this?