Процедуры добавления в очередь (по коду функции и по рег. номеру функции) возвращающие рег. номер добавленной записи
This commit is contained in:
parent
8872971df8
commit
4e3cf0c7a4
@ -377,6 +377,15 @@ create or replace package PKG_EXS as
|
|||||||
|
|
||||||
/* Помещение сообщения обмена в очередь */
|
/* Помещение сообщения обмена в очередь */
|
||||||
procedure QUEUE_PUT
|
procedure QUEUE_PUT
|
||||||
|
(
|
||||||
|
NEXSSERVICEFN in number, -- Рег. номер функции обработки
|
||||||
|
BMSG in blob, -- Данные
|
||||||
|
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
||||||
|
NNEW_EXSQUEUE out number -- Курсор с добавленной позицией очереди
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Помещение сообщения обмена в очередь (возвращает курсор с добавленной записью) */
|
||||||
|
procedure QUEUE_PUT
|
||||||
(
|
(
|
||||||
NEXSSERVICEFN in number, -- Рег. номер функции обработки
|
NEXSSERVICEFN in number, -- Рег. номер функции обработки
|
||||||
BMSG in blob, -- Данные
|
BMSG in blob, -- Данные
|
||||||
@ -386,6 +395,16 @@ create or replace package PKG_EXS as
|
|||||||
|
|
||||||
/* Помещение сообщения обмена в очередь (по коду сервиса и функции обрабоки) */
|
/* Помещение сообщения обмена в очередь (по коду сервиса и функции обрабоки) */
|
||||||
procedure QUEUE_PUT
|
procedure QUEUE_PUT
|
||||||
|
(
|
||||||
|
SEXSSERVICE in varchar2, -- Мнемокод сервиса для обработки
|
||||||
|
SEXSSERVICEFN in varchar2, -- Мнемокод функции сервиса для обработки
|
||||||
|
BMSG in blob, -- Данные
|
||||||
|
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
||||||
|
NNEW_EXSQUEUE out number -- Курсор с добавленной позицией очереди
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Помещение сообщения обмена в очередь (по коду сервиса и функции обрабоки, возвращает курсор с добавленной записью) */
|
||||||
|
procedure QUEUE_PUT
|
||||||
(
|
(
|
||||||
SEXSSERVICE in varchar2, -- Мнемокод сервиса для обработки
|
SEXSSERVICE in varchar2, -- Мнемокод сервиса для обработки
|
||||||
SEXSSERVICEFN in varchar2, -- Мнемокод функции сервиса для обработки
|
SEXSSERVICEFN in varchar2, -- Мнемокод функции сервиса для обработки
|
||||||
@ -1557,10 +1576,9 @@ create or replace package body PKG_EXS as
|
|||||||
NEXSSERVICEFN in number, -- Рег. номер функции обработки
|
NEXSSERVICEFN in number, -- Рег. номер функции обработки
|
||||||
BMSG in blob, -- Данные
|
BMSG in blob, -- Данные
|
||||||
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
||||||
RCQUEUE out sys_refcursor -- Êóðñîð ñ äîáàâëåííîé ïîçèöèåé î÷åðåäè
|
NNEW_EXSQUEUE out number -- Курсор с добавленной позицией очереди
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
NRN EXSQUEUE.RN%type; -- Ðåã. íîìåð äîáàâëåííîé çàïèñè î÷åðåäè
|
|
||||||
begin
|
begin
|
||||||
/* Проверяем параметры */
|
/* Проверяем параметры */
|
||||||
if (NEXSSERVICEFN is null) then
|
if (NEXSSERVICEFN is null) then
|
||||||
@ -1577,7 +1595,22 @@ create or replace package body PKG_EXS as
|
|||||||
BMSG => BMSG,
|
BMSG => BMSG,
|
||||||
BRESP => null,
|
BRESP => null,
|
||||||
NEXSQUEUE => NEXSQUEUE,
|
NEXSQUEUE => NEXSQUEUE,
|
||||||
NRN => NRN);
|
NRN => NNEW_EXSQUEUE);
|
||||||
|
end QUEUE_PUT;
|
||||||
|
|
||||||
|
/* Помещение сообщения обмена в очередь (возвращает курсор с добавленной записью) */
|
||||||
|
procedure QUEUE_PUT
|
||||||
|
(
|
||||||
|
NEXSSERVICEFN in number, -- Рег. номер функции обработки
|
||||||
|
BMSG in blob, -- Данные
|
||||||
|
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
||||||
|
RCQUEUE out sys_refcursor -- Курсор с добавленной позицией очереди
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NRN EXSQUEUE.RN%type; -- Рег. номер добавленной записи очереди
|
||||||
|
begin
|
||||||
|
/* Проверяем параметры */
|
||||||
|
QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, BMSG => BMSG, NEXSQUEUE => NEXSQUEUE, NNEW_EXSQUEUE => NRN);
|
||||||
/* Возвращаем добавленную позицию очереди */
|
/* Возвращаем добавленную позицию очереди */
|
||||||
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NRN, RCQUEUE => RCQUEUE);
|
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NRN, RCQUEUE => RCQUEUE);
|
||||||
end QUEUE_PUT;
|
end QUEUE_PUT;
|
||||||
@ -1589,7 +1622,7 @@ create or replace package body PKG_EXS as
|
|||||||
SEXSSERVICEFN in varchar2, -- Мнемокод функции сервиса для обработки
|
SEXSSERVICEFN in varchar2, -- Мнемокод функции сервиса для обработки
|
||||||
BMSG in blob, -- Данные
|
BMSG in blob, -- Данные
|
||||||
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
||||||
RCQUEUE out sys_refcursor -- Êóðñîð ñ äîáàâëåííîé ïîçèöèåé î÷åðåäè
|
NNEW_EXSQUEUE out number -- Курсор с добавленной позицией очереди
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
NEXSSERVICEFN PKG_STD.TREF; -- Рег. номер функции сервиса обработки
|
NEXSSERVICEFN PKG_STD.TREF; -- Рег. номер функции сервиса обработки
|
||||||
@ -1606,7 +1639,29 @@ create or replace package body PKG_EXS as
|
|||||||
SEXSSERVICE => SEXSSERVICE,
|
SEXSSERVICE => SEXSSERVICE,
|
||||||
SEXSSERVICEFN => SEXSSERVICEFN);
|
SEXSSERVICEFN => SEXSSERVICEFN);
|
||||||
/* Ставим запись в очередь */
|
/* Ставим запись в очередь */
|
||||||
QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, BMSG => BMSG, NEXSQUEUE => NEXSQUEUE, RCQUEUE => RCQUEUE);
|
QUEUE_PUT(NEXSSERVICEFN => NEXSSERVICEFN, BMSG => BMSG, NEXSQUEUE => NEXSQUEUE, NNEW_EXSQUEUE => NNEW_EXSQUEUE);
|
||||||
|
end QUEUE_PUT;
|
||||||
|
|
||||||
|
/* Помещение сообщения обмена в очередь (по коду сервиса и функции обрабоки, возвращает курсор с добавленной записью) */
|
||||||
|
procedure QUEUE_PUT
|
||||||
|
(
|
||||||
|
SEXSSERVICE in varchar2, -- Мнемокод сервиса для обработки
|
||||||
|
SEXSSERVICEFN in varchar2, -- Мнемокод функции сервиса для обработки
|
||||||
|
BMSG in blob, -- Данные
|
||||||
|
NEXSQUEUE in number := null, -- Рег. номер связанной позиции очереди
|
||||||
|
RCQUEUE out sys_refcursor -- Курсор с добавленной позицией очереди
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NRN EXSQUEUE.RN%type; -- Рег. номер добавленной записи очереди
|
||||||
|
begin
|
||||||
|
/* Ставим запись в очередь */
|
||||||
|
QUEUE_PUT(SEXSSERVICE => SEXSSERVICE,
|
||||||
|
SEXSSERVICEFN => SEXSSERVICEFN,
|
||||||
|
BMSG => BMSG,
|
||||||
|
NEXSQUEUE => NEXSQUEUE,
|
||||||
|
NNEW_EXSQUEUE => NRN);
|
||||||
|
/* Возвращаем добавленную позицию очереди */
|
||||||
|
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NRN, RCQUEUE => RCQUEUE);
|
||||||
end QUEUE_PUT;
|
end QUEUE_PUT;
|
||||||
|
|
||||||
/* Исполнение обработчика для сообщения обмена */
|
/* Исполнение обработчика для сообщения обмена */
|
||||||
|
Loading…
x
Reference in New Issue
Block a user