0

Microsoft.AnalysisServices.Server クラスを使用して、SSAS のインスタンスに接続しています。

名前でデータベースを取得し、オプションとして ProcessType.ProcessFull を指定して Process メソッドを呼び出します。

server.Databases.FindByName("MyDatabase").Process(ProcessType.ProcessFull)

プログラムは 1 時間ハングし、その後データベースは処理されません。

また、Server クラスを使用してデータベースを処理する XMLA コマンドを渡してみました。このコマンドは、Sql Server Management Studio で実行すると機能しますが、サーバー接続を介して渡すと実行されません。

server.Execute("My XMLA Process Command")

server.Execute を使用して XMLA コマンドを渡し、データベースを処理してからデータベースを作成します。create database コマンドは正常に機能しますが、process database コマンドは XMLA または C# オブジェクトを使用しても機能しません。プログラムが 1 時間フリーズするだけで、データベースは処理されません。

どんな助けでも大歓迎です。前もって感謝します。

4

1 に答える 1

0

データのサイズによっては、完全な処理にかなりの時間がかかる場合があります。

GUI アプリを作成していて応答しない場合は、メイン スレッドで実行時間の非常に長いタスクを実行していることが原因である可能性があります。BackgroundWorker や ThreadPool.QueueUserWorkitem などをバックグラウンドで実行してみてください。

進行状況を確認するには、進行状況イベントをサブスクライブし、メイン スレッドで UI を更新することで進行状況を取得できます。

これらの進行状況トレース イベントへのサブスクライブについて説明するスレッドを次に示します。

http://social.msdn.microsoft.com/forums/en-US/sqlanalysisservices/thread/e9f87b28-a8c2-40fc-b6e6-68dfa59b07a6

于 2011-11-04T03:00:17.503 に答える