Подтвердить что ты не робот

Visual Studio для SSRS 2008 - Как организовать отчеты в подпапках в обозревателе решений?

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

Shared Data Sources
 -- DEV
Reports
 -- Report1
 -- Report2
 -- Report3

Я хочу, чтобы это выглядело так и сохраняло ту же структуру на веб-сайте менеджера отчетов, когда я нажимаю на развертывание.

Shared Data Sources
 -- DEV
Folder A
 -- Report1
Folder B
 -- Report2
 -- Report3

Кто-нибудь знает, как это сделать?

4b9b3361

Ответ 1

Я использую SSRS 2005 - я думаю, что эта часть работает так же, как и в 2008 году.

Насколько я могу судить, у вас нет папок в проектах, но вы можете иметь несколько проектов в рамках решения.

Чтобы создать новую папку, щелкните правой кнопкой мыши на решении в обозревателе решений и выберите "Добавить" > "Создать проект...

Введите новое имя проекта (например, MyProject) и выберите Project сервера отчетов из списка установленных шаблонов Visual Studio. Нажмите "ОК", и ваш новый проект должен появиться в конце списка проектов в обозревателе решений.

(Существуют другие способы создания нового проекта "Отчеты", но это кажется самым быстрым.)

Если вы сейчас щелкните правой кнопкой мыши свой новый проект отчета и выберите "Свойства", вы увидите TargetReportFolder, который по умолчанию будет использовать ваше новое название проекта (например, MyProject). При развертывании отчетов из SSRS они развертываются в этом месте. (Вы можете изменить местоположение, если хотите - мне будет легче отслеживать, что происходит там, где используется имя проекта.)

Вам нужно будет скопировать любые источники данных, которые будут использоваться в каждом проекте, в папку источников данных всех проектов, использующих этот источник данных. По умолчанию для параметра OverwriteDataSources установлено значение false, поэтому при развертывании нового отчета он будет использовать источник данных, уже развернутый в среде Report Manager.

Итак, чтобы получить структуру диспетчера отчетов, которую вы хотите увидеть:

  • Создать проекты под названием Folder A и Folder B
  • Переместить/скопировать отчет1 в папку "Отчеты" в папке проекта "А"
  • Переместить/скопировать Report2 и Report3 в папку Reports в папке проекта B
  • Переместить/скопировать источник данных DEV в папки общих источников данных в папках проектов A и папке B
  • Разверните отчеты

Не забудьте проверить свои изменения в исходном элементе управления.

Ответ 2

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

Затем я подстроил a script в RS, который:
- Создает единый источник данных, используемый всеми отчетами, в моем случае
- Циклы через все каталоги в папке решения
- Создает одно и то же имя папки на сервере RS
- Развертывает все файлы в этом каталоге в этой папке на сервере RS

- Использует rs.SetItemDataSources для каждого отчета, чтобы перенаправить его в основной источник данных.

И это в основном это.

Предостережения: вы иногда получаете загруженные файлы, которые вам не нужны (например, удаленные отчеты с включенными RDL файлами). Но вы можете script обойти это или просто сдуть его в RS и снова загрузить снова.

Выполняя это, у меня есть один script, но вы можете развернуть структуру под разными родительскими папками, каждая с разными источниками данных, и иметь все отчеты в папке с данными из другой базы данных. Это позволяет мне запускать экземпляр 1x RS, но есть области разработки, тестирования, обучения и т.д.

Ответ 3

У меня есть проект BI в SSRS2008 с примерно 80 отчетами - и это мой опыт развертывания отчетов в папках. Это мой первый набег на разработку Reporting Services, поэтому любые гуру, пожалуйста, удари меня, если я выйду на обед.

Изначально я использовал папки в исходном элементе управления, чтобы отделить небольшие отчеты от отдела, чтобы помочь мне организовывать. Это работало нормально, когда я изначально разрабатывал свои отчеты, однако в первый раз, когда я развернул проект на сервере отчетов, структура была полностью сглажена, поэтому я отказался от использования структуры папок для организации.

Насколько мне известно, единственным способом создания структуры папок в SSRS является использование интерфейса диспетчера отчетов и создание папок на сервере отчетов. Я предполагаю, что вы измените путь в свойствах отчета в Visual Studio. Либо это, либо вы должны определить путь при первой настройке отчета. Я не тестировал это так YMMV.

Итак, в заключение: невозможно создать папки в BIDS и развернуть свои отчеты в папки с использованием среды IDE. Я надеюсь, что это будет рассмотрено в 2008R2, потому что это боль, имеющая все эти отчеты, брошенные вместе в обозревателе решений.

Ответ 4

Мы управляем этим с помощью связанных отчетов в SSRS. Мы развертываем отчеты в папку распространения отчетов, скрытые от пользователей, а затем создаем Связанные отчеты в веб-интерфейсе служб Reporting Services (опция в разделе "Управление" для каждого отчета). Вы можете создать Связанный отчет в любой папке, чтобы вы могли создать нужную структуру папок и поместить связанные отчеты в нужное место.

Вы можете развернуть все в единую папку распространения из VS, а связанные отчеты обновляются. Это решает проблемы суб-отчета и DataSource, поскольку все отчеты запускаются из дистрибутивной папки. Очевидно, что много настроек впереди, и создание новой среды - это проблема. Это случается так редко, что мы не пытались ее автоматизировать.

Ответ 5

У вас могут быть файлы в отдельных папках на диске/источнике, но они перечислены в алфавитном порядке в Visual Studio.

Я не вижу пользовательский интерфейс для управления вышеупомянутым, но если вы редактируете файл проекта (файл одного проекта VS-решения), вы можете указать тег FullPath XML каждого файла отчета.

Ответ 6

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

Файл решения Microsoft Visual Studio, формат версии 10.00

Visual Studio 2008

Project ( "{F14B399A-7131-4C87-9E4B-1186C45EF12D}" ) = "RestOfWorld", "RestOfWorld\RestOfWorld.rptproj", "{D24D5EEA-88A4-4375-802B-7CA877202787}" EndProject

Проект ( "{F14B399A-7131-4C87-9E4B-1186C45EF12D}" ) = "Северная Америка", "Северная Америка\Северная Америка", "{C64A3BDC-F526-4037-AD48-31799BECC3AD}" EndProject Global

Ответ 7

@skiwii правильно, с версией сообщества VS 2013 и инструментами данных SQL - Business Intelligence, вы не видите решение node в верхней части дерева в VS Solution Explorer, и вам придется взломать. SLN, чтобы открыть его.

  • Начните с требуемого файла master.sln и одного .rptproj в исходном дереве. назовите это "parent".
  • Создайте новый, пустой файл Report Services.rptproj в новой подпапке (в папке, содержащей .sln). например, проект является "child1". VS также предоставит вам файл child1.sln в этой папке.
  • Закройте все окна VS.
  • С вашим любимым текстовым редактором (teco!)
    • открыть файл child1.sln.
    • Скопируйте 2 строки вверху; Project... и EndProject
    • Открыть parent1.sln
    • Вставьте эти строки в существующий проект /EndProject.
  • Теперь откройте parent1.sln в VS. Волшебное решение Solution node находится в верхней части окна Solution Explorer.

Если вам повезло, вы также увидите второй проект с именем child1. Но если нет, не проблема. Вы можете просто щелкнуть правой кнопкой мыши по решению и добавить новый проект типа Report Services.