Puede usar contextos de informes para aplicar filtros a los conjuntos de datos cuando se ejecuta una definición de informe o se muestra la vista previa de una parte o una plantilla de informe. Cada contexto proporciona un filtro distinto. Un filtro completa una tabla temporal con una lista de elementos a los que puede UNIRSE, lo que luego limita las devoluciones de sus consultas.
En la siguiente tabla, se indican los contextos de informes disponibles, la tabla temporal que usa cada contexto y la columna para UNIRSE.
Máq. |
Nombre de la tabla |
Columna |
MachineFilter |
ReportCenter.MachineFilterList |
AgentGuid |
ServiceDeskFilter |
ReportCenter.IncidentsFilterList |
IncidentId |
AssetsFilter |
ReportCenter.AssetsFilterList |
AssetId |
DevicesFilter |
ReportCenter.DevicesFilterList |
DeviceId |
MobileDevicesFilter |
ReportCenter.MobileDevicesFilterList |
DeviceId |
TicketingFilter |
ReportCenter.TicketingFilterList |
TicketId |
Su consulta debe UNIRSE a una de las columnas de la tabla anterior e incluir una instrucción WHERE con el parámetro @ReportSessionId
de Parámetros conocidos. Esto asegura que obtenga los datos para la ejecución actual del informe.
Ejemplo
En el siguiente ejemplo, se usa el contexto MachineFilter.
SELECT COUNT(u.agentGuid) AS agentCount
FROM dbo.users u
INNER JOIN ReportCenter.MachineFilterList mfl ON mfl.AgentGuid = u.agentGuid
WHERE mfl.ReportSessionId = @ReportSessionid AND u.firstCheckin IS NOT NULL
Así es como se lo introduce en el cuadro de diálogo de edición de la parte de valor de nombre.