Мне нужно составить список табличных таблиц SSAS (совместимости версии 1500) из PowerShell.
Invoke-ASCmd
в Sql Серверный пакет PowerShell выглядит многообещающе, однако я Я немного потерян в документации.
Я вижу, что следующий запрос из примеров перечисляет источники данных табличного экземпляра:
Invoke-ASCmd -Database:"Adventure Works DW 2008R2" -Query:
"<Discover xmlns='urn:schemas-microsoft-com:xml-analysis'>
<RequestType>DISCOVER_DATASOURCES</RequestType>
<Restrictions></Restrictions><Properties></Properties>
</Discover>"
Похоже, что параметр RequestType
- это то, что я после; Я не нашел никакой документации по этому вопросу, поэтому попытался угадать DISCOVER_TABLES
, LIST_TABLES
и TABLES
, которые были отклонены.
TMSL (то, что 1500 поддерживает согласно на эта ссылка ) содержит команды для изменения и удаления таблиц, однако я не могу найти что-либо по запросу или листингу.
Dynami c Представления управления звучат как возможное решение, однако я не могу понять синтаксис.
С "Сценарий Административные задачи в анализе Службы ":
Вы можете создать отдельный файл сценария MDX, который запрашивает данные или системную информацию. Например, динамические c представления управления (DMV), которые предоставляют информацию о локальных серверных операциях и работоспособности сервера, доступны с помощью оператора выбора MDX.
Найдено в этом обсуждении и попытался
Invoke-ASCmd -Server "localhost" -Database:"database" -Query:"SELECT * FROM DBSCHEMA_TABLES"
однако я получаю сообщение об ошибке
-1055522771 "Либо пользователь X не имеет прав доступа к ссылочной модели интеллектуального анализа данных, DBSCHEMA_TABLES, либо объект не существует. "