既に ADOMD を使用している場合、これは問題ありません。メタデータ クエリを使用するだけです。
http://msdn.microsoft.com/en-us/library/ms123485.aspx
または、AMO が便利ですhttp://msdn.microsoft.com/en-us/library/microsoft.analysisservices.aspx
私はそれを処理のために SSIS で使用します。要素の存在をテストするために .Net で簡単に使用できます。
using Microsoft.AnalysisServices;
...
Server server = new Server();
server.Connect(cubeConnectionString);
Database database = server.Databases.FindByName(databaseName);
Cube cube = database.Cubes.FindByName(cubeName);
foreach (MeasureGroup measureGroup in cube.MeasureGroups)
{
foreach (Partition partition in measureGroup.Partitions)
{
...
}
}
foreach (CubeDimension cubeDimension in cube.Dimensions)
{
Dimension dimension = cubeDimension.Dimension;
var dimName = dimension.Name;
...
}
必要なすべての要素の名前を事前に見つけることは、おそらく難しい部分です (そして、すべてを最新の状態に保つこと)。
キューブですべてのクエリを起動し、「そんなことはありません」という応答をトラップしようとする方が簡単ではないでしょうか?