Lister les cubes olap d'un serveur microsoft analysis - source microsoft

Soyez le premier à donner votre avis sur cette source.

Snippet vu 4 959 fois - Téléchargée 38 fois

Contenu du snippet

Cette source de Microsoft un peu modifiée, se présente sous forme d'une fonction retournant une chaine de type String contenant les Cubes Olap/Rolap/Molap présents sur un serveur Analysis.

Nécéssite une référence à "Microsoft Decision Support Objects" (DSO) dans le projet.

Passer uniquement le nom du serveur Analysis en paramètre
ex :
Dim result as string
result = ListCubes "mon_serveur_analysis"

Source / Exemple :


Public Function ListCubes(AnalysisServer As String) As String
    On Error GoTo GestErr
    Dim dsoServer As New DSO.Server
    Dim dsoDB As DSO.MDStore
    Dim dsoCube As DSO.MDStore

    ' Create a connection to the Analysis server.
    dsoServer.Connect AnalysisServer
    
    ' Step through the databases in the server object.
    For Each dsoDB In dsoServer.MDStores
        
        ' Print the name and description of the database
        ListCubes = ListCubes & "DATABASE: " & dsoDB.Name & " - " & _
        dsoDB.Description

        ' Step through the cubes in the database object.
        If dsoDB.MDStores.Count = 0 Then
            ListCubes = ListCubes & "  Cube: None"
        Else
            For Each dsoCube In dsoDB.MDStores
                
                ' Print the name of the cube.
                ListCubes = ListCubes & "  Cube: " & dsoCube.Name

                ' Check to see whether the cube is regular or virtual.
                If dsoCube.SubClassType = sbclsRegular Then
                   ListCubes = ListCubes & "       SubClassType: Regular"
                   ListCubes = ListCubes & "        SourceTable: " & _
                     dsoCube.SourceTable
                Else
                    ListCubes = ListCubes & "       SubClassType: Virtual"
                End If
             ListCubes = ListCubes & vbCrLf
             Next
        End If
    Next
    Exit Function
    
GestErr:
    If Err.Number <> 0 Then
        ListCubes = ListCubes & vbCrLf & AnalysisServer & "->" & Err.Number & ":" & Err.Description
    End If
    
End Function

A voir également

Ajouter un commentaire Commentaire
Messages postés
2
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
16 avril 2003

On peut également utiliser ADO (bibliothèque ADOMD ,MD pour Multidimensional), et c'est beaucoup plus approprié et cela permet de descendre dans les dimensions,les niveaux, les membres....etc

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.