Share via


Enlazar el informe

En Configuración de proyectos, va a colocar un control CrystalReportViewer en el formulario Web Forms o Windows Forms. En el paso anterior, ha agregado un informe FunctionTest al proyecto.

En esta sección, va a crear una instancia del informe FunctionTest y a enlazarla con el control CrystalReportViewer.

Puede crear una copia del informe y enlazarla de dos formas:

  • Como informe incrustado.

  • Como informe no incrustado.

    **Nota   **Visual Studio 2005 admite sólo informes no incrustados para los sitios Web.

Elija uno (pero no ambos) de los procedimientos de varios pasos siguientes.

  • Si utiliza informes incrustados, realice el siguiente procedimiento de pasos para crear una instancia del informe como un informe incrustado.
  • Si utiliza informes no incrustados, siga el segundo procedimiento de pasos para crear una instancia del informe como un informe no incrustado.

Para crear una instancia del informe FunctionTest como un informe incrustado y enlazarla al control CrystalReportViewer

  1. Abra el formulario Web Forms o Windows Forms.

  2. En el menú Ver, haga clic en Código.

  3. Agregue una nueva declaración de nivel de clase para la clase contenedora del informe FunctionTest, con el nombre de variable functionTestReport. Establezca su modificador de acceso como privado.

    [Visual Basic]

    Private functionTestReport As FunctionTest
    

    [C#]

    private FunctionTest functionTestReport;
    
  4. En el método ConfigureCrystalReports(), cree una instancia de la clase contenedora de informe.

    **Nota   **Creó el método ConfigureCrystalReports() en Configuración de proyectos.

    [Visual Basic]

    functionTestReport = New FunctionTest()
    

    [C#]

    functionTestReport = new FunctionTest();
    
  5. En la línea siguiente, debajo de la creación de instancias del informe, enlace la propiedad ReportSource del control CrystalReportViewer a la clase de informe de la que se ha creado una instancia (nombre de variable: functionTestReport).

    [Visual Basic]

    myCrystalReportViewer.ReportSource = functionTestReport
    

    [C#]

    crystalReportViewer.ReportSource = functionTestReport;
    

Ahora estará listo para crear y ejecutar el proyecto. Pase a la siguiente sección.

Para crear una instancia del informe FunctionTest como un informe no incrustado y enlazarla al control CrystalReportViewer

  1. Abra el formulario Web Forms o Windows Forms.

  2. En el menú Ver, haga clic en Código.

  3. Agregue una nueva declaración de nivel de clase para la clase contenedora del informe ReportDocument, con el nombre de variable functionTestReport. Establezca su modificador de acceso como privado.

    [Visual Basic]

    Private functionTestReport As ReportDocument
    

    [C#]

    private ReportDocument functionTestReport;
    

    **Nota   **La clase ReportDocument es miembro del espacio de nombres CrystalDecisions.CrystalReports.Engine. Ha agregado una declaración "Imports" [Visual Basic] o "using" [C#] para este espacio de nombres en Configuración del proyecto. Cuando cree la instancia de ReportDocument y cargue un informe en el espacio de nombres, tendrá acceso al informe a través del SDK, sin incrustar el informe.

  4. En el método ConfigureCrystalReports() (creado en Configuración de proyectos), cree una instancia de la clase ReportDocument.

    [Visual Basic]

    functionTestReport = New ReportDocument()
    

    [C#]

    functionTestReport = new ReportDocument();
    
  5. En la siguiente línea, llame al método Load() de la instancia de ReportDocument y péguele el nombre de archivo del informe.

    **Nota   **Incluya el nombre de archivo del informe en un método Server.MapPath(). Así se generará automáticamente la ruta del directorio de archivos basada en el nombre del informe.

    [Visual Basic]

    functionTestReport.Load(Server.MapPath("FunctionTest.rpt"))
    

    [C#]

    functionTestReport.Load(Server.MapPath("FunctionTest.rpt"));
    
  6. En la línea siguiente, debajo la carga del informe, enlace la propiedad ReportSource de CrystalReportViewer a la instancia de ReportDocument.

    [Visual Basic]

    myCrystalReportViewer.ReportSource = functionTestReport
    

    [C#]

    crystalReportViewer.ReportSource = functionTestReport;
    

Tanto si ha elegido crear una instancia de la clase de un informe incrustado como si lo ha hecho de un informe no incrustado (ReportDocument), el nombre de la variable utilizada es el mismo: functionTestReport. De esta forma, puede utilizar un conjunto de códigos común en los procedimientos que aparecen a continuación.

Ahora estará listo para crear y ejecutar el proyecto.

Para probar la carga del informe FunctionTest

  1. En el menú Crear, seleccione Generar solución.

  2. Si existen errores de generación, continúe y corríjalos ahora.

  3. En el menú Depurar, haga clic en Iniciar.

    **Nota   **Si está desarrollando un sitio Web en Visual Studio 2005 y es la primera vez que ha iniciado la depuración, aparecerá un cuadro de diálogo en el que se indica que el archivo Web.config se debe modificar. Haga clic en el botón Aceptar para habilitar la depuración.

    Se mostrará el informe, y el nuevo campo calculará la tasa de cambio de las ventas del año pasado, basada en la biblioteca de funciones de usuario que ha creado.

  4. Vuelva a Visual Studio y haga clic en Detener para salir del modo de depuración.

Continúe con Conclusión.

Vea también

Conectar a colecciones de objetos | Tutoriales y código de ejemplo | Directorio de código de ejemplo de los tutoriales

Envie sus sugerencias a Business Objects

© 2005 Business Objects SA. Todos los derechos reservados.

Business Objects
http://www.spain.businessobjects.com/
Servicios de soporte técnico
http://support.businessobjects.com/