ADOMD позволяет запрашивать структуру куба, а также данные.Вам не нужен MDX;Вы можете получить его для перечисления измерений в определенном кубе или для перечисления элементов на определенном уровне определенного измерения.Вот очень старый пример ASP:
Set oCat = Server.CreateObject("ADOMD.Catalog")
Set oCat.ActiveConnection = oCon
Set oDim = oCat.CubeDefs("CubeName").Dimensions("DimName")
Set oMembers = oDim.Hierarchies(0).Levels(2).Members
'then loop oMembers and get their .Caption property
Если вы знаете MDX, вы можете написать запрос, чтобы вывести список нужных вам членов, не возвращая никаких данных, и просто использовать часть результатов для заполнения раскрывающегося списка.,Например:
SELECT {[Location].[All Location].children} ON ROWS,
{} ON COUMNS
FROM [CubeName]
Вы можете даже выдать это из SQL, используя OPENROWSET
, если хотите.