![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
PL/SQL - хочу странного (а может и нет)
Dennis I. Komarov © (2012-11-13 22:20:00)оракуль может подобное?
транслит:
function (a1, a2, ..., am, var b1, b2, ..., bn): TDataSet;
т.е.
FUNCTION...
in
in
out
out
RETURN
на выходе рекордсет (CURSOR наверное)
если да, то пример плз
AV (2012-11-14 08:36:00) [41]как вариант,
CREATE OR REPLACE PACKAGE "ATS_ORDER"
is
TYPE TCursor IS REF CURSOR;
procedure CloseOrder (Order_ID in number, Cur in out TCursor);
--
procedure CloseOrder (Order_ID in number, Cur in out TCursor)
is
vRes Varchar2(500);
begin
vRes := main.Ord_val.Close_Order(Order_ID, sysdate);
if vRes = 'OK'
then
OPEN Cur for
SELECT 'OK' RSLT, vRes TXT
FROM dual;
else
OPEN Cur for
SELECT 'NO' RSLT, vRes TXT
FROM dual;
end if;
end;
----------=====
opMainProc.StoredProcName := 'applic.ats_order.CloseOrder';
opMainProc.Close;
opMainProc.ParamByName('ORDER_ID').Value := nIdOrder;
opMainProc.Open;
Result := (opMainProc.FieldByName('RSLT').AsString = 'OK');
sReslt := opMainProc.FieldByName('TXT').AsString;
Работает с год уже, в этой части не глючит
Dennis I. Komarov (2012-11-14 07:42:00) [42]Переведи...
Медвежонок Пятачок (2012-11-13 22:47:00) [43]может конечно.
только зачем именно функция, если речь про PL/SQL?