FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Como cargar los un TreeView desde una tabla SQL
Hola a todos, como estan?, espero me puedan ayudar con el siguiente problema , pasa que quiero agregar un TTreeView a mi programa que muestre las instancias y sub instancias de un inventario, es decir, que lo muestre algo así:
+Instancia1 -SubInstancia1.1 -SubInstancia1.2 +Instancia2 -SubInstancia2.1 -SubInstancia2.2 Pero necesito que tome los datos de una tabla la cual esta en SQL, la tabla esta estructurada de la siguiente manera: CREATE TABLE [dbo].[SAINSTA]( [CodInst] [int] IDENTITY(1,1) NOT NULL, [InsPadre] [int] NOT NULL, [Nivel] [int] NOT NULL, [TipoIns] [smallint] NOT NULL, [Descrip] [varchar](40) NOT NULL, [Descto] [decimal](28, 4) NOT NULL, [DEsComp] [smallint] NOT NULL, [DEsSeri] [smallint] NOT NULL, [DEsLote] [smallint] NOT NULL, [DEsComi] [smallint] NOT NULL, [DEsCorrel] [smallint] NOT NULL, [DigitosC] [smallint] NOT NULL, [DEsTabla] [smallint] NOT NULL, [CodAlte] [varchar](15) NULL, Donde Descrip es el nombre de la instancia, InsPadre seria lo que indica el nodo padre de la instancia y CodInst es el codigo individual de cada una, o mejor dicho, el nodo. He probado usando este codigo que encontre en un foro parecido: procedure TfPruebaComponentes.FormCreate(Sender: TObject); var i,x,n:integer; Nod : TTreeNode; NodSuplementario : TTreeNode; MiPunteroInteger : ^integer; begin FDQuery1.Close; FDQuery1.Open; FDQuery1.Last; n:=FDQuery1.RecordCount; FDQuery1.First; for x:=0 to (n-1) do begin i:=FDQuery1.FieldByName('nodo_padre').AsInteger; if i=0 then begin Nod:=TreeView1.Items.Add (nil,FDQuery1.FieldByName('opc_Descripcion').asstring); New(MiPunteroInteger); MiPunteroInteger^:=FDQuery1.Fieldbyname('nodo').asinteger; nod.Data:=MiPunteroInteger; nod.Selected :=true; end Else begin n:=TreeView1.Items.Count-1; While MiPunteroInteger(TreeView1.Items[n].Data)^ <> i do Dec(n); nodSuplementario:=TreeView1.Items.AddChild(TreeView1.Items[N],FDQuery1.FieldByName('opc_Descripcion').asstring); New(MiPunteroInteger); MiPunteroInteger^:= FDQuery1.Fieldbyname('nodo').asinteger; nodSuplementario.Data:=MiPunteroInteger; Nod.selected:=True; Nod.Expanded:=False; end; FDQuery1.Next; end; end; Pero la verdad no me sirve bien y incluso me marca un error de compilación en el While do . He estado buscando por mucho y la verdad espero que me lean y me puedan ayudar con este problema muchas gracias . |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Llenar TreeView desde una tabla | mRoman | OOP | 12 | 02-06-2020 13:19:01 |
Cargar dbcombobox desde una tabla en mysql | asdberna | Conexión con bases de datos | 4 | 05-04-2013 20:43:06 |
Cargar TActionManager desde TreeView | Neeruu | Varios | 5 | 04-03-2010 17:47:58 |
¿Como guardar una tabla desde el componente shell treeview? | krlox31416 | Varios | 9 | 29-09-2008 02:46:23 |
Cargar un TTreeView desde una tabla | hibero | OOP | 8 | 15-07-2004 19:43:33 |
|