Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Обсуждение Stimulsoft Reports.NET
Ответить
retro
Сообщения: 4
Зарегистрирован: 14 апр 2010, 15:35

Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Сообщение retro »

Подключение создается и работает.
Но получить колонки по запросу нет никакой возможности, поскольку в запросе используются фигурные скобки.
Пример:

SELECT
{ Route.nonground.Members } ON COLUMNS,
{ Time.[1st half].Members } ON ROWS
FROM TestCube
WHERE ( [Measures].[Packages] )

Что делать?
Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Сообщение Aleksey »

Здравствуйте,

К сожалению, на данный момент наш продукт не поддерживает MDX, DMX запросы для Analysis Services.

Спасибо.
retro
Сообщения: 4
Зарегистрирован: 14 апр 2010, 15:35

Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Сообщение retro »

Тогда вопрос проще.

Как написать запрос, если в нем есть строка содержащая фигурные скобки так, что-бы фигурные скобки в нем остались, а не интерпретировались генератором отчетов как выражение, которое надо заменить.

Пример:
SELECT '{Prefix-}' + name as name FROM NV_CITY

{Prefix-} - строка которая должна остаться.

Такое не получается:

SELECT '{{Prefix-}}' + name as name FROM NV_CITY

И такое:

SELECT '\{Prefix-\}' + name as name FROM NV_CITY

Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Сообщение Aleksey »

Здравствуйте,

Вы можете использовать переменные отчета.
К примеру вы хотите использовать запрос вида:

Код: Выделить всё

SELECT {[Measures].[Internet Sales Amount]} ON COLUMNS
FROM [Adventure Works]
WHERE ([Date].[Calendar].[Calendar Quarter].&[2003]&[2],
       [Product].[Product Line].&[M],
       [Customer].[Country].&[Australia])
Вы можете завести 2 переменные
VarRows, тип string, значение по умолчанию = {[Measures].[Internet Sales Amount]}
VarWhere, тип string, значение по умолчанию = [Date].[Calendar].[Calendar Quarter].&[2003]&[2],[Product].[Product Line].&[M],[Customer].[Country].&[Australia]
и использовать для Data Source следующий запрос:

Код: Выделить всё

SELECT {VarRows} ON COLUMNS
FROM [Adventure Works]
WHERE ({VarWhere})
После этого вы сможете получить колонки запроса и использовать их в своем отчете.
Смотрите пример отчета в приложенном файле.

Спасибо.
Вложения
Sample Report.mrt
(5.96 КБ) 350 скачиваний
retro
Сообщения: 4
Зарегистрирован: 14 апр 2010, 15:35

Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Сообщение retro »

ОК. Спасибо. Хоть и не очень просто....
Aleksey
Сообщения: 2907
Зарегистрирован: 22 апр 2010, 06:57

Как создать запрос через подключение к Microsoft OLE DB Provider for Analysis Services

Сообщение Aleksey »

Всегда рады помочь!
Ответить