Crear conjuntos de datos de informe a partir de SQL Server Integration Services

Puede crear un informe de Reporting Services que usa datos generados al ejecutar un paquete de Integration Services. El paquete debe cumplir los requisitos mínimos que se describen en este tema.

[!NOTA]

No se admite la extensión de procesamiento de datos SSIS. Esta extensión de procesamiento de datos es una característica que no es de producción y que está desactivada de forma predeterminada. En estos momentos no se recomienda el uso de la extensión de procesamiento de datos de SSIS en un servidor de producción. Si decide habilitar esta característica y utilizarla en el servidor de informes, tenga presente que, en tiempo de ejecución, el paquete se procesará con la identidad de seguridad de la cuenta del servicio Servidor de informes de Windows o de la cuenta del servicio web del servidor de informes. Esto afectará al modo de proteger los orígenes de datos a los que tiene acceso el paquete. Para obtener más información, vea Configurar Reporting Services para utilizar datos de paquetes de SSIS.

El siguiente flujo de eventos explica el procesamiento de datos para un informe que utiliza datos de paquete:

  • El procesamiento de un informe se inicia cuando un usuario abre un informe o cuando el servidor de informes genera el informe por una operación programada.

  • El servidor de informes se conecta al archivo del paquete (.dtsx) almacenado en el sistema de archivos o en la base de datos msdb. La cadena de conexión del informe debe especificar una ruta de acceso completa al archivo del paquete.

  • El servidor de informes pasa la consulta definida en el informe a Integration Services para procesarla. La consulta es el nombre del destino de DataReader.

  • El servidor de informes recupera y después mezcla los datos en un diseño de informe, y lo representa según lo especificado.

No se puede desencadenar el procesamiento de un informe desde un evento de Integration Services. Los modelos de evento de los productos no están integrados. El procesamiento de un informe se debe iniciar desde Reporting Services.

Antes de seleccionar SSIS como tipo de origen de datos, debe configurar la cuenta de ejecución desatendida y la extensión de procesamiento de datos SSIS. Para obtener más información, vea Configurar la cuenta de ejecución desatendida y Configurar Reporting Services para utilizar datos de paquetes de SSIS.

Diseñar el paquete

No todos los paquetes se pueden utilizar para proporcionar datos a un informe. Los requisitos de paquete para datos de informe incluyen el uso de un destino de DataReader que proporcione un destino en memoria. La lista siguiente explica los requisitos y los pasos adicionales para crear el paquete y el informe.

  1. En Integration Services, cree un paquete que tenga al menos una tarea de flujo de datos que rellene uno o más destinos de DataReader. El objeto de destino debe incluir las columnas de entrada que desee utilizar en el informe.

  2. Configure una conexión con un origen de datos externo. Si el paquete se conecta a un origen de datos relacional de SQL Server, puede elegir entre la autenticación de Windows y la de SQL Server. Al configurar la conexión, utilice la autenticación de SQL Server con una contraseña almacenada.

  3. Ejecute el paquete para comprobar que devuelve los datos esperados. Para obtener más información sobre cómo configurar un visor de datos que muestre los datos devueltos por el paquete, vea Cómo agregar un visor de datos a un flujo de datos.

  4. Guarde el paquete en una carpeta del sistema de archivos o en SQL Server. No es posible guardar el paquete en el almacén de paquetes SSIS.

  5. Anote el nombre del destino de DataReader que contiene el conjunto de resultados que desea utilizar en el informe. Especificará este nombre más adelante como la consulta del informe.

Definir la conexión y la consulta en un informe

Después de definir el paquete, puede crear un informe que utilice la extensión de procesamiento de datos SSIS. El informe debe incluir un conjunto de datos que especifique una conexión con el paquete. La consulta del conjunto de datos es el nombre de un destino de DataReader. Las credenciales que defina en el conjunto de datos se utilizarán para ejecutar el paquete. La lista siguiente ofrece más información acerca de las definiciones de conexión y consulta que debe especificar en el conjunto de datos del informe:

  • El origen de datos debe ser de tipo SSIS.

  • El tipo de credencial puede ser Sin credenciales o credenciales de Windows. No puede utilizar la autenticación de base de datos. La primera vez que cree la conexión en el conjunto de datos del informe, las credenciales se establecerán automáticamente en Sin credenciales. Después de publicar el informe, puede usar el Administrador de informes o SQL ServerManagement Studio para cambiar el tipo de credencial a la seguridad integrada de Windows o a una cuenta de usuario de Windows almacenada. Si almacena las credenciales, asegúrese de seleccionar la opción Usar como credenciales de Windows para la conexión al origen de datos. No se admiten credenciales solicitadas.

  • La cadena de conexión con el paquete debe ser una ruta de acceso completa al archivo del paquete (.dtsx) en el sistema de archivos o msdb. Use los argumentos -file o -sql de la utilidad dtexec. No es necesario que especifique la utilidad en sí. La extensión de procesamiento de datos SSIS ejecuta la utilidad como un proceso en segundo plano. Para obtener más información acerca de los argumentos de la línea de comandos, vea dtexec (utilidad). El ejemplo siguiente ilustra la sintaxis de la cadena de conexión que puede utilizar para recuperar un paquete del sistema de archivos:

    -f c:\datafiles\packages\reportdatapackage.dtsx
    
  • La consulta es el nombre del destino de DataReader. De manera predeterminada, el nombre es DataReaderDest. Puede reemplazarlo por otro nombre.