Secuencias de comandos para tareas administrativas y de implementación

Actualizado: 12 de diciembre de 2006

Reporting Services admite el uso de secuencias de comandos para automatizar las tareas rutinarias de instalación, implementación y administración. La implementación de un servidor de informes es un proceso de varios pasos en el que deben utilizarse varias herramientas y procedimientos de configuración: no existe ningún programa o método que automatice todas las tareas.

Tampoco se recomienda automatizar siempre todos los pasos. A veces, la manera más sencilla y eficaz de realizar un paso es hacerlo manualmente o a través de una herramienta gráfica. Por ejemplo, si se desea implementar muchos informes y modelos, es mejor copiar las bases de datos del servidor de informes que escribir código para volver a crear el contenido del servidor de informes.

Algunos pasos requieren código personalizado. Por ejemplo, la configuración de los directorios virtuales y del servicio Web se puede automatizar, pero sólo si se escribe código personalizado que realice llamadas al proveedor WMI (Instrumental de administración de Windows) del servidor de informes. Si no se desea escribir código, deberá utilizarse la herramienta de configuración de Reporting Services para realizar este paso.

Para ejecutar la secuencia de comandos que configura un servidor de informes, debe ser un administrador local en el equipo que está configurando. Para obtener más información, vea Configurar un servidor de informes para la administración remota.

En este tema se describen los enfoques recomendados para automatizar algunos pasos específicos. Se mencionan varios programas e interfaces de programación; podrá ver descripciones de cada uno de ellos más adelante en este tema.

Tareas de implementación y procedimientos para automatizarlas

En la tabla siguiente se resumen todas las tareas de instalación y configuración que son necesarias para implementar un servidor de informes. Quizás le sea de utilidad para relacionar una tarea específica con un método que le permita automatizarla o realizarla de manera desatendida.

Tarea Método

Instalar Reporting Services

Puede ejecutar el programa de instalación desde la línea de comandos para realizar una instalación desatendida.

Puede utilizar el programa de instalación para instalar y configurar un servidor de informes, pero sólo si elige la opción de configuración predeterminada y el sistema cumple todos los requisitos de este tipo de instalación. Si no puede instalar la configuración predeterminada, deberá realizar una instalación de sólo archivos. Para obtener más información acerca de las opciones de instalación, vea Instalar Reporting Services mediante el programa de instalación.

Configurar un sitio Web en Servicios de Internet Information Server (IIS)

Reporting Services no proporciona funciones para crear o configurar un sitio Web. Para obtener más información sobre cómo automatizar esta tarea, consulte la documentación del producto IIS.

Configurar los directorios virtuales y el servicio Web del servidor de informes

Debe escribir código personalizado que realice llamadas al proveedor WMI del servidor de informes. No existen utilidades de línea de comandos ni plantillas de secuencias de comandos para configurar el servicio Web y especificar los directorios virtuales.

Si los requisitos del código le impiden automatizar este paso, es sencillo configurar el servicio Web y los directorios virtuales manualmente con la herramienta de configuración de Reporting Services. Para obtener más información, vea Configurar directorios virtuales del servidor de informes.

Crear, actualizar o configurar la base de datos del servidor de informes

Para automatizar la configuración de la base de datos, elija uno de los métodos siguientes:

  • Cree las secuencias de comandos GenerateNewDatabaseScript.sql, UpgradeDatabaseScript.sql o GrantRightsScript.sql a partir de las plantillas de secuencias de comandos predefinidas. Puede generar estas secuencias de comandos desde la herramienta de configuración de Reporting Services o llamando al proveedor de Instrumental de administración de Windows (WMI). Puede ejecutar las secuencias de comandos mediante programación desde una línea de comandos mediante la utilidad osql o desde una ventana de consulta en Management Studio.
  • Ejecute la utilidad rsconfig para configurar la conexión. No puede utilizar rsconfig.exe para crear o actualizar la base de datos. Si utiliza rsconfig, no olvide ejecutar la secuencia de comandos GrantRightsScript para conceder permiso a la base de datos del servidor de informes. Debe volver a generar y ejecutar la secuencia de comandos para cada cuenta de servicio. El número de veces que vuelve a generar y a ejecutar la secuencia de comandos depende de la manera en que ha configurado la conexión a la base de datos del servidor de informes. Debido a que hay dos cuentas de servicio, debe volver a generar y ejecutar las secuencias de comandos dos veces.

Configurar una implementación escalada

Para automatizar una implementación escalada, elija uno de los métodos siguientes:

Realizar una copia de seguridad de las claves de cifrado

Para automatizar el procedimiento de copia de seguridad de las claves de cifrado, elija uno de los métodos siguientes:

Configurar el correo electrónico del servidor de informes

Escriba el código personalizado que se ejecuta en el proveedor de WMI de Reporting Services. El proveedor admite un subconjunto de los valores de configuración de correo electrónico.

