Применяется к
SQL Server 2012 Developer SQL Server 2012 Enterprise SQL Server 2012 Express SQL Server 2012 Standard SQL Server 2012 Web SQL Server 2012 Enterprise Core SQL Server 2008 R2 Datacenter SQL Server 2008 R2 Developer SQL Server 2008 R2 Enterprise SQL Server 2008 R2 Express SQL Server 2008 R2 Service Pack 2 SQL Server 2008 R2 Standard SQL Server 2008 R2 Web SQL Server 2008 R2 Workgroup

Проблемы

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

  • У вас есть отчет Microsoft SQL Server Reporting Services 2008 R2 (SSRS 2008 R2) или служб Microsoft SQL Server Reporting Services 2012 (SSRS 2012) для списка или библиотеки документов Microsoft SharePoint.

  • В отчете используется встроенное расширение данных списка служб SQL Server Reporting Services SharePoint.

  • Вы создаете запрос набора данных на основе списка или библиотеки документов SharePoint, а затем запускаете запрос в конструкторе отчетов.

  • Отчет развертывается в ферму SharePoint, в которой размещается список или библиотека документов SharePoint.

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

Причина

Эта проблема возникает из-за разных путей к коду, сделанных службой SSRS 2008 R2 или SSRS 2012, когда SharePoint запускает отчет в той же ферме, что и список. Когда локальная ферма SharePoint запускает отчет, список извлекается с помощью пути к LocalConnection . Путь читается прямо из списка SharePoint без вызовов SOAP и создает локальную копию сведений о списке без конфигурации представления по умолчанию. Таким образом, путь к элементу LocalConnection не отражает изменения в представлении по умолчанию. Тем не менее, если отчет запускается конструктором отчетов, в отчете используется путь SPRemoteConnection . Этот путь использует вызовы SOAP, похожие на функцию GetListCollection . Эта функция получает доступ к сайту через удаленное соединение HTTP, а не по локальному соединению. Таким образом, изменения будут отражены в конфигурации представления по умолчанию.

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

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

  • Разверните отчет на сервере отчетов в основном режиме и запустите его из сервера отчетов в основном режиме. Примечание. Если вы хотите просмотреть отчет в SharePoint, установите веб-часть "средство просмотра отчетов в основном режиме" в SharePoint, а затем вызовите отчет из собственного экземпляра служб отчетов. Дополнительные сведения о том, как просматривать и просматривать отчеты в основном режиме с помощью веб-частей SharePoint, можно найти на веб-сайте MSDN.

    Просмотр и изучение отчетов в основном режиме с помощью веб-частей SharePoint

  • Развертывание списка или библиотеки документов SharePoint в другую ферму SharePoint, к которой можно получить доступ с помощью фермы, на которую развернут отчет. Таким образом, отчет в локальной ферме может получить доступ к списку удаленно.

  • Используйте расширение XML-данных для создания XML-запроса без использования расширения данных списка SharePoint.

Статус

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

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

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

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