Débogage des procédures stockées

Les procédures stockées Analysis Services sont en fait des bibliothèques CLR ou COM (normalement des DLL) écrites en C# (ou toute autre langue CLR ou COM). Par conséquent, le débogage d’une procédure stockée est similaire au débogage d’une autre application dans l’environnement de débogage Visual Studio. Vous déboguez des procédures stockées dans l’environnement de développement Visual Studio à l’aide des fonctions de débogage intégrées. Celles-ci vous permettent d’arrêter à des emplacements de procédure, d’inspecter la mémoire et d’inscrire des valeurs, de modifier des variables, d’observer le trafic des messages et d’examiner de près le fonctionnement de votre code.

Pour déboguer une procédure stockée

  1. Ouvrez le projet utilisé pour créer la DLL dans Visual Studio.

  2. Créez des points d’arrêt dans la méthode ou la fonction correspondant à la procédure à déboguer.

  3. Utilisez Visual Studio pour créer une build de débogage d’une DLL de procédure stockée.

  4. Déployez la DLL sur le serveur. Pour plus d’informations sur le déploiement de la DLL sur le serveur, consultez Création de procédures stockées.

  5. Vous avez besoin d’une application qui appelle la procédure stockée que vous souhaitez tester. Si vous n’en avez pas, vous pouvez utiliser l’éditeur de requête MDX dans SQL Server Management Studio pour créer une requête MDX qui appelle la procédure stockée que vous souhaitez tester.

  6. Dans Visual Studio, attachez-vous au processus Analysis Services (Msmdsrv.exe).

    1. Dans le menu Débogage , choisissez Attatch toProcess.

    2. Dans la boîte de dialogue Attatch toProcess , sélectionnez Afficher les processus de tous les utilisateurs.

    3. Dans la liste Processus disponibles , dans la colonne Processus , cliquez surMsmdsrv.exe. S’il existe plusieurs instances d’Analysis Services en cours d’exécution sur le serveur, vous devez identifier le processus par l’ID de l’instance que vous souhaitez utiliser.

    4. Dans la zone de texte Attacher à la zone de texte, vérifiez que le type de programme approprié est sélectionné. Pour une DLL CLR, cliquez sur Sélectionner, puis sur Déboguer ces types de code, puis sur Géré, puis sur OK. Pour une DLL COM, cliquez sur Sélectionner, puis sur Déboguer ces types de code, puis sur Native, puis sur OK.

    5. Cliquez sur pour joindre.

  7. Dans Analysis Services, appelez le programme ou le script MDX qui appelle la procédure stockée. Le débogueur s’arrête lorsqu’il atteint une ligne contenant un point d’arrêt. Vous pouvez évaluer des variables dans la fenêtre espion, afficher les variables locales et parcourir le code.

Si vous rencontrez des problèmes de débogage d’une bibliothèque, assurez-vous que le fichier de base de données de programme (PDB) correspondant a été copié à l’emplacement de déploiement sur le serveur. Si ce fichier n’a pas été copié lors de l’inscription ou du déploiement, vous devez le copier manuellement dans le même emplacement que la DLL. Pour le code natif (DLL COM), le fichier PDB réside dans le sous-répertoire \debug. Pour le code managé (DLL CLR), il réside dans le sous-répertoire \WINDEBUG.

Voir aussi

Gestion des assemblys de modèle multidimensionnel
Définition de procédures stockées