Как вызвать хранимую процедуру, которая возвращает sys_refcursor из ireport 4.5.1 - PullRequest
1 голос
/ 01 апреля 2012

Кто-нибудь может предоставить полное руководство о том, как вызвать хранимую процедуру, которая возвращает sys_refcursor из ireport 4.5.1.Я уже перешел по этой ссылке http://rajendratambat.blogspot.in/2011/10/calling-oracle-stored-procedure-in.html?showComment=1333264003761#c6148133813463786818

, но она не работает для меня. Поэтому у кого-то может быть другое решение.

1 Ответ

1 голос
/ 17 апреля 2012

Ниже приведены шаги для вызова хранимой процедуры для построения отчета с использованием iReport 4.5 / 4.5.1 JasperReport

  1. . В конструкторе iReport перейдите в Инструменты -> Параметры -> и вНа вкладке «Путь к классам» нажмите «Добавить JAR» и добавьте файл OJDBC14.jar к пути к классам.
  2. Перейдите на вкладку «Исполнитель запроса» и задайте следующий язык: plsql Фабрика выполнения запроса: com.jaspersoft.jrx.query.PlSqlQueryExecuterFactory Fieldsory Provider Class:com.jaspersoft.ireport.designer.data.fieldsproviders.SQLFieldsProvider
  3. Выберите соединение с базой данных JDBC
  4. Выберите Oracle в качестве драйвера JDBC, как показано на рисунке ниже, и проверьте соединение, нажав кнопку Тест(Обязательно установите флажок «Сохранить пароль»)
  5. Создайте пустой отчет, указав имя отчета и сохранив его.
  6. Откройте отчет в конструкторе и щелкните правой кнопкой мыши на имени отчета инажмите на Edit Query
  7. Установите язык запросов на plsql
  8. Вызовите свою процедуру с помощью in {} a.{call PUBLISHER_AND_BOOKS (& P (P_PUBLISHER_ID), & P (ORACLE_REF_CURSOR))} Примечание: P_PUBLISHER_ID имеет тип string, а ORACLE_REF_CURSOR имеет тип java.sql.ResultSet пользовательский параметр типа данных.Вы можете создать это, нажав кнопку New Parameter.Если у вас есть больше входных параметров, используйте «,» в качестве разделителя, как показано в примере выше.
  9. Нажмите «ОК» и перейдите к оформлению отчета.
  10. В окне дизайнера щелкните правой кнопкой мыши на «Поля» иДобавить нажмите кнопку Добавить поля и убедитесь, что все имена полей совпадают с именами столбцов в вашей хранимой процедуре
  11. Теперь щелкните правой кнопкой мыши параметры и добавьте параметры, соответствующие хранимой процедуре. ПРИМЕЧАНИЕ. Снимите флажок «Использовать для запроса»."в свойстве для параметра out в нашем примере его ORACLE_REF_CURSOR является параметром out.
  12. Перетащите поля в области сведений отчета, как показано ниже
  13. Нажмите кнопку предварительного просмотра, чтобы запустить отчет, который выбудет предложено ввести входной параметр

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

http://meezageekyside.blogspot.com/#!/2012/04/jasper-reports-ireport-45-using-oracle.html

...