Обновление базы данных SSRS Refresh не обновляется для Tablix
Я обновил SP для прикрепленного набора данных, который использует tablix. Обновление работало нормально, и я вижу свои новые поля в общем наборе данных, когда я смотрю на вкладке "Поля". Моя проблема заключается в том, что сам tablix не дает мне доступ к новым полям. Там где-то есть разъединение, и я не могу разобраться в горячем состоянии, чтобы заставить tablix видеть обновленные поля, доступные в наборе данных. Я часто сталкиваюсь с этой проблемой и надеюсь, что могу получить здесь хороший ответ, чтобы вернуться в будущем, поскольку я уверен, что мне это нужно. Я нашел googled и рассмотрел предложенные вопросы здесь, и я не могу найти тот, который напрямую связан с этой проблемой.
Я также знаю, что проект отчета находится в контроле источника TFS, поскольку я читаю, что имеет некоторые неблагоприятные побочные эффекты. Я выделил весь проект для редактирования, а также перешел к структуре папок и удостоверился, что все было отключено только для чтения.
Я использую SSRS 2008 в VS 2010.
Ответы
Ответ 1
Просто нашел это... Я не понимаю необходимости в скрытых меню, подобных этому.
Нажмите сам отчет, затем перейдите в меню "Вид", а в самом низу "Данные отчета". Здесь вы можете выбрать свой набор данных и перейти к его свойствам и обновить поля прикрепленных к ним отчетов. Какая боль в прикладе.
Вот ссылка, которая помогает лучше объяснить это.
http://blog.dontpaniclabs.com/post/2012/01/26/Developings-Reports-for-SQL-Server-Reporting-Services
Ответ 2
Вы также можете удалить файл .data, если вы все еще не можете его обновить.
- Перейдите в папку с файлом, в которой существует файл .rdl.
- Рядом с ним должен быть файл с тем же именем с
.rdl.datastrong > . Удалить этот файл.
Похоже, что принудительное обновление возможно потому, что оно должно воссоздать файл.
Здесь менее инвазивный способ, но может не всегда работать:
- В окне данных отчета щелкните правой кнопкой мыши на вашем наборе данных и нажмите
Свойства набора данных, например:
![введите описание изображения здесь]()
- Нажмите "Обновить поля" в правом нижнем углу Свойства набора данных
окна:
![введите описание изображения здесь]()
Ответ 3
Перейдите в папку решений, где хранится rdl и удалите файл .rdl.data для вашего отчета.
В следующий раз, когда вы запустите отчет, будет создан новый файл rdl.data, и он будет иметь все новые поля из обновленного SP.
Ответ 4
ok, это, возможно, более старая тема, но иногда я сталкивался с той же проблемой. Самый простой способ исправить это - добавить следующую строку кода в начало хранимой процедуры, которая создает ваш набор данных для отчета:
SET FMTONLY OFF;
Счастливое кодирование:)
Ответ 5
Старый поток, но я столкнулся с этим, используя VS 2015 и SSMS 2016. Я был уверен, что это проблема с VS. Однако, когда я вернулся в SSMS и попытался выполнить мою хранимую процедуру, я обнаружил, что передача определенных значений параметров приведет к сбою запроса. Интересно, что я смог выполнить ALTER хранимую процедуру без каких-либо ошибок. (Возможно, потому, что некоторые комбинации параметров не приведут к отказу?)
В любом случае, в конце концов, это было ошибочное кодирование в моем sproc, из-за чего поля в SSRS не обновлялись. Когда я вернулся и исправил проблемы с моим кодом, все работало, как ожидалось, в VS.
Ответ 6
Я работаю в Visual Studio 2015, и ни один из вышеперечисленных ответов не работал у меня. Если вы получаете данные из хранимой процедуры, вам нужно открыть файл .xsd и щелкнуть правой кнопкой мыши по модели данных. Выберите "Настроить", и правильные значения из процедуры должны появиться справа от окна.
Затем обновите свой набор данных на вкладке "Данные отчета".
Ответ 7
У меня возникла очень похожая проблема:
- Добавлено новое поле для существующей функции таблицы SQL
- (с некоторым трудом) добавило новое поле в существующий набор данных в SSRS
- Прошло некоторое время, безуспешно пытающееся добавить новые поля в таблицу (tablix?) в режиме разработки.
Это не сработало для меня, так что в итоге я открыл конкретный файл отчета [filename].rdl в текстовом редакторе и удивил, что это XML. Достаточно просто было добавить недостающее поле вручную, а визуальная студия предложила мне обновить отчет.
<DataSets>
<DataSet Name="DataSet1">
...
<Fields>
<!-- add new field at this level -->
<Field Name="[newfield]">
<DataField>Email</DataField>
<rd:TypeName>System.String</rd:TypeName>
</Field>
</Fields>
</DataSet>
</DataSets>
Ответ 8
У меня была такая же проблема.
Я установил SP1, чтобы получить файл .rdl.data, который также установил проблему обновления данных.
Ссылка: http://social.msdn.microsoft.com/Forums/sqlserver/en-US/e2b199df-bc1b-4211-9110-85a0c63454b8/why-does-ssrs-not-create-a-rdldata-file-when-previewing-a-report?forum=sqlreportingservices
Ответ 9
У меня такая же проблема в VS 2012. Хранимая процедура, используемая в качестве запроса, не позволит обновлять поля. Когда кнопка нажата, ничего не происходит.
Единственное решение, которое я нашел, - это перевернуть Тип запроса в текст и предоставить значения параметров в вызове exec
для SP.
Почему мы должны мириться с этими очевидными ошибками пробной остановки шоу?
Ответ 10
Имела ту же проблему, и я смог ее решить, переименовав свой набор данных в свойствах, создав новый набор данных с исходным именем, а затем нажав кнопку обновления.
Ответ 11
Я пытался использовать драйвер ODBC для источника данных, который был подключен нормально, но не отображал поля в отчете SSSRS VS 2015. Я вернулся и использовал источник данных на основе драйвера SQL Server (он в выборе при разработке источника данных), и он отлично работал.
Ответ 12
У меня была такая же проблема, но причина была иной, чем другие ответы на момент написания этой статьи.
В моем случае хранимая процедура, используемая в качестве источника данных , возвращала несколько наборов данных (из-за некоторого кода отладки, который я оставил там).
SSRS "видел" поля в первом наборе данных, тогда как я ожидал увидеть поля во втором наборе данных.
Удаление посторонних наборов данных устранило проблему, и SSRS смог увидеть поля, которые я намеревался.