Предварительный просмотр SSRS rdl показывает дату с неправильным значением, несмотря на запрос SQL, который должен ее исключить - PullRequest
0 голосов
/ 07 ноября 2018

Предварительный просмотр SSRS rdl показывает дату с неверным значением, несмотря на запрос SQL, который должен ее исключить.

xml для запроса в rdl-файле:

  <Query>
    <DataSourceName>ourDataSource</DataSourceName>
    <CommandText>
      use ourDataBase
      ----------------------------------------
      select convert(date, Date1) as ourDate1, count(*) as ourCountForDate
      from ourDataBase.dbo.ourTable
      where
      (
          (Date1 between (getDate()-365) and (getDate()+1) )
      )
      group by convert(date, Date1)
      order by convert(date, Date1)
    </CommandText>
    <rd:UseGenericDesigner>true</rd:UseGenericDesigner>
  </Query>

Этот запрос прекрасно работает в базе данных SQL при использовании TSQL непосредственно в SSMS.

Однако в базе данных есть случайное значение со странным годом (например, 7654), и оно отображается в результатах для файла rdl в «предварительном просмотре», но НЕ в SQL- Результаты запроса в SSMS.

Я перепробовал множество вариантов, с большим или равным и т. Д., Но это случайное значение всегда отображается.

Я использую SSRS, Visual Studio 2015, с базовым TSQL. SSRS использует 2016/01 / reportdefinition. Сервер SQL для проекта - SQL Server 2008 R2, 2012 или 2014.

Есть идеи?

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

Для тех, кто не хочет использовать хранимые процедуры (например, из-за необходимости переносить их из различных областей базы данных), это работает для меня:

Удаление связанного файла «.data» также помогло «очистить» и «перестроить» проект.

Можно также попробовать что-то вроде убедиться, что год начинается с 2 (или для некоторых меньше 3). Вот как проверяется начало 2:

(слева (Datepart (гггг, Date1), 1) = '2')

0 голосов
/ 07 ноября 2018

Лучше создать хранимую процедуру в SQL Server, а затем вызвать ее по SSRS. Может работать лучше тоже. Это позволяет полностью контролировать данные в SQL Server.

...