Crystal Reports - Не удалось открыть набор строк

Что можно сделать для устранения исключения:

CrystalDecisions.CrystalReports.Engine.InternalException: Не удалось открыть набор строк.

Ответ 1

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

Ответ 2

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

Ответ 3

У меня была такая же проблема, и я получил это сообщение об ошибке:

В результирующем наборе невозможно найти больше полей. Используйте "Проверка базы данных" для обновления отчета. Ошибка в имени файла файла {9FEE6406-1613-409A-B9BD-C5FDA24E3DEE}.rpt:

Не удалось найти столбец строк.

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

Удачи!

Ответ 4

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

Ответ 5

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

Если вы не можете найти, какое отношение (-ы) вызывает проблему (иногда это не так очевидно), вам придется пройти пробный и пробный тест, добавив/удалив таблицы из вашего отчета.

Ответ 6

Каждый раз, когда вы добавляете новую таблицу в кристалл, она добавляет свои собственные ссылки на уже связанные таблицы, иногда даже связывает 2 поля из одной таблицы. Убедитесь, что вы знаете свои ссылки, чтобы пройти после добавления таблицы и прокрутки всех таблиц, чтобы увидеть, какие ссылки создаются в одной таблице.

Ответ 7

Я получил:

CrystalDecisions.CrystalReports.Engine.InternalException был необработанным Сообщение = Ошибка сервера приложений отчетов

Google привел меня сюда. Для тех, у кого есть подобные проблемы.

Для записи: у меня был массив byte [] с изображением и удаленный журнал из отчета, и ошибка была остановлена. Теперь я должен выяснить, что я сделал с логотипом.

Ответ 8

У меня была эта проблема - мы используем логики SQL для нашей безопасности (не интегрированные/DSN-соединения)

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

Действительно, на самом деле нельзя было ненавидеть Crystal больше за маскировку их исключений - пусть это станет уроком для всех программистов;

Try
   'your code here
Catch
   Throw new exception("Hey, here a really friendly but completely useless error message")
End Try

приведет к боли для будущих разработчиков - НЕ ДЕЛАЙТЕ ЭТО!

Ответ 9

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

a) Обновляя отчет (значок молнии), если у вас есть проблема с полем, например поле SQL, оно выдаст вам ошибку, а затем покажет вам окно редактирования для поля.

b) Запуск запроса непосредственно на SQL, если есть проблема с самим запросом, вы также получите это сообщение в Crystal, но SQL скажет вам, что именно не так.

Ответ 11

Для меня проблема была исправлена, когда я зарегистрировался и зашел на сервер SQL, к которому отчет подключался к

Ответ 12

В вашей процедуре магазина Если вы используете

SET NOCOUNT ON;

Затем просто удалите этот

--SET NOCOUNT ON;

Теперь проверьте свою базу данных отчетов, создайте и запустите свое решение.