Click here to Skip to main content
15,887,683 members
Please Sign up or sign in to vote.
2.78/5 (3 votes)
See more:
I'm using the REPRESENTATION INTERVALLAIRE ( http://sqlpro.developpez.com/cours/arborescence/[^] )
My table is like this:

ID_EQU
CODE_EQU
DESIGNATION_EQU
LEVEL_EQU [NIVEAU_EQU]
LEFT_EQU [GAUCHE_EQU]
RIGHT_EQU [DROITE_EQU]


This is the SQL script to add values:

SQL
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (1, N'DENDEN', N'Site Denden', 0, 1, 20)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (2, N'ETS', N'Ets ABDELMOULA', 1, 2, 13)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (4, N'MC', N'Maille Club',  1, 14, 19)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (5, N'CH1', N'Chaine 1',  2, 3, 8)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (6, N'CH2', N'Chaine 2',  2, 9, 12)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (7, N'COUPE', N'Coupe', , 2, 17, 18)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (8, N'CREATION', N'Création',  2, 15, 16)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (9, N'NEUTRA1', N'Neutralisation 1', 3, 4, 5)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (10, N'DECOLO 1', N'Décoloration 1', 3, 6, 7)
INSERT [dbo].[EQU] ([ID_EQU], [CODE_EQU], [DESIGNATION_EQU], [NIVEAU_EQU], [GAUCHE_EQU], [DROITE_EQU]) VALUES (11, N'NEUTRA2', N'Neutralisation 2', 3, 10, 11)






this is the SQL VIEW:

SQL
SELECT     TOP (100) PERCENT ID_EQU, CAST(SPACE(5 * NIVEAU_EQU) + CODE_EQU AS VARCHAR(100)) AS CODE_EQU, NIVEAU_EQU, GAUCHE_EQU, DROITE_EQU,
                          (SELECT     COUNT(*) AS Expr1
                            FROM          dbo.EQU AS T2
                            WHERE      (GAUCHE_EQU > T1.GAUCHE_EQU) AND (DROITE_EQU < T1.DROITE_EQU)) AS EQU_DESCENDANT, DESIGNATION_EQU
FROM         dbo.EQU AS T1
ORDER BY GAUCHE_EQU


and the result is:

SQL
ID_EQU  CODE_EQU   NIVEAU_EQU GAUCHE_EQU  DROITE_EQU EQU_DESCENDANT   DESIG_EQU
1	DENDEN	                0       1	  20	      9    Site Denden
2	     ETS	        1	2	  13	      5	    Ets ABDELMOULA
5	          CH1	        2	3	   8	      2	    Chaine 1
9	               NEUTRA1	3	4	   5	      0	    Neutralisation 1
10	               DECOLO1	3	6	   7	      0	    Décoloration 1
6	          CH2	        2	9	  12	      1	    Chaine 2
11	               NEUTRA2	3	10	  11	      0	    Neutralisation 2
4	     MC	                1	14	  19	      2	    Maille Club
8	          CREATION	2	15	  16	      0	    Création
7	          COUPE	        2	17	  18	      0	    Coupe


Can you help me to make a TREEVIEW in c# WINFORM with the CODE_EQU using this method
Best regards.
Posted
Updated 14-Sep-13 6:54am
v7
Comments
Richard C Bishop 13-Sep-13 16:13pm    
How do you suppose we help?
nabilg 13-Sep-13 17:28pm    
Can you help me to make a TREEVIEW in c# WINFORM with the CODE_EQU
BillWoodruff 15-Sep-13 11:40am    
What have you tried so far: have you written a parser, or found a way to get an in-memory tree-structure created from result of a query of the database ?

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900