Elegir un informe que ver

Puede permitir que los usuarios especifiquen la presentación de un informe en tiempo de ejecución utilizando Web Forms Viewer o Windows Forms Viewer. Para ello, utilice la propiedad ReportSource de la clase CrystalReportViewer del visor correspondiente. La propiedad ReportSource puede establecerse en un nombre de archivo, una variable de documento del informe o un informe con tipos declarados.

El siguiente extracto de una aplicación de ejemplo permite que el usuario elija un informe a partir de un cuadro de diálogo de apertura de archivo. Enlaza seguidamente el informe a CrystalReportViewer, desde donde el usuario puede ver el informe seleccionado en tiempo de ejecución.

Para seleccionar un informe en tiempo de ejecución

  1. Inicie un nuevo proyecto.
  2. Agregue un control CrystalReportViewer al formulario.
  3. Agregue un control Button al formulario.
  4. Agregue un control OpenFileDialog al formulario.
  5. Haga doble clic en el control Button para especificar el código del evento Click. En función del lenguaje que esté utilizando, inserte el código adecuado (de los ejemplos que aparecen a continuación) en el archivo de origen correspondiente.

[Visual Basic]

openFileDialog1.Filter = "Crystal Reports|*.RPT"
If openFileDialog1.ShowDialog() = DialogResult.OK Then
   crystalReportViewer1.ReportSource = openFileDialog1.FileName
End If

[C#]

openFileDialog1.Filter = "Crystal Reports|*.RPT";
if ( openFileDialog1.ShowDialog () == DialogResult.OK)
{
   crystalReportViewer1.ReportSource = openFileDialog1.FileName;
}

[C++]

openFileDialog1->Filter = "Crystal Reports|*.RPT";
if ( openFileDialog1->ShowDialog () == DialogResult::OK)
{
   crystalReportViewer1->ReportSource = openFileDialog1->FileName;
}

[VJ#]

openFileDialog1.set_Filter("Crystal Reports|*.RPT");
if ( openFileDialog1.ShowDialog () == DialogResult.OK)
{
   crystalReportViewer1.set_ReportSource(openFileDialog1.get_FileName());
}