デバッグ系のストアド プロシージャ
適用対象:
SQL Server Analysis Services Azure Analysis Services
Power BI Premium
Analysis Servicesストアド プロシージャは、C# (または他の CLR または COM 言語) で記述された CLR または COM ライブラリ (通常は DLL) です。 このため、ストアド プロシージャのデバッグは、Visual Studio デバッグ環境で他のアプリケーションをデバッグする作業とほとんど同じになります。 Visual Studio 開発環境でのストアド プロシージャのデバッグは、統合されたデバッグ機能を使用します。 これらの機能を使用すると、プロシージャ内のさまざまな場所で停止し、メモリやレジスタの値を調査し、変数を変更し、メッセージ トラフィックを観察し、コードの動作を詳細にわたって確認することができます。
ストアド プロシージャをデバッグするには
DLL の作成に使用したプロジェクトを Visual Studio で開きます。
デバッグするプロシージャに対応するメソッドまたは関数内にブレークポイントを作成します。
Visual Studio を使用して、ストアド プロシージャ DLL のデバッグ ビルドを作成します。
DLL をサーバーに配置します。 DLL をサーバーに配置する方法の詳細については、「ストアド プロシージャの作成 」を参照してください。
テストするストアド プロシージャを呼び出すアプリケーションが必要です。 準備ができていない場合は、SQL Server Management Studio の MDX クエリ エディター を使用して、テストするストアド プロシージャを呼び出す MDX クエリを作成できます。
このVisual Studioプロセス (Analysis Services) にアタッチMsmdsrv.exe。
[デバッグ] メニューの [ Attatch toProcess] を選択します。
[ Attatch toProcess] ダイアログ ボックスで 、[すべてのユーザーの プロセスを表示する] を選択します。
[使用可能な プロセス] ボックスの 一覧の [ プロセス] 列で 、次の Msmdsrv.exe。 サーバー上で実行されている Analysis Servicesインスタンスが複数ある場合は、使用するインスタンスの ID でプロセスを識別する必要があります。
[アタッチ する] テキスト ボックスで、適切なプログラムの種類が選択されている必要があります。 CLR DLL の場合は、[ 選択] をクリックし、[これらのコードの種類をデバッグする] をクリックし、[ マネージド] をクリックして、[OK] をクリック します。 COM DLL の場合は、[選択] を クリックし、[これらのコードの種類をデバッグする] をクリックし、[ネイティブ] を クリックして、[OK] をクリック します。
[アタッチ] をクリックします。
このAnalysis Servicesストアド プロシージャを呼び出すプログラムまたは MDX スクリプトを呼び出します。 デバッガーは、ブレークポイントを含む行に達すると停止します。 ウォッチ ウィンドウで変数を評価し、ロケールを表示し、コードをステップ実行できます。
ライブラリを正しくデバッグできない場合は、対応するプログラム データベース (PDB) ファイルがサーバーの配置場所にコピーされていることを確認してください。 このファイルが登録または配置中にコピーされなかった場合には、DLL と同じ場所に手動でコピーする必要があります。 ネイティブ コード (COM DLL) の場合、PDB ファイルは \debug サブディレクトリに含まれます。 マネージド コード (CLR DLL) の場合、このファイルは \WINDEBUG サブディレクトリに含まれます。