elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Entrar al Canal Oficial Telegram de elhacker.net


  Mostrar Mensajes
Páginas: [1]
1  Programación / .NET (C#, VB.NET, ASP) / Re: Llenar un treeview desde varias tablas en: 2 Marzo 2008, 13:15 pm
de hecho si he generado un codigo y es este :

    Dim nodo As TreeNode
    Dim nodoDeps As TreeNode
    Dim nodoDirs As TreeNode
    Dim nodoSubs As TreeNode
    Dim nodoOfs As TreeNode

Private Sub CargarNodos()
        'conexion
        Dim Cnn As New MySqlConnection("Database=SIARH;Data Source=localhost;User Id=root;Password=wolfman")

        'cadenas sql
        Dim SQLStrDirGral As String = "Select ID, DireccionGral, Sigs from TAuxCTDireccionGral"
        Dim SQLStrDirecc As String = "Select ID, DireccionGral, Direccion, Sigs from TAuxCTDireccion"
        Dim SQLStrSubdD As String = "Select ID, Direccion, SubDireccionCoordinacion, Sigs from TAuxCTSubDirCoord"
        Dim SQLStrDepto As String = "Select ID, SubCoord, Departamento, Sigs from TAuxCTDeptos"
        Dim SQLStrOfna As String = "Select ID, Departamento, Oficina, Sigs from TAuxCTOficinas"

        'variables de busqueda

        'Adaptadores
        Dim daDirGral As New MySqlDataAdapter
        Dim daDir As New MySqlDataAdapter
        Dim daSubDir As New MySqlDataAdapter
        Dim daDeptos As New MySqlDataAdapter
        Dim daOfnas As New MySqlDataAdapter

        'El dataset
        Dim dsPlantilla As DataSet

        'vista de datos
        Dim dvDir As DataView
        Dim dvSubdir As DataView
        Dim dvDepto As DataView
        Dim dvOfnal As DataView

        dsPlantilla = New DataSet

        SQLStrDirGral = "Select ID, DireccionGral, Sigs from TAuxCTDireccionGral"
        daDirGral = New MySqlDataAdapter(SQLStrDirGral, Cnn)
        daDirGral.Fill(dsPlantilla, "TAuxCTDireccionGral")

        SQLStrDirecc = "Select ID, DireccionGral, Direccion, Sigs from TAuxCTDireccion"
        daDir = New MySqlDataAdapter(SQLStrDirecc, Cnn)
        daDir.Fill(dsPlantilla, "TAuxCTDireccion")

        SQLStrSubdD = "Select ID, Direccion, SubDireccionCoordinacion, Sigs from TAuxCTSubDirCoord"
        daSubDir = New MySqlDataAdapter(SQLStrSubdD, Cnn)
        daSubDir.Fill(dsPlantilla, "TAuxCTSubDirCoord")

        SQLStrDepto = "Select ID, SubCoord, Departamento, Sigs from TAuxCTDeptos"
        daDeptos = New MySqlDataAdapter(SQLStrDepto, Cnn)
        daDeptos.Fill(dsPlantilla, "TAuxCTDeptos")

        SQLStrOfna = "Select ID, Departamento, Oficina, Sigs from TAuxCTOficinas"
        daOfnas = New MySqlDataAdapter(SQLStrOfna, Cnn)
        daOfnas.Fill(dsPlantilla, "TAuxCTOficinas")

        'filas de datos se almacenan en esta categoria
        Dim drDir As DataTable
        Dim drSubDir As DataTable
        Dim drDeptos As DataTable
        Dim drOfnas As DataTable


        Dim Regs As DataRow
       
        'cargo las tablas que requiero
        drDir = dsPlantilla.Tables("TAuxCTDireccion")
        drSubDir = dsPlantilla.Tables("TAuxCTSubDirCoord")
        drDeptos = dsPlantilla.Tables("TAuxCTDeptos")
        drOfnas = dsPlantilla.Tables("TAuxCTOficinas")

        dvDir = drDir.DefaultView
        dvSubdir = drSubDir.DefaultView
        dvDepto = drDeptos.DefaultView
        dvOfnal = drOfnas.DefaultView

        'primer nivel del Nodo principal
        TreeView1.Nodes.Clear()
        TreeView1.Nodes.Add("DIRECCION GENERAL")

        ' deshabilita la actualización en pantalla del control TreeView
        TreeView1.BeginUpdate()

        Dim i As Integer
        Dim a As Integer
        Dim aa As Integer
        Dim b As Integer
        Dim bb As Integer

        For Each Regs In drDir.Rows
            i = 0
            ' agrego el nodo en el segundo nivel
            TreeView1.Nodes(i).Nodes.Add(Trim(Regs("Direccion")))

            ' realizo un filtro dentro de la vista
            dvSubdir.RowFilter = "Direccion = " & Regs("id")
            ' ciclo para recorrer la vista previamente filtrada
            aa = 0
            For a = 0 To dvSubdir.Count - 1
                ' agrego el nodo en el tercer nivel
                'aqui es en donde manda el error 
  TreeView1.Nodes(i).Nodes(aa).Nodes.Add(Trim(dvSubdir.Item(a).Row("SubDireccionCoordinacion")))
Specified argument was out of the range of valid values.
Parameter name: index

                ' realizo un filtro dentro de la vista
                dvDepto.RowFilter = "SubCoord = " & Regs("id")
                bb = 0
                For b = 0 To dvDepto.Count - 1
                    TreeView1.Nodes(i).Nodes(a).Nodes(bb).Nodes.Add(Trim(dvDepto.Item(b).Row("Departamento")))
                Next

            Next
            i = i + 1
        Next
        ' habilita la actualización en pantalla del control TreeView
        TreeView1.Nodes(i).ExpandAll()

        ' habilita la actualización en pantalla del control TreeView
        TreeView1.EndUpdate()

    End Sub
2  Programación / .NET (C#, VB.NET, ASP) / Llenar un treeview desde varias tablas en: 1 Marzo 2008, 16:59 pm
Hola a todos, tengo un problema con un treeview en vb .net, la cuestion es que tengo 5 tablas con los datos de una estrucutura y deseo llenar un treeview a partir de estas tablas,
como lo pongo a continuacion

'Tabla 1 Direccion General
ID   DireccionGral
01   DIRECCION GENERAL DE SERVICIOS EDUCATIVOS

'tabla 2 Subdirecciones
ID   DireccionGral   Direccion
00   01   DIRECCION GENERAL
01   01   DIRECCION TECNICA
02   01   DIRECCION DE PLANEACION
03   01   DIRECCION REGIONAL DE CENTRO
04   01   DIRECCION REGIONAL DE JUAREZ
05   01   DIRECCION REGIONAL DE SAN LORENZO TEZONCO
07   01   DIRECCION REGIONAL DE SAN MIGUEL TEOTONGO

'tabla3 Departamentos
ID   SubCoord   Departamento
01   01   DEPARTAMENTO DE PLANEACION EDUCATIVA
02   01   DEPARTAMENTO DE PROGRAMACION EDUCATIVA
03   02   DEPARTAMENTO DE INFORMATICA
04   02   DEPARTAMENTO DE SERVICIOS COMPLEMENTARIOS
05   02   DEPARTAMENTO DE CONTROL ESCOLAR
06   05   DEPARTAMENTO DE GESTION ESCOLAR
07   05   DEPARTAMENTO DE DESARROLLO PROFESIONAL
08   05   DEPARTAMENTO DE DESARROLLO CURRICULAR
09   05   DEPARTAMENTO DE APOYO AL DESARROLLO CURRICULAR
10   07   DEPARTAMENTO DE PERSONAL
11   07   DEPARTAMENTO DE RECURSOS FINANCIEROS
12   07   DEPARTAMENTO DE RECURSOS MATERIALES Y SERVICIOS
13   07   DEPARTAMENTO DE APOYO JURIDICO

'Tabla 5 Oficinas
ID   Departamento   Oficina
01   10   OFICINA DE ARCHIVO
02   10   OFICINA DE ACLARACION AL PAGO
03   10   OFICINA DE CARRERA MAGISTERIAL
04   10   OFICINA DE KARDEX
05   10   OFICINA DE PAGADURIA
06   10   OFICINA DE RECLUTAMIENTO Y SELECCION DE PERSONAL
07   10   OFICINA DE REGISTRO Y CONTROL DE INCIDENCIAS
08   10   OFICINA DE SERVICIOS AL PERSONAL
09   10   OFICINA DE SIAPSEP
10   10   OFICINA DE TECHO FINANCIERO
11   10   OFICINA DE EMPLEO Y REMUNERACIONES
12   12   OFICINA DE ADQUISICIONES
13   12   OFICINA DE ALMACEN
14   12   OFICINA DE DISENO GRAFICO
15   12   OFICINA DE EDIFICIOS
16   12   OFICINA DE INVENTARIOS
17   12   OFICINA DE SERVICIOS GENERALES

el id es el enlace entre las tablas
y el proposito es que queden  de la siguiente manera

Direccion gral
|-----Direccion
|----------Subdireccion
|---------------Departamento
|--------------------Oficina

sin embargo no lo he logrado








Páginas: [1]
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines