Crystal Reports 13 Проблема с соединением Oracle - PullRequest
0 голосов
/ 12 октября 2019

Я пытаюсь перенести небольшое приложение .NET (VS2008, Crystal Report 10, ОС Win7, 32-разрядная версия). В приложении есть 2 отчета, в которых используются некоторые данные базы данных оракула версии 11g, выпуск 2 (11.2.0.1).

Когда я обновляю приложение (VS2019Pro, последний Crystal Report (CR13SP25), ОС Win10 64-bit), само приложение запускается, как ожидалось, и 2 отчета Crystal показывают правильные данные. Только когда я открываю Database Expert в Crystal Report Designer и пытаюсь получить доступ к соединению Oracle, я получаю сообщение об ошибке при попытке получить список таблиц этого соединения. Я перепробовал все 3 возможных соединения с Oracle, и все они выдают (различную) ошибку: (1) Поставщик OLE DB для Oracle (MSDAORA): «Код ошибки ADO: 0x80004005 - Ошибка при попытке получить текст для ошибки ORA-01019 "(2) OLE DB для Oracle (OraOLEDB.Oracle):" Код ошибки ADO: 0x8000ffff "(3) Сервер Oracle (оракул crdb):" Неизвестная ошибка в соединителе базы данных "

Теперь странная частьчто иногда у меня есть доступ к этим 3 соединениям в Database Expert, что означает, что список таблиц становится видимым. Это случается очень редко и не длится долго. Я также заметил, что когда это происходит, я могу получить доступ ко всем трем различным соединениям, так что это «все или ничего».

Это поведение одинаково, когда я создаю новое решение и добавляю новый отчет Crystal, или когдаЯ использую Visual Studio 2017 Professional вместо 2019.

У кого-нибудь есть идеи, как исправить такое поведение? Заранее спасибо!

1 Ответ

0 голосов
/ 15 октября 2019

Наконец-то удалось решить эту проблему. Сначала я открыл старый проект в Visual Studio 2019, вызвав экраны преобразования как самого решения, так и Crystal Reports (выберите «Да»). Поскольку в моем первоначальном решении использовалось (устаревшее) соединение Microsoft OLE DB для Oracle, я сначала создал новое соединение в Database Expert (в существующем Crystal Report), в котором использовался поставщик OLE DB для Oracle, расположенный в OLE DB (ADO). ). Затем я заменил старое соединение новым (снова в Database Expert). После применения этого ко всем существующим отчетам все работало правильно!

...