You can use a SQL query to populate the recipients of a scheduled report, and the parameters used when making the report itself.
Preparing the SQL statement
The SQL statement should return one row per report configuration, and columns configured like this:
Role | Locale | Parameter1 | ... | ParameterN | |
recipient1@example.org | Role1 | en-US | Value1 | ValueN | |
recipient2@example.org | Role2 | fr-FR | Value1 | ValueN | |
recipient3@example.org | Role3 | fr-FR | Value1 | ValueN |
Email : The email address for the recipient of the scheduled report. This can be a semicolon-delimited list, which then shares the rest of the parameters, for example recipient1@example.org;recipient2@example.org.
Role: The Analysis Services role to use when preparing the report.
Locale : The culture to use when preparing the report.
Parameters : Any Web Parameters to use to populate the report.
Populating web parameters
The columns returned by the SQL statement above can be used as dynamic parameter placeholders. For example, if you return a column named AccountName, you can now use the parameter placeholder %AccountName% when configuring the report to use. Note that SQL columns used as placeholders must be string types, for example, char, varchar, text, or their Unicode equivalents.