#reporting-services #ssrs-2008 #mdx
Вопрос:
Похоже, что запрос не может заставить диапазон дат работать. Я передаю две даты в качестве параметров, и, исходя из этого, я ожидал бы [Sector Name]
, что выпадающие значения будут получены на основе диапазона дат( @FromJoinDateDate:@ToJoinDateDate
) и обоих @ADMTRANSINSpecialty
, и @ADMTRANSINSite
последние два, похоже, работают правильно.
Пример параметров:
@FromJoinDateDate: [Sector_Join_Date].[Date].amp;[2020-07-29T00:00:00]
@ToJoinDateDate: [Sector_Join_Date].[Date].amp;[2021-07-29T00:00:00]
WITH
MEMBER [Measures].[ParameterCaption] AS [ADM_TRANS_IN].[Sector Name].CURRENTMEMBER.MEMBER_CAPTION
MEMBER [Measures].[ParameterValue] AS [ADM_TRANS_IN].[Sector Name].CURRENTMEMBER.UNIQUENAME
MEMBER [Measures].[ParameterLevel] AS [ADM_TRANS_IN].[Sector Name].CURRENTMEMBER.LEVEL.ORDINAL
SELECT {
[Measures].[ParameterCaption],
[Measures].[ParameterValue],
[Measures].[ParameterLevel]
} ON COLUMNS ,
[ADM_TRANS_IN].[Sector Name].ALLMEMBERS ON ROWS
FROM ( SELECT ( STRTOSET(@ADMTRANSINSpecialty, CONSTRAINED) ) ON COLUMNS
FROM ( SELECT ( STRTOSET(@ADMTRANSINSite, CONSTRAINED) ) ON COLUMNS
FROM ( SELECT { STRTOMEMBER(@FromJoinDateDate, CONSTRAINED) :
STRTOMEMBER(@ToJoinDateDate, CONSTRAINED) } ON COLUMNS
FROM [Model])))
У меня такое чувство, что функция StrToMember может возвращать значение null в обоих случаях, поэтому результаты не соответствуют запросу, однако мне нужно использовать ее, чтобы использовать функцию диапазона. Может быть, это также формат даты, не соответствующий тому, что находится в кубе?
Ответ №1:
Один из способов проверить фактическое значение формата даты в измерении даты заключается в следующем:
- Создайте новый запрос
- Перейдите к измерению даты, разверните элементы, выберите дату и перетащите ее в окно запроса.
Затем это покажет вам точный формат даты для ваших данных. Ниже приведен пример снимка экрана с использованием образца AdventureWorks:
Как видно, несмотря на то, что в дереве он показан как «1 января 2005 года», фактические данные имеют формат: 20050101.
Как только вы сможете найти фактический формат даты в своих данных, вы сможете соответствующим образом сконструировать строковое представление.