Как убедить ascmd.exe сделать таблицы в качестве вывода, а не XML-файл?
Я пытаюсь увидеть данные в моем кубе OLAP с помощью утилиты ascmd. В качестве входных данных я помещаю запрос MDX, но только то, что имею в качестве выходных данных (в командной строке), является XML-файлом. Я пытался использовать параметры -Tf text и -Tf csv, но они не работают так, как мне кажется (я все время получаю XML). Я хочу, чтобы на моем выходе было что-то вроде этого: www.pinaldave.com/download/sqlcmd4.gif - Можно ли получить вывод текста в ascmd (как в sqlcmd)?
Спасибо за помощь. С уважением.
PS. Синтаксис, который я использую: ascmd.exe -S Имя_сервера -d База данных -i query.mdx -Tf csv -o output.csv
2 ответа
Я считаю, что -Tf - это формат для получения результатов трассировки, а не результатов запроса.
Вы можете зарегистрировать это как запрос в трекере проблем на сайте ascmd. Другой возможный обходной путь - настроить связанный сервер на вашем SQL Server и использовать функцию OPENQUERY() для отправки MDX в SSAS.
Действительно, утилита ascmd не обеспечивает вывод таблицы. Я думаю, это потому, что запросы MDX могут создавать многомерные выходные данные (например, сводные таблицы, где много строк и иерархий в строках и столбцах). Если вам нужна возможность создавать выходные данные в формате CSV, попробуйте создать статический метод, который преобразует XMLA в CSV и добавляет его в исходный код ascmd.