Compartilhar via


Depurando procedimentos armazenados

Os procedimentos armazenados do Analysis Services são, na verdade, bibliotecas CLR ou COM (normalmente DLLs) escritas em C# (ou em outra linguagem CLR ou COM). Portanto, depurar um procedimento armazenado é bem parecido com depurar outro aplicativo no ambiente de depuração do Visual Studio. Você depura procedimentos armazenados no ambiente de desenvolvimento do Visual Studio usando funções de depuração integradas. Elas permitem que você pare nas localizações do procedimento, verifique a memória e os valores do Registro, altere variáveis, observe o tráfego de mensagens e analise como o código funciona.

Depurar um procedimento armazenado

  1. Abra o projeto usado para criar a DLL no Visual Studio.

  2. Crie pontos de interrupção no método ou na função correspondente ao procedimento que você deseja depurar.

  3. Use o Visual Studio para criar uma compilação para depuração de uma DLL de procedimentos armazenados.

  4. Implante a DLL no servidor. Para obter mais informações sobre como implantar a DLL no servidor, consulte Criando procedimentos armazenados.

  5. Você precisa de um aplicativo que chame o procedimento armazenado que deseja testar. Se ainda não houver um aplicativo pronto, use o Editor de Consultas MDX do SQL Server Management Studio para criar uma consulta MDX para chamar o procedimento armazenado que será testado.

  6. No Visual Studio, anexe ao processo do Analysis Services (Msmdsrv.exe).

    1. No menu Depurar, escolha Anexar ao Processo.

    2. Na caixa de diálogo Anexar ao Processo, selecione Mostrar processos de todos os usuários.

    3. Na lista Processos Disponíveis, na coluna Processo, clique em Msmdsrv.exe. Se houver mais que uma instância do Analysis Services em execução no servidor, será necessário identificar o processo pelo ID da instância que você deseja usar.

    4. Na caixa de texto Anexar ao, confirme se o tipo de programa apropriado foi selecionado. Para uma DLL CLR, clique em Selecionar, clique em Depurar esses tipos de código, em Gerenciado e, em seguida, clique em OK. Para uma DLL COM, clique em Selecionar, clique em Depurar esses tipos de código, em Nativo e, em seguida, clique em OK.

    5. Clique em Anexar.

  7. No Analysis Services, acione o programa ou script MDX que chama o procedimento armazenado. O depurador será interrompido quando chegar a uma linha que contém um ponto de interrupção. Você pode avaliar variáveis na janela de informação, exibir os locais e navegar pelo código.

Se houver problemas ao depurar uma biblioteca, certifique-se de que o arquivo do banco de dados do programa correspondente (arquivo PDB) foi copiado para o local de implantação no servidor. Se esse arquivo não foi copiado durante o registro ou a implantação, copie-o manualmente no mesmo local onde está a DLL. No caso de código nativo (DLL COM), o arquivo PDB reside no subdiretório \debug. Para código gerenciado (DLL CLR), reside no subdiretório \WINDEBUG.