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

Ошибка SSRS при предварительном просмотре: "Размер, необходимый для буферизации содержимого XML, превышал буферную квоту", скрывает исходную ошибку

Я понимаю, что в моем отчете определенно что-то не так (например, столбцы missmatcch), и мне нужно его исправить, но то, что я вижу, является сообщением об ошибке WCF, которое скрывает актуальную проблему, и именно это сокрытие раздражает меня гораздо больше, чем оригинальная проблема: столбцы missmatch.

Думаю, нам нужно настроить размер буфера WCF, и мы получим оригинальное сообщение о проблеме. Но где находится файл конфигурации? Текстовый поиск "system.serviceModel" в C:\Program Files (x86)\Microsoft Visual Studio 10.0 не приносит хорошей идеи...

P.S. Поскольку это только предварительный просмотр отчета, я не думаю, что это проблема конфигурации SSRS. Проблема локализована где-то в процессе DevStudio или в процессе внутреннего веб-сервера DevStudio...

P.P.S Пожалуйста, помогите мне тоже улучшить вопрос. Я вижу, что респонденты не понимают, какая помощь мне нужна.

4b9b3361

Ответ 1

Я обнаружил несколько "ароматов" этой ошибки в SSRS Preview. Кажется, рендеринг для режима предварительного просмотра довольно хрупкий.

Существует простой способ решить эту проблему. Игнорировать ошибку и попытаться загрузить файл RDL на ваш сервер отчетов. Загружатель с радостью сообщит вам, что именно не так с вашим файлом - он точно скажет вам, в каком поле есть проблема, и что это за проблема. Если есть несколько ошибок, вам будет сообщено каждое поле и ошибка, связанная с каждой из них.

Я могу создать эту фальшивую ошибку буфера XML с помощью любого из следующих действий:

  • Добавить новый Tablix, начать подключать его к набору данных, а затем отменить.
  • Скопируйте/вставьте некоторый текст в текстовое поле из документа MS Word, где одна или несколько строк имеют отрицательный правый отступ (конец правого столбца находится за пределами поля страницы).
  • Подключите набор данных с возвращаемым значением varchar (8000).

Ответ 2

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

Это действительно сработало для меня.

См. ссылку ниже для получения дополнительной информации: http://connect.microsoft.com/SQLServer/feedback/details/742913/ssdt-reporting-services-designer-error

Ответ 3

Я видел эту ошибку при добавлении нового поля в существующий набор данных, нажав "Обновить поля". Источником набора данных была хранимая процедура. Результатом было только несколько оригинальных полей, обнаруженных в списке полей набора данных, а не в новом поле. Если я попытался просмотреть отчет, я получаю ошибку XML-буфера.

Обходной путь состоял в том, чтобы не обновлять поля, а удалять новое поле и вводить новое имя поля в поле свойств набора данных последним.

Сработало после этого.

Ответ 4

EDIT: я обновил свой ответ, исправив проблему.

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

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

Как выясняется, после изучения проблемы проблема заключалась в том, что я изменил свойство name своих наборов данных.

enter image description here

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

Я только изменил свойство name на то, что было, имена хранимых процедур правильно ссылались на мои переименованные хранимые процедуры.

Ответ 5

Сегодня я получил эту ошибку.

Я создал таблицу для хранения данных для замены двух медленных запросов. Я изменил некоторые имена, чтобы очистить процесс.

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

Размер, необходимый для буферизации содержимого XML, превышал буферную квоту

Конечно, это должно быть простым решением, но Microsoft заявила, что они не будут исправлять.

https://connect.microsoft.com/SQLServer/feedback/details/742913/ssdt-reporting-services-designer-error

Ответ 6

У меня была эта проблема, когда после копирования и вставки табликса он изменил CDbl в формуле на Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions.CDbl. Я открыл XML и удалил все экземпляры "Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions". и отчет затем работал.

Ответ 7

Для рабочего отчета, когда я попытался добавить столбец, он дал мне эту ошибку. Я редактировал файл .rdl с помощью notepad ++. После того, как SSRS предложит перезагрузить изменение с диска, он работал без проблем.

Ответ 8

Я получил эту ошибку после копирования моего пользовательского кода в Visual Studio, чтобы проверить код для лучшей читаемости. Ну, Visual Studio добавила определения классов в начало и конец файла. После редактирования кода я вставил его обратно в отчет Custom Code, после чего получил эту ошибку. Исправление было просто для удаления определений классов (Public Class Class1 и End Class) из пользовательского кода. Итак, также проверьте свой пользовательский код (если есть).

Ответ 9

Я получил эту ошибку после добавления некоторых новых параметров в существующий отчет.

По какой-то причине, когда я создал параметры сначала, а затем изменил набор данных, чтобы использовать новые параметры, я получил ошибку, но когда я сначала изменил набор данных, затем добавил параметры второй, и я не получил ошибку.


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

Ответ 10

Возможные коренные причины

  • Имя параметра неверно (case/order)
  • Доступ к несуществующей собственности.
    и многое другое...

Решение. Чтобы получить точное сообщение об ошибке, выполните

  • Разверните отчет SSRS и найдите ошибку: Предлагаемый "Kim Crosser" уже
  • Удалите раздел (контент SSRS/Report), который вы считаете свободным от свободного места в буфере, чтобы вы могли получить фактическое сообщение об ошибке. Позже добавьте разделы назад к странице (удалены ранее).

Ответ 11

Я также сталкиваюсь с этой проблемой. Я решаю это Найти и заменить

  • Microsoft.VisualBasic.Interaction.iif == > iif
  • Microsoft.ReportingServices.RdlObjectModel.ExpressionParser.VBFunctions.cdbl == > cdbl

Надеюсь, это поможет кому-то. Благодаря

Ответ 12

У меня было такое же сообщение об ошибке, и это было полностью вызвано моим делом. Это немного неловко, но если это поможет кому-то, тогда здорово! Я случайно скопировал мой запрос набора данных, который включал в себя небольшой подзадачный оператор, который я использовал для проверки значений параметров/переменных.