Compartir a través de


Configurar Archivos de servidor en Visual Studio 2005 ó 2008

Los Archivos de servidor son una colección de servicios Web de informes que exponen informes en un servidor IIS. Archivos de servidor se proporcionó originalmente como un nodo de Crystal Services en Crystal Reports para Visual Studio .NET 2002, pero el nodo se eliminó en versiones posteriores. Todas las versiones posteriores de Crystal Reports siguen admitiendo Archivos de servidor en el SDK, aunque es necesario realizar algunos ajustes de configuración para cada versión.

Los Archivos de servidor se generan a partir de los archivos de informes subyacentes, que se almacenan en la carpeta de informes de muestra (o cualquier otra carpeta que se pueda designar) en la ruta del directorio de archivos del servidor Web.

Configurar Archivos de servidor

Para configurar Archivos de servidor para Visual Studio 2005 ó 2008, debe seguir dos pasos. En primer lugar, debe crear el servicio Web de informes que expone los informes. El segundo paso es modificar el archivo web.config que corresponde al nuevo servicio Web. En Visual Studio 2005, se ha eliminado la carpeta de configuración de Archivos de servidor que existía en Visual Studio .NET 2002 y en su lugar se ha agregado una entrada de configuración en el archivo web.config.

Puede agregar la entrada de configuración al archivo web.config de cada proyecto, de uno en uno. No obstante, se recomienda que en lugar de esto, añada esta entrada de configuración al archivo web.config ubicado en el directorio virtual que contiene los servicios Web de informes.

Para crear los servicios Web de informes necesarios para Archivos de servidor

  1. Inicie Visual Studio.

  2. En el menú Archivo, seleccione Nuevo y haga clic en Sitio Web.

  3. En el cuadro de diálogo Nuevo sitio Web, seleccione Visual C# en la lista Lenguaje.

  4. En la lista Plantillas, haga clic en Servicio Web ASP.NET

  5. En el campo Ubicación, sustituya el nombre de proyecto predeterminado por el nombre de su proyecto.

    Para este ejemplo, guardamos el proyecto en C:\InetPub\wwwroot\ con el nombre CrystalReportsWebServices.

    C:\InetPub\wwwroot\CrystalReportsWebServices\
    
  6. Haga clic en Aceptar.

  7. En el menú Depurar, haga clic en Iniciar depuración.

    Aparece un cuadro de diálogo para indicar que el archivo Web.config se debe modificar. Haga clic en el botón Aceptar para habilitar la depuración.

  8. Una vez realizada la depuración, vuelva a la aplicación.

  9. En el Explorador de soluciones, haga clic con el botón secundario en Service.asmx y, a continuación, haga clic en Eliminar.

  10. En el Explorador de soluciones, expanda la carpeta App_Code, haga clic con el botón secundario en Service.cs y, a continuación, haga clic en Eliminar.

  11. En el Explorador de soluciones, haga clic con el botón secundario en el nombre del proyecto que está en negrita y, a continuación, haga clic en Agregar nuevo elemento.

  12. En el cuadro de diálogo Agregar nuevo elemento, realice lo siguiente:

    1. En el campo Plantillas instaladas, seleccione Servicio Web.
    2. En el campo Nombre, escriba ServerFileReportService.asmx.
    3. Desactive Colocar código en archivo independiente.
    4. Haga clic en Agregar.
  13. Sustituya el contenido del archivo ServerFileReportService.asmx por la línea siguiente:

    <%@ WebService language="C#"
    class="CrystalDecisions.Web.Services.ServerFileReportService" %>
    
  14. En el menú Archivo, haga clic en Guardar todo.

  15. En el Explorador de soluciones, haga clic con el botón secundario en el nombre del proyecto que está en negrita y, a continuación, haga clic en Agregar nuevo elemento.

  16. En el cuadro de diálogo Agregar nuevo elemento:

    1. En el campo Plantillas instaladas, seleccione Servicio Web.
    2. En el campo Nombre, escriba ServerFileReportManager.asmx
    3. Desactive Colocar código en archivo independiente.
    4. Haga clic en Agregar.
  17. Sustituya el contenido del archivo ServerFileReportManager.asmx por la línea siguiente:

    <%@ WebService language="C#"
    class="CrystalDecisions.Web.Services.ServerFileReportManager" %>
    
  18. En el menú Archivo, haga clic en Guardar todo.

