Имея некоторые проблемы с получением BIRT, чтобы я мог создать набор данных с параметрами, установленными во время выполнения.Создание набора данных BIRT с динамическими данными - ORA-01722
SQL, который дает мне ошибку является:
...
FROM SPRIDEN, SPBPERS P, POSNCTL.NBRJOBS X, NHRDIST d1
where D1.NHRDIST_PAYNO between '@PAYNO_BEGIN' and '@PAYNO_BEGIN'
AND D1.NHRDIST_YEAR = '@YEAR'
...
Я мои Параметры отчета определяется как PaynoBegin, PaynoEnd,
ГодУ меня есть сценарий набора данных набор для beforeOpen следующим образом:
queryText = String (queryText).replace ("@PAYNO_END", Number(params["PaynoEnd"]));
queryText = String (queryText).replace ("@PAYNO_BEGIN", Number(params["PaynoBegin"]));
queryText = String (queryText).replace ("@YEAR", Number(params["Year"]));
проблема, кажется, что JDBC не может получить ResultSet от этого, однако у меня есть 10 других отчетов, которые работают точно так же. Я прокомментировал предложение where и создаст набор данных. Я также попытался разбить предложение where на два и предложения с < = и> =, но он по-прежнему выбрасывает неправильную ошибку ORA-01722 на линии.
Любые мысли по этому поводу?
Это сделало это. Я попробовал это сразу после публикации этого вопроса, когда нашел такое же решение в «BIRT - A Field Guide», но это не сработало. Пройдите через него снова, и теперь он работает в веб-браузере, а также в нашем веб-приложении. Спасибо @Mark Bannister – idonaldson