
22/04/2005, 12:14
|
 | (Desactivado) | | Fecha de Ingreso: abril-2005 Ubicación: Mi Ecuador del alma
Mensajes: 4.196
Antigüedad: 20 años Puntos: 47 | |
El reporte que tu creaste tiene una sentencia select que se crea automaticamente... Para realizar un reporte con filtros, es decir que solo se muestre el reporte de un determinado numero de pedido seleccionado por el usuario, debes hacer algo asi:
Public Sub genera_reporte_curso()
abre_conexion
With frm_imprimir_lista
.CrystalReport1.ReportFileName = App.Path & "\Reportes\rpt_Estudiantes_matriculados.rpt"
.CrystalReport1.Connect = conexion
cadena = "SELECT"
cadena = cadena + " Matricula.Numero_Matricula, Matricula.Periodo_Lectivo,"
cadena = cadena + " Estudiante.Id_Estudiante, Estudiante.Nombre,"
cadena = cadena + " curso.nombre"
cadena = cadena + " From"
cadena = cadena + " (Matricula Matricula INNER JOIN Curso Curso ON"
cadena = cadena + " Matricula.Id_Curso = Curso.Id_Curso)"
cadena = cadena + " INNER JOIN Estudiante Estudiante ON"
cadena = cadena + " matricula.Id_Estudiante = Estudiante.Id_Estudiante"
cadena = cadena + " WHERE curso.nombre='" + .Combo1.Text + "'"
cadena = cadena + " AND Matricula.Periodo_Lectivo='" + fe + "'"
.CrystalReport1.SQLQuery = cadena
.CrystalReport1.PrintReport
End With
cierra_conexion
End Sub
Copiar esa sentencia select generada por crystal reports y añadirle condiciones, en mi caso:
cadena = cadena + " WHERE curso.nombre='" + .Combo1.Text + "'"
cadena = cadena + " AND Matricula.Periodo_Lectivo='" + fe + "'"
entonces yo digo que solo se muestre el curso que el usuario haya seleccionado en el combobox y del Periodo Lectivo que se encuentre en una variable llamada fe
Bueno y luego ese nuevo select se lo envias en la propiedad SQLQuery al reporte...
.CrystalReport1.SQLQuery = cadena
y ya ta. |