Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Эта проблема относится к службам Microsoft SQL Server 2012 Reporting Services.

Проблемы

Рассмотрим следующий сценарий.

  • Вы создаете приложение Windows Forms или приложение для Windows Presentation Foundation (WPF), основанное на Microsoft .NET Framework 4,0.

  • В приложении Windows Forms или WPF вы используете элемент управления Microsoft Report Viewer 2010 для отображения отчета служб Microsoft SQL Server 2012 (SSRS 2012), который работает в удаленном режиме.

  • Отчет содержит параметр типа DateTime , который имеет значение по умолчанию.

  • Приложение запускается в операционной системе с региональными параметрами, установленными на итальянском языке. Кроме того, задан длинный формат времени "чч: мм: СС".

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

  • Значение параметра типа DateTime по умолчанию не отображается в области подсказки параметров.

  • Если вы назначаете значение параметру типа DateTime и обновляете отчет, значение теряется после подготовки отчета к просмотру и не отображается.

Причина

Эта проблема возникает из-за изменения в платформе .NET Framework 4,0, которая не позволяет приложению и службам SSRS 2012 использовать правильные сведения в соответствии с региональными параметрами операционной системы. Приложения, основанные на платформе .NET Framework 4,0, используют региональные параметры, возвращаемые Windows. Однако службы SSRS 2012 построены на платформе .NET Framework 3,5 с пакетом обновления 1 (SP1). Таким образом, служба SSRS 2012 использует региональные параметры, внедренные в .NET Framework 3,5 с пакетом обновления 1 (SP1). Когда сервер SSRS 2012 запускает отчет с помощью символа "." в качестве разделителя времени, параметр типа DateTime отправляется клиенту в виде строки. Элемент управления "средство просмотра отчетов" вызывает метод DateTimeOffset. TryParse для проверки строки с помощью символа ":" в качестве разделителя времени. Таким образом, строка проверяется как false и не отображается в области подсказки параметров.Примечание.Эта проблема возникает только в том случае, если для длинного формата времени задано значение "чч: мм: СС", используемое по умолчанию для итальянского региональных параметров. Настройка по умолчанию для итальянских региональных параметров зависит от операционной системы. Кроме того, вы можете настроить параметры операционной системы по умолчанию, изменив длинный формат времени .

Решение

Сведения о накопительном пакете обновления

Накопительное обновление 2 для SQL Server 2012 с пакетом обновления 1 (SP1)

Исправление для этой проблемы впервые выпущено в накопительном обновлении 2. За дополнительными сведениями о том, как получить этот накопительный пакет обновления для SQL Server 2012 с пакетом обновления 1 (SP1), щелкните следующий номер статьи базы знаний Майкрософт:

2790947 Накопительный пакет обновления 2 для SQL Server 2012 с пакетом обновления 1 (SP1)Примечание. Поскольку сборки являются кумулятивными, каждый новый набор исправлений содержит все исправления и все исправления для системы безопасности, которые были включены в предыдущий выпуск исправлений для SQL Server 2012 с пакетом обновления 1 (SP1). Рекомендуется установить последнюю версию исправления, которая включает это исправление. Дополнительные сведения см. в следующей статье базы знаний Майкрософт:

2772858 Сборки SQL Server 2012, выпущенные после выпуска пакета обновления 1 (SP1) для SQL Server 2012

Статус

Корпорация Майкрософт подтверждает наличие этой проблемы в своих продуктах, которые перечислены в разделе "Применяется к".

Обходное решение

Чтобы обойти эту проблему, воспользуйтесь одним из описанных ниже способов.

  • Установка региональных параметров приложения и операционной системы в соответствии с региональными параметрами, находящимися на клиентском компьютере.

  • Создайте строковое поле ввода для пользователя, который будет заполняться текстом. Затем в отчете Преобразуйте строку в дату.

  • Создайте скрытый или неприглашенный параметр, заполняемый из поля ввода строк при запуске отчета.

  • Создайте невидимый параметр типа DateTime и элемент управления DateTimePicker за пределами элемента управления средством просмотра отчетов. Нажмите кнопку Просмотреть отчет, а затем вставьте строковое значение в параметр типа DateTime в обработчике события SubmittingParameterValues .

Дополнительная информация

Распространяемый пакет 2010 с пакетом обновления 1 (SP1) для Microsoft Report Viewer можно загрузить с веб-сайта центра загрузки Майкрософт по адресу:

Распространяемый пакет пакета обновления 1 (SP1) для Microsoft Report Viewer 2010Для получения дополнительных сведений о методах DateTimeOffset. TryParseExact и DateTimeOffset. TryParse посетите указанные ниже веб-сайты MSDN.

Метод DateTimeOffset. TryParseExact (строка, строка, IFormatProvider, DateTimeStyles, DateTimeOffset%) метод DateTimeOffset. TryParse (строка, DateTimeOffset%)

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

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

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×