Depurar procedimientos almacenados

Se aplica a: SQL Server Analysis Services Azure Analysis Services Power BI Premium

Analysis Services procedimientos almacenados son en realidad bibliotecas CLR o COM (normalmente archivos DLL) que se escriben en C# (o en cualquier otro lenguaje CLR o COM). Por consiguiente, la depuración de un procedimiento almacenado es muy similar a la depuración de cualquier otra aplicación del entorno de depuración de Visual Studio. Los procedimientos almacenados del entorno de desarrollo de Visual Studio pueden depurarse con las funciones de depuración integradas. Con ellas podrá detenerse en ubicaciones de procedimientos, inspeccionar los valores de memoria y registro, cambiar variables, observar el tráfico de mensajes y examinar cómo funciona el código.

Para depurar un procedimiento almacenado

  1. Abra el proyecto utilizado para crear la DLL en Visual Studio.

  2. Cree puntos de interrupción en el método o función correspondiente al procedimiento que desee depurar.

  3. Utilice Visual Studio para crear una compilación de depuración de una DLL del procedimiento almacenado.

  4. Implemente la DLL en el servidor. Para obtener más información sobre cómo implementar el archivo DLL en el servidor, vea Crear procedimientos almacenados.

  5. Se necesita una aplicación que llame al procedimiento almacenado que desee probar. Si no tiene uno listo, puede usar el Editor de Power Query MDX de SQL Server Management Studio para crear una consulta MDX que llame al procedimiento almacenado que desea probar.

  6. En Visual Studio, adjunte al proceso Analysis Services (Msmdsrv.exe).

    1. En el menú Depurar , elija Attatch toProcess.

    2. En el cuadro de diálogo Attatch toProcess , seleccione Mostrar procesos de todos los usuarios.

    3. En la lista Procesos disponibles , en la columna Proceso , haga clic Msmdsrv.exe. Si hay más de una instancia de Analysis Services en ejecución en el servidor, debe identificar el proceso mediante el identificador de la instancia que desea usar.

    4. En el cuadro de texto Asociar a , asegúrese de que está seleccionado el tipo de programa adecuado. En el caso de un archivo DLL de CLR, haga clic en Seleccionar, en Depurar estos tipos de código, en Administrado y, a continuación, en Aceptar. En el caso de un archivo DLL COM, haga clic en Seleccionar, en Depurar estos tipos de código, en Nativo y, a continuación, en Aceptar.

    5. Haga clic en Adjuntar.

  7. En Analysis Services, invoque el programa o el script MDX que llama al procedimiento almacenado. El depurador se interrumpirá al alcanzar una línea que contiene un punto de interrupción. Podrá evaluar variables en la ventana de inspección, ver variables locales y reproducir el código.

Si experimenta problemas al depurar una biblioteca, compruebe que el archivo de la base de datos del programa (PDB) correspondiente se ha copiado en la ubicación de implementación del servidor. Si no se ha copiado el archivo durante el registro o la implementación, es necesario copiarlo manualmente en la misma ubicación que la DLL. En el código nativo (DLL de COM), el archivo PDB reside en el subdirectorio \debug. En el código administrado (DLL de CLR), reside en el subdirectorio \WINDEBUG.

Consulte también

Administración de ensamblados de modelos multidimensionales
Definir procedimientos almacenados