none
DataSet Tipado para un reporte de crystal report RRS feed

  • Pregunta

  • Lo que busco es poder hacer un dataset donde pueda incluir datos de varias tablas utilizando una sola sentencia sql que contenga los inner join necesarios para luego llevar esos datos al dataset y luego al crystal report, ahora bien, quiero tambien que la coneccion a la al servidor y a la base de datos lo pueda hacer directamente desde el codigo, los ejemplos que hasta ahora e visto tengo que crear la conexion a la base de datos y luego arrastrar los campos al reporte. aqui les dejo un ejemplo de lo que busco y si pueden notarlo la conexion a la base de datos la hago con una cadena de conexion en el configuration manager de una app.config, repito lo que quiero es poder crear un dataset y luego enviarle datos de diferentes tablas,gracias

     Private Function ObtenerDatos_Horarios_Clases() As DataTable
            Using cnn As New SqlConnection(configuracion.ConnectionString)
    
                Dim cmd As SqlCommand = cnn.CreateCommand()
    
                cmd.CommandText = "SELECT A.Num_Horario, A.Codigo_Clase, B.Descripcion, A.Termino, A.Num_Seccion,A.Lunes,A.Martes,A.Miercoles,A.Jueves,A.Viernes," & _
                    "A.Salon,A.Profesor,A.Desde_Horario,A.Hasta_Horario From Horarios_Clase_Tabla A " & _
                "inner join Clases_Tabla B on A.Codigo_Clase=B.Codigo_Clase " & _
                "Where  Termino=@Dato and B.Curso_1=@Curso or B.Curso_2=@Curso or B.Curso_3=@Curso or B.Curso_4=@Curso or B.Curso_5=@Curso " & _
                "or Termino=@Dato2 and B.Curso_1=@Curso or B.Curso_2=@Curso or B.Curso_3=@Curso or B.Curso_4=@Curso or B.Curso_5=@Curso"
    
                cmd.Parameters.AddWithValue("@dato", txtterminoacademico.Text)
                cmd.Parameters.AddWithValue("@dato2", txtterminoacademico1.Text)
                cmd.Parameters.AddWithValue("@Curso", txtcurso.Text)
                Dim da As New SqlDataAdapter(cmd)
                Dim dt As New DataTable("Horarios_Clase_Tabla")
                da.Fill(dt)
                Return dt
            End Using
        End Function

    viernes, 21 de agosto de 2015 14:38

Respuestas