Aunque el archivo RSReportServer.config incluye toda la configuración, no utilice el archivo de forma automatizada. En concreto, no utilice un archivo por lotes para copiar el archivo en otro servidor de informes. Cada archivo de configuración incluye valores específicos de la instancia actual. Dichos valores no serán válidos en otras instancias del servidor de informes.

Para obtener más información sobre estos valores de configuración, vea Configurar un servidor de informes para la entrega por correo electrónico.

Configurar la cuenta de ejecución desatendida

Para automatizar la configuración de la cuenta de procesamiento desatendido, elija uno de los métodos siguientes:

Implementar un entorno de servidor de informes existente de manera que se incluyan la jerarquía de carpetas, las asignaciones de funciones, los informes, las suscripciones, las programaciones, los orígenes de datos y los recursos

La mejor forma de volver a crear un entorno de servidor de informes existente es copiar la base de datos del servidor de informes en una nueva instancia del servidor de informes.

Un método alternativo es escribir código personalizado que vuelva a crear el contenido del servidor de informes existente mediante programación. Sin embargo, tenga en cuenta que las suscripciones, las instantáneas del informe y el historial del informe no se pueden volver a crear mediante programación.

Algunas implementaciones pueden beneficiarse de ambas técnicas, es decir, restaurar una base de datos del servidor de informes y, después, ejecutar código personalizado con el fin de modificar la base de datos del servidor de informes para una instalación específica.

Para obtener más información sobre cómo modificar la ubicación de una base de datos del servidor de informes, vea Mover una base de datos del servidor de informes a otro equipo. Para obtener más información sobre cómo crear un entorno de servidor de informes mediante programación, vea la sección titulada "Duplicar un entorno de servidor de informes" en este tema.

Herramientas y tecnologías para automatizar la implementación del servidor

En la lista siguiente se resumen los programas y las interfaces que se pueden utilizar para automatizar las tareas de implementación y mantenimiento:

  • El programa de instalación se puede ejecutar en modo desatendido para instalar y, en algunos casos, configurar los componentes del servidor de informes. Debe elegir la opción de instalación de sólo archivos para que el programa de instalación configure una instancia de servidor de informes.
  • Se pueden utilizar el proveedor WMI del servidor de informes y las utilidades de línea de comandos de Reporting Services para la configuración local y remota del servidor.
    El proveedor WMI del servidor de informes expone las clases, propiedades y métodos que permiten al usuario configurar todos los aspectos de una instalación de Reporting Services, lo que incluye la especificación de cuentas de servicio, la configuración de directorios virtuales, la creación y configuración de la base de datos del servidor de informes o la configuración de un servidor de informes para la entrega por correo electrónico. Para utilizar el proveedor WMI, es necesario escribir secuencias de comandos o código personalizados. Para obtener más información, vea Reporting Services WMI Provider.
    Las utilidades de la línea de comandos (rsconfig.exe y rskeymgmt.exe) son una alternativa a escribir código. Se pueden escribir archivos de proceso por lotes que ejecuten las utilidades. Estas utilidades permiten automatizar algunas tareas de configuración, pero no todas.
  • Las plantillas de secuencias de comandos permiten generar secuencias de comandos listas para usar con el fin de crear, actualizar y configurar la base de datos del servidor de informes. Las secuencias de comandos se pueden generar en la herramienta de configuración de Reporting Services.
  • La herramienta de host de secuencias de comandos del servidor de informes (rs.exe) puede ejecutar código personalizado de Visual Basic que se haya escrito para volver a crear o mover el contenido de un servidor de informes a otro. Con este método, se escriben secuencias de comandos en Visual Basic, se guardan como archivos .rss y, después, se utiliza rs.exe para ejecutarlas en el servidor de informes de destino. Las secuencias de comandos escritas pueden llamar a la interfaz SOAP para el servicio Web del servidor de informes. Las secuencias de comandos de implementación se escriben siguiendo este método porque es posible volver a crear un espacio de nombres de carpetas del servidor de informes y su contenido, así como volver a crear la seguridad basada en funciones.
    También se puede utilizar rs.exe para ejecutar secuencias de comandos personalizadas o generadas que se hayan creado en SQL Server Management Studio. En el caso de Reporting Services, la función de generación de secuencias de comandos de Management Studio crea código de Visual Basic para una tarea muy específica, como crear una función, establecer las propiedades de informe, definir una programación, etc. El código generado es incompleto; captura pulsaciones de teclas y eventos del mouse (ratón). Para utilizar este código, debe copiarlo en un programa más grande creado por usted mismo.

[!NOTA] A diferencia de lo que sucede en versiones anteriores de Reporting Services, ya no se puede utilizar el programa de instalación para implementar todas las configuraciones posibles del servidor de informes. Si se desea configurar una implementación escalada o utilizar una instancia de SQL Server remota para alojar la base de datos del servidor de informes, es necesario escribir secuencias de comandos o ejecutar una utilidad de línea de comandos. Asimismo, el proveedor WMI del servidor de informes se ha actualizado en SQL Server 2005, por lo que, si se desea reutilizar las secuencias de comandos escritas para la versión anterior del proveedor WMI, será necesario modificar las secuencias de comandos para que utilicen el nuevo extremo.