Para agregar la entrada de configuración de Archivos de servidor en el archivo web.config

  1. En el Explorador de soluciones, abra el archivo Web.Config.

  2. Sustituya todo el contenido del archivo Web.Config por el siguiente XML.

    En el ejemplo siguiente, cambie el valor del directorio raíz por el directorio en el que ha instalado los informes. Para este ejemplo, la ruta de archivo se ha establecido en C:\Archivos de programa\Microsoft Visual Studio 8\Crystal Reports\Samples\en\Reports\Feature Examples.

    <?xml version="1.0"?>
    
    <configuration
    xmlns="https://schemas.microsoft.com/.NetConfiguration/v2.0">
    <configSections>
    <sectionGroup name="crystalDecisions">
    <section name="serverFileReportManager"
    type="System.Configuration.NameValueSectionHandler, System,
    Version=1.0.3300.0, Culture=neutral,
    PublicKeyToken=b77a5c561934e089, Custom=null"/>
    </sectionGroup>
    </configSections>
    
    <crystalDecisions>
    <serverFileReportManager>
    <add key="rootDirectory" value="C:\Archivos de programa\Microsoft Visual Studio 8\Crystal Reports\Samples\en\Reports\Feature Examples"/>
    </serverFileReportManager>
    </crystalDecisions>
    <appSettings/>
    <connectionStrings/>
    
    <system.web>
    <compilation debug="true">
    <assemblies>
    <add assembly="CrystalDecisions.Web,
    Version=10.2.3600.0, Culture=neutral,
    PublicKeyToken=692FBEA5521E1304"/>
    </assemblies>
    </compilation>
    </system.web>
    </configuration>
    
    Nota

    Debe escribir la ruta de acceso de directorio de archivos a la carpeta de informes, donde aparece PUT_FILE_DIRECTORY_PATH_TO_REPORTS_FOLDER_HERE. Para conocer la ruta de la carpeta de informes, vea Directorio de informes de muestra.

  3. Guarde los cambios en el archivo web.config.

  4. Para comprobar que el directorio virtual de visores funciona, abra un explorador y escriba la dirección URL del servicio Web de informes publicado.

    https://localhost/CrystalReportsWebServices/ServerFileReportService.asmx?wsdl
    

Archivos de servidor heredado y el directorio virtual de visores

En versiones anteriores de Crystal Reports, Archivos de servidor se servía de IIS desde un servicio Web centralizado, que está en el directorio virtual de visores. Cada versión posterior de Crystal Reports crea un directorio adicional llamado "directorio virtual de visores" en IIS, lo que permite mantener varias versiones de Crystal Reports.

Si dispone de Archivos de servidor codificado en un proyecto de una versión anterior de Crystal Reports, y se actualiza a una versión posterior, el "directorio virtual de visores" adicional se convierte en un problema de mantenimiento. En el código, el nombre del "directorio virtual de visores" de la propiedad WebServiceURL de cada instancia de ServerFileReport se debe cambiar a la ubicación actual del servicio Web de informes para permitir que funcionen las instancias de ServerFileReport.

Nota

Para verificar los nombres y las rutas del "directorio virtual de visores" de todas las versiones, vea Directorio virtual de visores.

Para cambiar el "directorio virtual de visores" en la propiedad WebServiceURL de las instancias de ServerFileReport

  1. Busque cada repetición en el proyecto en el que esté asignada la propiedad WebServiceURL de una instancia de ServerFilesReport.

  2. Compare el nombre del directorio virtual de visores actualmente asignado en el código con el nombre que se utiliza en versiones anteriores.

    Vea Directorio virtual de visores.

  3. Cambie el nombre del directorio virtual de visores que se utiliza en la versión más reciente instalada de Crystal Reports.

    Si la última versión instalada de Crystal Reports es Crystal Reports para Visual Studio 2005, introduzca la ruta del servicio Web de informes creada anteriormente en este tutorial.

  4. Vuelva a compilar y compruebe que los informes se cargan correctamente.

Vea también