Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Report Builder - srw.do_sql - столбец в параметр  [new]
mrrpit
Member

Откуда:
Сообщений: 12
Всем привет!
Начинаюсь разбираться в Report Builder от Oracle.

Встала задача сделать запрос к БД и получить столбец в параметр или переменную, для того, чтобы затем использовать.

Как это сделать?
Например, подсчитать количество записей в таблице:
function BeforeReport return boolean is
counter count_numb;
begin

srw.do_sql('SELECT COUNT(*) INTO count_numb FROM table_name');

return (TRUE);
end;

Код компилирется без ошибок, но при выполнении выдает ошибку:
REP-1425: 'beforereport': Error running DO_SQL package - 'ERROR parsing the SQL statement.
ORA-00905^ missing keyword '.'

Может кто ниб помочь разобраться с переменными и параметрами и как сделать данное действие.
Или кинуть ссылки.
Поиск по форуму не помог.
Заранее спасибо.
19 апр 10, 08:32    [8648107]     Ответить | Цитировать Сообщить модератору
 Re: Report Builder - srw.do_sql - столбец в параметр  [new]
mrrpit
Member

Откуда:
Сообщений: 12
По количеству записей понял как сделать:
Пишем просто без srw.do_sql
SELECT COUNT(*) INTO count_numb FROM table_name

А вот как сделать переменную для набора значений, то есть например для запроса:
SELECT table_name.field fields FROM table_name

Делаю так:
19 апр 10, 09:56    [8648366]     Ответить | Цитировать Сообщить модератору
 Re: Report Builder - srw.do_sql - столбец в параметр  [new]
mrrpit
Member

Откуда:
Сообщений: 12
function BeforeReport return boolean is
fields table_name.field%TYPE;
begin

SELECT table_name.field INTO fields FROM table_name;

return (TRUE);
end;

Но выдает ошибку
ORA-01422 exact fetch returns more than requested number of rows
19 апр 10, 09:59    [8648385]     Ответить | Цитировать Сообщить модератору
 Re: Report Builder - srw.do_sql - столбец в параметр  [new]
Data Type
Guest
mrrpit,

почитайте про рефкурсор и не мурыжте зазря функцию, в которой вы пытаетесь вернуть одно значение.
http://download.oracle.com/docs/html/B28089_01/featRefCursor.htm
19 апр 10, 10:48    [8648699]     Ответить | Цитировать Сообщить модератору
 Re: Report Builder - srw.do_sql - столбец в параметр  [new]
mrrpit
Member

Откуда:
Сообщений: 12
не мурыжте зазря функцию, в которой вы пытаетесь вернуть одно значение

Извините, не понял что вы имеете ввиду, расскажите как сделать по другому?
20 апр 10, 01:49    [8654045]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить