2009-04-17 5 views
0

Я в настоящее время есть запрос, который выглядит следующим образом:Использование MDX Параметры в Report Builder 2.0

SELECT
NON EMPTY ([Measures].[TOTAL]) ON 0,
NON EMPTY (([ENROLL DATE].[CALENDAR].[YEAR].["+ Parameters!EnrollDate.Value +"] * [DIM ENROLLMENT].[ENROLLMENT].[ENROLLMENT PROG].ALLMEMBERS)) ON 1

FROM (SELECT (([DIM ENROLLMENT].[ENROLLMENT].[TERMINATION REASON].[Still Enrolled])) ON 0 FROM [NapaCHI]);

полужирный раздел приходит из параметров se где я вручную задал параметры с помощью Label = 2006 and Value = 2006. Я пробовал практически каждый приемлемый синтаксис и читал о каждой статье об этом, и, похоже, не может заставить его работать независимо от того, я сам определяю значения или использую отдельный оператор MDX, который выбирает отдельные непустые годы и (NULL) для совокупности.

Помогите пожалуйста, это сводит меня с ума! Спасибо.

ответ

0

Ваше выражение выглядит неполным, вам нужно будет запустить его с помощью знака & = и процитировать его надлежащим образом. Что-то вроде следующего

="SELECT 
NON EMPTY ([Measures].[TOTAL]) ON 0, 
NON EMPTY (([ENROLL DATE].[CALENDAR].[YEAR].[" + Parameters!EnrollDate.Value + "] * [DIM ENROLLMENT].[ENROLLMENT].[ENROLLMENT PROG].ALLMEMBERS)) ON 1 

FROM (SELECT (([DIM ENROLLMENT].[ENROLLMENT].[TERMINATION REASON].[Still Enrolled])) ON 0 FROM [NapaCHI]);" 

Вы также можете иметь проблемы с типами данных, вы можете либо использовать свойство .Label параметра или явно преобразовать значение в строку. Если это не работает, было бы полезно узнать, какую ошибку вы получаете.

+0

На самом деле я не получаю никаких ошибок, запрос просто ничего не возвращает. Я думаю, что вы можете быть на правильном пути с такими типами данных, но я не уверен, чего бы там ожидали. – ajdams

+0

Тогда могут быть типы данных. Если ваш параметр проходит в полную дату, он может быть расширен до [Дата регистрации]. [Календарь]. [Года]. [01-01-2009] вместо того, чтобы читать как [Дата регистрации]. [Календарь]. [Год] . [2009] и это приведет к пустой оси строки. –

0

Я думаю, что это MDX требует,:

NON EMPTY (([ENROLL DATE].[CALENDAR].[YEAR].[Calendar " + Parameters!EnrollDate.Value + "] 

Или вы могли бы вы фактический язык MDX так:

[ENROLL DATE].[CALENDAR].[YEAR].&[" + Parameters!EnrollDate.Value + "-01-01T00:00:00] 

Любой из тех, кто должен работать.

 Смежные вопросы

  • Нет связанных вопросов^_^