Duplicar un entorno de servidor de informes

Se pueden escribir secuencias de comandos que dupliquen un entorno de servidor de informes en otra instancia de servidor de informes. Las secuencias de comandos de implementación suelen escribirse en Visual Basic y, después, se procesan mediante la utilidad del host de secuencias de comandos del servidor de informes.

Utilice secuencias de comandos para copiar carpetas, orígenes de datos compartidos, recursos, informes, asignaciones de funciones y parámetros de un servidor a otro. Puede escribir una secuencia de comandos para una instancia de servidor de informes y, a continuación, ejecutarla en otro servidor para volver a crear el espacio de nombres del servidor de informes. Si existen varios servidores de informes en la implementación de Reporting Services, puede ejecutar la secuencia de comandos en cada servidor individualmente para configurar todos los servidores de la misma manera.

En la siguiente lista, se describen los pasos necesarios para migrar informes de un servidor a otro.

  1. Defina la variable de secuencia de comandos con la dirección URL del servidor de informes de origen.
  2. Utilice los métodos GetReportDefinition y GetProperties para recuperar la definición de informe y las propiedades del informe.
  3. Establezca la dirección URL para que señale al servidor de destino.
  4. Utilice el método CreateReport, pasando las propiedades devueltas desde GetProperties y la definición del informe devuelta por GetReportDefinition.

Combinando métodos de obtención y creación, puede realizar pasos similares que le permitan migrar parámetros, carpetas, orígenes de datos compartidos y recursos. Para obtener más información acerca de los métodos disponibles, vea la referencia de programación administrada de Reporting Services.

[!NOTA] Las secuencias de comandos se ejecutan con las credenciales de Microsoft Windows del usuario que ejecuta la secuencia de comandos, salvo que las credenciales se establezcan explícitamente.

Para obtener más información acerca de los ejemplos de secuencias de comandos, vea Ejemplos de secuencias de comandos (Reporting Services). Para obtener más información sobre cómo ejecutar y dar formato a un archivo de secuencias de comandos, vea Scripting with the rs Utility and the Web Service.

Secuencia de comandos de ejemplo para establecer propiedades de servidor

Puede escribir secuencias de comandos o código para establecer propiedades del sistema en el servidor de informes. La siguiente secuencia de comandos de Microsoft Visual Basic .NET muestra una forma de establecer propiedades. Este ejemplo deshabilita el control ActiveX RSClientPrint, aunque es posible sustituir EnableClientPrinting y False por cualquier nombre y valor de propiedad válidos. Para obtener una lista completa de propiedades de servidor, vea Report Server System Properties.

Para utilizar la secuencia de comandos, guárdela en un archivo con la extensión .rss y, a continuación, utilice la utilidad de símbolo del sistema rs.exe para ejecutar el archivo en el servidor de informes. La secuencia de comandos no está compilada, por lo que no es necesario tener instalado Visual Basic. En este ejemplo se da por supuesto que tiene permisos en el equipo local que aloja el servidor de informes. Si no ha iniciado una sesión con una cuenta con permisos, debe especificar la información de la cuenta mediante argumentos adicionales de la línea de comandos. Para obtener más información, vea rs (utilidad).

Public Sub Main()
        Dim props(0) As [Property]
        Dim setProp As New [Property]
        setProp.Name = "EnableClientPrinting"
        setProp.Value = “False” 
        props(0) = setProp
        Try
            rs.SetSystemProperties(props)
        Catch ex As System.Web.Services.Protocols.SoapException
            Console.Write(ex.Detail.InnerXml)
        Catch e as Exception
            Console.Write(e.Message)
        End Try
End Sub

Vea también

Conceptos

Administrar Reporting Services
Utilidades de símbolo del sistema del servidor de informes
Compatibilidad con exploradores en Reporting Services
Información general de componentes de Reporting Services

Otros recursos

GenerateDatabaseCreationScript Method (WMI MSReportServer_ConfigurationSetting Class)
GenerateDatabaseRightsScript Method (WMI MSReportServer_ConfigurationSetting Class)
GenerateDatabaseUpgradeScript Method (WMI MSReportServer_ConfigurationSetting Class)
Cómo instalar SQL Server 2005 desde el símbolo del sistema
Configuración predeterminada de una instalación del servidor de informes
Implementar Reporting Services

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

12 de diciembre de 2006

Contenido modificado:
  • Sección Crear, actualizar o configurar la base de datos del servidor de informes.
  • Sección Configurar el correo electrónico del servidor de informes.

17 de julio de 2006

Contenido nuevo:
  • Se ha agregado un ejemplo que muestra cómo establecer propiedades de servidor mediante una secuencia de comandos.

14 de abril de 2006

Contenido modificado:
  • Revisión importante.