0

У меня есть отчет, который выводит относительно простые подсчеты клиентов. Он выводит все из системы, поскольку параметры данных не требуются. Они хотят видеть все.Отчет SSRS 2008 R2. Изменение месячной группировки из календарного месяца

То, что меня выбрасывает, - это месяцы, сгруппированные к 24-м месяцам до 23 числа следующего месяца.

К примеру, в октябре месяце 2016 года должны рассчитывать все данные между 24 октября 2016 года по 23 ноября 2016 года, предыдущий Septeber следует группировать Everthing между 24/09/2016 до 23/10/2016 и т.д. и т.п.

Короче говоря, можно ли группировать месяц с 24-го числа этого месяца до 23-го числа следующего месяца?

С удовольствием предоставляем дополнительную информацию, немного новую для продвинутых задач ssrs, подобных этому. Я искал такие решения, но не нашел ничего подходящего. Любая помощь очень ценится.

+0

Я бы применил группировку из SQL, поделился вашим запросом с нами. –

+0

Ваше право, спасибо, я позволю sql работать на ногу. – ChipChipowsky

ответ

1

Эти требования могут быть реализованы путем повышения вашего запроса. Скажем F.E., вы следующее:

select 
    t.Date, 
    t.AggregatedField 
from SomeSchema.SomeTable as t 

Вы можете выполнить следующие действия:

select 
    MonthNumber = 
    case 
     when DATEPART(DAY, t.Date) >= 24 then DATEPART(MONTH, t.Date) 
     else DATEPART(MONTH, t.Date) - 1 
    end, 
    t.AggregatableField 
from SomeSchema.SomeTable as t 

Выход вы получите будет как (month_number, field_to_aggregate). Затем вам необходимо сгруппировать данные с помощью month_number, вы можете сделать это непосредственно в SQL или с помощью группировки отчетов RDL (считайте, что в первую очередь обеспечивает лучшую производительность). Чтобы построить название месяца, вам, вероятно, нужно извлечь год число нравится это:

DATEPART(YEAR, t.Date) 

, а затем построить дату, используя номер месяца anhd числа года.

+0

Спасибо. Я подумал о написании функции sql, чтобы вернуть месяц, но ваш - более элегантное решение. Я обязательно скажу Сантау об этом! еще раз спасибо. – ChipChipowsky

+0

ХА, пожалуйста! Если бы мой ответ помог вам, вы можете отметить его как принятый) – grafgenerator

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