Visual Basic.NET - COMO IMPRIMIR DATOS FILTRADOS DE DATAGRIDVIEW A CRYSTAL REPORT VB.NET

 
Vista:
sin imagen de perfil
Val: 34
Ha aumentado su posición en 13 puestos en Visual Basic.NET (en relación al último mes)
Gráfica de Visual Basic.NET

COMO IMPRIMIR DATOS FILTRADOS DE DATAGRIDVIEW A CRYSTAL REPORT VB.NET

Publicado por JOSUE (11 intervenciones) el 18/07/2020 04:35:51
BUEN DIA

NECESITO AYUDA DE COMO IMPRIMIR DATOS FILTRADOS DE UN DATAGRIDVIEW QUE SE USO SELECT SQL A CRYSTAL REPORT.


CAMPOS DATAGRIDVIEW
NO.......................IDENTIDAD.................NOMBRE...............SALA................TELEFONO...........................FECHA_CITADO


CAMPO DE CRYSTAL REPORT
NO................IDENTIDAD..................NOMBRE................SALA.......................TELEFONO


AL SELECCIONAR UN RANGO DE FECHAS ME MUESTRA LA INFORMACION ENCONTRADA EN LA TABLA, EL CUAL SE MUESTRA DE FORMA ORDENADA DE MENOR A MEYOR POR FECHA DE CITADO.

LO QUE NECESITO QUE SE IMPRIMA EN UN CRYSTAL REPORT TODOS LOS ITEM PERO POR SEPARADO SEGUN LA FECHA DE CITADO, EJEMPLO: SI HAY 2 ITEM QUE TIENE 14/JUL/2020 ESOS SE IMPRIME EN UN SOLO REPORTE Y LUEGO LOS QUE SIGUE HASTA LLEGAR A LA ULTIMA FECHA.

USO DOS COMBOBOX Y FECHA INICIAL Y FECHA FINAL COMO CAMPOS DE BUSQUEDA.
PRIMER COMBOBOX SE LLAMA ESPECIALIDAD="MEDICINA INTERNA" SEGUNDO COMBOBOX SE LLAMA MEDICO="JOSE LUIS"
FECHA INICIAL CON DATETIMEPICKER.

ESTE ES EL METODO DE BUSQUEDA PARA CARGAR EL DATAGRIDVIEW

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
Private Sub BTNBITACORA_Click(sender As Object, e As EventArgs) Handles BTNBUSCAR.Click
    CONE.Open()
    Try
        Dim INICIO As String = Format(CDate(INICIAL.Value), "yyyy/MM/dd")
        Dim FIN As String = Format(CDate(FINAL.Value), "yyyy/MM/dd")
        Dim COMANDO As String = "SELECT (NOMBRE_PACIENTE +' '+ PRIMER_APELLIDO +' '+ SEGUNDO_APELLIDO) AS NOMBRE, " _
        & "CASE WHEN (CORRELATIVO='0000-0000' AND IDENTIDAD<>'0000-0000-00000') THEN IDENTIDAD " _
        & "WHEN (CORRELATIVO<>'0000-0000' AND IDENTIDAD='0000-0000-00000') THEN CORRELATIVO " _
        & "WHEN (CORRELATIVO<>'0000-0000' AND IDENTIDAD<>'0000-0000-00000') THEN IDENTIDAD " _
        & "END AS CLINICA, (TELEFONO1+' / '+TELEFONO2) AS TELEFONOS, SALA, ESPECIALIDAD, MEDICO, CONSULTORIO, " _
        & "FECHA_CITADO FROM BITACORA WHERE (ESPECIALIDAD='" & CMBESPECIALIDAD.Text & "' AND MEDICO ='" & CMBMEDICO.Text & "') AND " _
        & "(FECHA_CITADO BETWEEN '" & INICIO & "' AND '" & FIN & "') ORDER BY FECHA_CITADO ASC "
        Dim ADAPTADOR As New SqlDataAdapter(COMANDO, CONE)
        Dim DATO As New DataTable
        ADAPTADOR.Fill(DATO)
        Dim ACTUAL As String = DateTime.Now.Date
        If DATO.Rows.Count > 0 Then
            DGVGENERAL.DataSource = DATO
            DGVGENERAL.Columns("CLINICA").Width = 140 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("CLINICA").HeaderText = "HISTORIAL CLINICO"
            DGVGENERAL.Columns("NOMBRE").Width = 280 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("NOMBRE").HeaderText = "NOMBRE DEL PACIENTE"
            DGVGENERAL.Columns("SALA").Width = 260 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("SALA").HeaderText = "SALA"
            DGVGENERAL.Columns("TELEFONOS").Width = 150 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("TELEFONOS").HeaderText = "TELEFONOS"
 
            DGVGENERAL.Columns("ESPECIALIDAD").Width = 200 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("ESPECIALIDAD").HeaderText = "ESPECIALIDAD"
            DGVGENERAL.Columns("MEDICO").Width = 200 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("MEDICO").HeaderText = "MEDICO"
            DGVGENERAL.Columns("CONSULTORIO").Width = 40 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("CONSULTORIO").HeaderText = "CONSULTORIO"
            DGVGENERAL.Columns("ESPECIALIDAD").Visible = False
            DGVGENERAL.Columns("MEDICO").Visible = False
            DGVGENERAL.Columns("CONSULTORIO").Visible = False
 
            DGVGENERAL.Columns("FECHA_CITADO").Width = 100 'DAR ANCGO A LA COLUMNA
            DGVGENERAL.Columns("FECHA_CITADO").HeaderText = "FECHA CITADO"
            Dim DGV As New DataGridViewCellStyle()
            DGV.Alignment = DataGridViewContentAlignment.MiddleCenter
            DGVGENERAL.ColumnHeadersDefaultCellStyle = DGV 'PONER CENTRADO EL ENCABEZADO
        ElseIf DATO.Rows.Count = 0 Then
            CONE.Close()
            MsgBox("NO EXISTE REGISTRO EN LA FECHA DE CITADO", MsgBoxStyle.Information, "AVISO DEL SISTEMA")
        End If
        CONE.Close()
    Catch ex As Exception
        MessageBox.Show("NO SE PUDO LLEGAR EL CUADRO DEBIDO A:" + ex.ToString)
        CONE.Close()
    End Try
    TXTTOTAL.Text = DGVGENERAL.Rows.Count
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

COMO IMPRIMIR DATOS FILTRADOS DE DATAGRIDVIEW A CRYSTAL REPORT VB.NET

Publicado por Oscar Rivera C (13 intervenciones) el 18/07/2020 05:17:02
Hola buenas noches Estimado, para realizar lo que necesitas hasta con pasarle el Datasource de la Grilla al Datasource de Crystal Report.

Adicional a eso, en el diseño del crystal Report debes tomar el campo fecha y crear un grupo con dicho campo.

Si quieres que haga un salto de hoja al cambiar de grupo entonces el diseño del informe puedes seleccionar esa opción.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar