Sei sulla pagina 1di 24

Programacin III

Diseo de Reportes utilizando C# de Visual Studio 2012


1. Debe crear una conexin

2. Defina la conexin a la base de datos que desea utilizar

3. Agregue a su proyecto grfico un nuevo elemento de tipo Conjunto de


datos

4. Definicin de las tablas a incluir en el DataSet

5. Si ya existe la conexin se puede utilizar, en caso contrario se crea la


conexin

6. Agregue un nuevo WindowsForm y llmele FrmReporteProductos.cs

7. Puede agregar a su reporte controles grficos desde el cuadro de herramientas, o


haciendo clic derecho sobre el reporte

8. Para agregar encabezado y pie de pgina vaya a la pestaa Informe y luego


ingrese a la opcin correspondiente. Tambin puede hacerlo, presionando clic
derecho sobre el Informe.

9. Seleccione la fila de los encabezados del reporte para trasladarlos al


encabezado.

10.
Puede ver la Regla para ayudarse con la ubicacin de los datos del
informe.

11.
Seleccione
encabezado

la

fila

del

detalle

del

informa

para

acercarla

12.
Tambin puede cambiar los encabezados dando sobre ellos doble
clic.

13.

Agregue un Pie de Pgina

al

14.

Insertar nmero de pgina en el pie de pgina

15.

Editar el nmero de pgina

16.Generar grupos: De clic derecho sobre el detalle del informe y seleccione


Agregar Grupo

17.

Totalizar un campo

18.Incluir Fecha: Agregue un Cuadro de texto y en su expresin agregue un


campo Fecha y escoja el formato en que la desea presentar.

19.

Insertar imagen en el informe

20.Agregar Columna al detalle: clic derecho sobre la lnea de detalle:

21.
Agregar Parmetros al informe:
Ctrl +alt +D

22. Para enviar desde la aplicacin el valor del parmetro respectivo, escriba en el evento
Load del Form que contiene el objeto ReportViewer o en el evento que corresponda el
siguiente cdigo enmarcado como: Asignacin de parmetros:
private void FrmReporteProductos_Load(object sender, EventArgs e) {
this.ProductTableAdapter.Fill(this.DataSetProductos.Product);
//Asignacin de Parmetros
ReportParameter miParametroUser = new
ReportParameter("parametroUsuario",Program.usuarioActivo );
reportViewer1.LocalReport.SetParameters(miParametroUser);
ReportParameter miParametroInst = new
ReportParameter("parametroInstitucion", AplicacionGrafica.Properties.Settings.Default.empresa);
reportViewer1.LocalReport.SetParameters(miParametroInst);
//Fin asignacin de parmetros
this.reportViewer1.RefreshReport();
}
23.Definir un filtro para el informe
Defina el o los parmetros que permiten filtrar el reporte

24. Para definir el filtro de clic derecho sobre la esquina superior izquierda de
la tabla que contiene los datos del reporte

25.Se define un filtro que buscar productos por medio de una comparacin like con el
nombre del producto.

26.Para el valor a comparar utilice el parmetro parametroNombreProducto

27.Agregue a Form del reporte un TextBox y un botn Buscar Producto

28.En el evento Load del Form o en el evento que corresponda, defina el parmetro de
manera que al inicio el filtro permita que se muestren todos los productos, luego en el
botn de filtrar se definir el parmetro especfico por el que se desea filtrar el
informe

private void FrmReporteProductos_Load(object sender, EventArgs e)

// TODO: esta lnea de cdigo carga datos en la tabla 'DataSetProductos.DataTable1'


//Puede moverla o quitarla segn sea necesario.

this.DataTable1TableAdapter.Fill(this.DataSetProductos.DataTable1);
//Definicin de parmetros
//Para que al inicio cargue todo el reporte **

ReportParameter miParametroNombre = new


ReportParameter("parametroNombreProducto", "**");
reportViewer1.LocalReport.SetParameters(miParametroNombre);
this.reportViewer1.RefreshReport();
//Fin de definicin de parmetros

29.En el evento del botn Buscar por nombre de Producto se debe incluir el siguiente
cdigo

private void btnFiltrarPorNombre_Click(object sender, EventArgs e) {


ReportParameter miParametroNombre = new
ReportParameter("parametroNombreProducto",
"*"+txtNombreProducto.Text+"*");
reportViewer1.LocalReport.SetParameters(miParametroNombre);
this.reportViewer1.RefreshReport();
}

Diseo Reportes a partir de un List de Objetos


En la capa entidad en Producto:

Debe existir un mtodo que retorne un List de Objetos Producto


public class Producto {
public int ProductoId {set;get;}
public double UnidadesEnStock{set;get;}
public Categoria oCategoria{set;get;}
public String NombreProducto { set; get; }
public double PrecioUnitario { set; get; }
public string Peso { set; get; }
public int CategoriaId {
get { return oCategoria.CategoriaId; }
}
public String CategoriaDescripcion
{
get { return oCategoria.NombreCategoria; }
}
}

Potrebbero piacerti anche