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
   | Dim item, item2 As Object
        Dim i, k As Integer
        Dim rs As New Microsoft.SqlServer.ReportingServices2005.ReportingService2005
        Dim cat() As Microsoft.SqlServer.ReportingServices2005.CatalogItem = Nothing
        Dim root As New TreeNode
        root.Text = "ReportServer"
        TreeView1.Nodes.AddAt(0, root)
        rs.Credentials = System.Net.CredentialCache.DefaultCredentials
        i = 0
        If Not Page.IsPostBack Then
            cat = rs.ListChildren("/", True)
            For Each item In cat
                If item.Type = Microsoft.SqlServer.ReportingServices2005.ItemTypeEnum.Folder Then
                    Dim enfant As New TreeNode
                    enfant.Text = item.name
                    TreeView1.Nodes(0).ChildNodes.AddAt(i, enfant)
                    i = i + 1
                    For Each item2 In rs.ListChildren("/" & enfant.text, True)
                        k = 0
                        Dim enfant2 As New TreeNode
                        If item2.type = Microsoft.SqlServer.ReportingServices2005.ItemTypeEnum.Report Then
                            enfant2.Text = item2.name
                            enfant.ChildNodes.AddAt(k, enfant2)
                            k = k + 1
                        ElseIf item2.type = Microsoft.SqlServer.ReportingServices2005.ItemTypeEnum.DataSource Then
                            enfant2.ImageUrl = "datasource.gif"
                            enfant2.Text = item2.name
                            enfant.ChildNodes.AddAt(k, enfant2)
                            k = k + 1
                        ElseIf item2.type = Microsoft.SqlServer.ReportingServices2005.ItemTypeEnum.Model Then
                            enfant2.ImageUrl = "model.gif"
                            enfant2.Text = item2.name
                            enfant.ChildNodes.AddAt(k, enfant2)
                            k = k + 1
'******************ICI**************************'
'Si item2 n'existe pas, c'est a dire si enfant (un dossier) est vide alors
'ajout d'un enfant avec pour nom EMPTY
'j'ai essayé item2= et Is nothing,rs.ListChildren("/" & enfant.text, True) = et Is nothing...rien ne marche!'
                        ElseIf item2 = Nothing Then
                            k = 0
                            enfant2.text = "EMPTY"
                            enfant.childNodes.addAt(k, enfant2)
                            Exit For
                        End If
                    Next
                End If
            Next
        End If | 
Partager