Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Работа с датами в самом Reporting Services / 17 сообщений из 17, страница 1 из 1
23.11.2009, 15:20
    #36326086
Demonoid75
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Есть запрос который выбирает даты для основного запроса:
Код: plaintext
1.
2.
3.
SELECT DISTINCT  Period
FROM         mVersion
ORDER BY Period
получаем даты вида:
200103
200106
200109
...........
Возможно ли средствами самого отчета привести их к виду:
03.2001
06.2001
09.2001
.............
Спасибо!
...
Рейтинг: 0 / 0
23.11.2009, 15:25
    #36326102
buven
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Может преобразовать в строку?

Проводить жизнь в ожидании мессии, который придёт и спасёт мир, всё-равно, что ждать палку в тетрисе.
Даже если и появится, то ты к тому времени наберёшь такую гору дерьма, что те будет уже абсолютно пох... :)
...
Рейтинг: 0 / 0
23.11.2009, 16:41
    #36326418
Demonoid75
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Нашел... Может кому еще пригодится...

= Mid(cstr(Parameters!fPeriod.Value),5,2)+"."+ Mid(cstr(Parameters!fPeriod.Value),1,4)
...
Рейтинг: 0 / 0
24.11.2009, 05:16
    #36327321
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Хотел сначала предложить
=Parameters!fPeriod.Value.ToString("MM.yyyy")
но почемуто в SSRS на это ругается.

Но можно так
=Right(Parameters!fPeriod.Value.ToShortDateString,7)
...
Рейтинг: 0 / 0
24.11.2009, 09:41
    #36327497
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Код: plaintext
=Format(Parameters!fPeriod.Value, "MM.yyyy")

Разумеется, у fPeriod должен быть тип дата.

P.S. Если подается на вход строка, не забывайте: родной формат даты в RS: yyyy-MM-dd
...
Рейтинг: 0 / 0
24.11.2009, 10:08
    #36327557
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
МСУ
Код: plaintext
=Format(Parameters!fPeriod.Value, "MM.yyyy")
Я пытался с параметром типа дата, и не плучилось.
...
Рейтинг: 0 / 0
24.11.2009, 10:09
    #36327564
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
А родной формат даты зависит от языка отчета, насколько я понял.
...
Рейтинг: 0 / 0
24.11.2009, 10:24
    #36327601
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Дикий БиллА родной формат даты зависит от языка отчета, насколько я понял.
Родной формат даты - он оттого и родной, что не зависит ни от таких региональных настроек.

P.S. Это как в сиквеле yyyyMMdd. Кастить можно напрямую из строки. Не зависит от коллейшена.

Код: plaintext
1.
DECLARE @d DATETIME
SET @d = '20091212'
...
Рейтинг: 0 / 0
24.11.2009, 10:27
    #36327616
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Дикий БиллЯ пытался с параметром типа дата, и не плучилось.
У меня всё работает, проверьте еще разок на Globals.ExecutionTime:

Код: plaintext
=Format(Globals.ExecutionTime, "MM.yyyy")
...
Рейтинг: 0 / 0
24.11.2009, 10:30
    #36327621
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Проверьте еще раз тип параметра
...
Рейтинг: 0 / 0
24.11.2009, 10:33
    #36327633
Demonoid75
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Но к сожалению Period тип данных int.
и подошел только мой вариант
= Mid(cstr(Parameters!fPeriod.Value),5,2)+"."+ Mid(cstr(Parameters!fPeriod.Value),1,4)
Но мне с в соседнем столбце нужно получить соотвественно прошлого года.
Например если = Mid(cstr(Parameters!fPeriod.Value),5,2)+"."+ Mid(cstr(Parameters!fPeriod.Value),1,4)
получаем 12.2006, то в соседнем нужно вывести 12.2005.
Как тогда нужно переписать,
= Mid(cstr(Parameters!fPeriod.Value),5,2)+"."+ Mid(cstr(Parameters!fPeriod.Value),1,4)
чтоб получить СООТВЕСТВЕННО ПРОШЛОГО ГОДА?
...
Рейтинг: 0 / 0
24.11.2009, 10:36
    #36327640
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Demonoid75Но к сожалению Period тип данных int.
А почему не bool?
...
Рейтинг: 0 / 0
24.11.2009, 10:42
    #36327666
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
МСУУ меня всё работает, проверьте еще разок на Globals.ExecutionTime:

Код: plaintext
=Format(Globals.ExecutionTime, "MM.yyyy")

Блин, у вас функция Format.
Извиняюсь, не заметил сразу. Я пытался в ToString("MM.yyyy") как в VB.
...
Рейтинг: 0 / 0
24.11.2009, 10:44
    #36327672
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
МСУДикий БиллА родной формат даты зависит от языка отчета, насколько я понял.
Родной формат даты - он оттого и родной, что не зависит ни от таких региональных настроек.

P.S. Это как в сиквеле yyyyMMdd. Кастить можно напрямую из строки. Не зависит от коллейшена.

Код: plaintext
1.
DECLARE @d DATETIME
SET @d = '20091212'
Ну я имел в виду что с русским языком отчета такое
Код: plaintext
=Right(Parameters!fPeriod.Value.ToShortDateString, 7 )
работает.
Но теперь это неважно :)
...
Рейтинг: 0 / 0
24.11.2009, 10:50
    #36327694
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Дикий БиллНу я имел в виду что с русским языком отчета такое
Код: plaintext
=Right(Parameters!fPeriod.Value.ToShortDateString, 7 )
работает.
Билл, без обид - и Вы считаете это "нормальным" кодом? ;)
...
Рейтинг: 0 / 0
24.11.2009, 10:55
    #36327716
Дикий Билл
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
МСУДикий БиллНу я имел в виду что с русским языком отчета такое
Код: plaintext
=Right(Parameters!fPeriod.Value.ToShortDateString, 7 )
работает.
Билл, без обид - и Вы считаете это "нормальным" кодом? ;)Конечно нет я его сейчас привел чоб показать, что он не зависит от родного формата.
А вообще придумал такое потому что ToString не прошел
...
Рейтинг: 0 / 0
09.12.2009, 12:49
    #36356352
Fawning
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Работа с датами в самом Reporting Services
Немного не в тему... но есть такая очень насущная проблема

При экспорте в Excel даты все становятся текстовым форматом и невозможно в отчете работать с ними нормально, фильтровать например...

Как обойти эту проблему, кто-нить задавался целью?
...
Рейтинг: 0 / 0
Форумы / Отчетные системы [игнор отключен] [закрыт для гостей] / Работа с датами в самом Reporting Services / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]