Отдельные функции для считывания BLOB данных очереди (QUEUE_GET_MSG и QUEUE_GET_RESP), исключение BLOB-данных позиции очереди из стандартной выдачи
This commit is contained in:
parent
385352a580
commit
b43b8df330
@ -89,7 +89,7 @@ create or replace package PKG_EXS as
|
|||||||
/* Êîíñòàíòû - ïðèçíàê èíêðåìåíòà êîëè÷åñòâà ïîïûòîê èñïîëíåíèÿ ïîçèöèè î÷åðåäè */
|
/* Êîíñòàíòû - ïðèçíàê èíêðåìåíòà êîëè÷åñòâà ïîïûòîê èñïîëíåíèÿ ïîçèöèè î÷åðåäè */
|
||||||
NQUEUE_EXEC_NO constant number(1) := 0; -- Íå èñïîëíÿòü
|
NQUEUE_EXEC_NO constant number(1) := 0; -- Íå èñïîëíÿòü
|
||||||
NQUEUE_EXEC_YES constant number(1) := 1; -- Èñïîëíÿòü
|
NQUEUE_EXEC_YES constant number(1) := 1; -- Èñïîëíÿòü
|
||||||
|
|
||||||
/* Êîíñòàíòû - îæèäàåìûé èíòåðôåéñ ïðîöåäóðû îáðàáîòêè ñîîáùåíèÿ î÷åðåäè íà ñòîðîíå ÁÄ */
|
/* Êîíñòàíòû - îæèäàåìûé èíòåðôåéñ ïðîöåäóðû îáðàáîòêè ñîîáùåíèÿ î÷åðåäè íà ñòîðîíå ÁÄ */
|
||||||
SPRC_RESP_ARGS constant varchar2(80) := 'NIDENT,IN,NUMBER;NSRV_TYPE,IN,NUMBER;NEXSQUEUE,IN,NUMBER;'; -- Ñïèñîê ïàðàìåòðîâ ïðîöåäóðû îáðàáîòêè
|
SPRC_RESP_ARGS constant varchar2(80) := 'NIDENT,IN,NUMBER;NSRV_TYPE,IN,NUMBER;NEXSQUEUE,IN,NUMBER;'; -- Ñïèñîê ïàðàìåòðîâ ïðîöåäóðû îáðàáîòêè
|
||||||
|
|
||||||
@ -345,6 +345,13 @@ create or replace package PKG_EXS as
|
|||||||
RCQUEUE out sys_refcursor -- Êóðñîð ñ èçìåí¸ííîé ïîçèöèåé î÷åðåäè
|
RCQUEUE out sys_refcursor -- Êóðñîð ñ èçìåí¸ííîé ïîçèöèåé î÷åðåäè
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* Ñ÷èòûâàíèå äàííûõ ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè */
|
||||||
|
procedure QUEUE_RESP_GET
|
||||||
|
(
|
||||||
|
NEXSQUEUE in number, -- Ðåã. íîìåð çàïèñè î÷åðåäè
|
||||||
|
RCQUEUE_RESP out sys_refcursor -- Êóðñîð ñ äàííûìè ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè
|
||||||
|
);
|
||||||
|
|
||||||
/* Óñòàíîâêà ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè */
|
/* Óñòàíîâêà ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè */
|
||||||
procedure QUEUE_RESP_SET
|
procedure QUEUE_RESP_SET
|
||||||
(
|
(
|
||||||
@ -353,6 +360,13 @@ create or replace package PKG_EXS as
|
|||||||
RCQUEUE out sys_refcursor -- Êóðñîð ñ èçìåí¸ííîé ïîçèöèåé î÷åðåäè
|
RCQUEUE out sys_refcursor -- Êóðñîð ñ èçìåí¸ííîé ïîçèöèåé î÷åðåäè
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* Ñ÷èòûâàíèå äàííûõ ñîîáùåíèÿ çàïèñè î÷åðåäè */
|
||||||
|
procedure QUEUE_MSG_GET
|
||||||
|
(
|
||||||
|
NEXSQUEUE in number, -- Ðåã. íîìåð çàïèñè î÷åðåäè
|
||||||
|
RCQUEUE_MSG out sys_refcursor -- Êóðñîð ñ äàííûìè ñîîáùåíèÿ çàïèñè î÷åðåäè
|
||||||
|
);
|
||||||
|
|
||||||
/* Óñòàíîâêà ñîîáùåíèÿ çàïèñè î÷åðåäè */
|
/* Óñòàíîâêà ñîîáùåíèÿ çàïèñè î÷åðåäè */
|
||||||
procedure QUEUE_MSG_SET
|
procedure QUEUE_MSG_SET
|
||||||
(
|
(
|
||||||
@ -1316,8 +1330,6 @@ create or replace package body PKG_EXS as
|
|||||||
NQUEUE_EXEC_STATE_ERR,
|
NQUEUE_EXEC_STATE_ERR,
|
||||||
SQUEUE_EXEC_STATE_ERR) "sExecState",
|
SQUEUE_EXEC_STATE_ERR) "sExecState",
|
||||||
T.EXEC_MSG "sExecMsg",
|
T.EXEC_MSG "sExecMsg",
|
||||||
T.MSG "blMsg",
|
|
||||||
T.RESP "blResp",
|
|
||||||
T.EXSQUEUE "nQueueId"
|
T.EXSQUEUE "nQueueId"
|
||||||
from EXSQUEUE T,
|
from EXSQUEUE T,
|
||||||
EXSSERVICEFN F,
|
EXSSERVICEFN F,
|
||||||
@ -1350,7 +1362,7 @@ create or replace package body PKG_EXS as
|
|||||||
/* ×èñòèì áóôåð */
|
/* ×èñòèì áóôåð */
|
||||||
RNLIST_BASE_CLEAR(NIDENT => NIDENT);
|
RNLIST_BASE_CLEAR(NIDENT => NIDENT);
|
||||||
end QUEUE_GET;
|
end QUEUE_GET;
|
||||||
|
|
||||||
/* Ïðîâåðêà íåîáõîäèìîñòè èñïîëíåíèÿ ïîçèöèè î÷åðåäè */
|
/* Ïðîâåðêà íåîáõîäèìîñòè èñïîëíåíèÿ ïîçèöèè î÷åðåäè */
|
||||||
function QUEUE_SRV_TYPE_SEND_EXEC_CHECK
|
function QUEUE_SRV_TYPE_SEND_EXEC_CHECK
|
||||||
(
|
(
|
||||||
@ -1478,6 +1490,22 @@ create or replace package body PKG_EXS as
|
|||||||
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NEXSQUEUE, RCQUEUE => RCQUEUE);
|
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NEXSQUEUE, RCQUEUE => RCQUEUE);
|
||||||
end QUEUE_EXEC_STATE_SET;
|
end QUEUE_EXEC_STATE_SET;
|
||||||
|
|
||||||
|
/* Ñ÷èòûâàíèå äàííûõ ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè */
|
||||||
|
procedure QUEUE_RESP_GET
|
||||||
|
(
|
||||||
|
NEXSQUEUE in number, -- Ðåã. íîìåð çàïèñè î÷åðåäè
|
||||||
|
RCQUEUE_RESP out sys_refcursor -- Êóðñîð ñ äàííûìè ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè
|
||||||
|
)
|
||||||
|
is
|
||||||
|
REXSQUEUE EXSQUEUE%rowtype; -- Çàïèñü ïîçèöèè î÷åðåäè
|
||||||
|
begin
|
||||||
|
/* Ñ÷èòàåì çàïèñü î÷åðåäè */
|
||||||
|
REXSQUEUE := GET_EXSQUEUE_ID(NFLAG_SMART => 0, NRN => NEXSQUEUE);
|
||||||
|
/* Âåðíåì äàííûå â âèäå êóðñîðà */
|
||||||
|
open RCQUEUE_RESP for
|
||||||
|
select REXSQUEUE.RESP "blResp" from DUAL;
|
||||||
|
end QUEUE_RESP_GET;
|
||||||
|
|
||||||
/* Óñòàíîâêà ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè */
|
/* Óñòàíîâêà ðåçóëüòàòà îáðàáîòêè çàïèñè î÷åðåäè */
|
||||||
procedure QUEUE_RESP_SET
|
procedure QUEUE_RESP_SET
|
||||||
(
|
(
|
||||||
@ -1496,6 +1524,22 @@ create or replace package body PKG_EXS as
|
|||||||
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NEXSQUEUE, RCQUEUE => RCQUEUE);
|
QUEUE_GET(NFLAG_SMART => 0, NEXSQUEUE => NEXSQUEUE, RCQUEUE => RCQUEUE);
|
||||||
end QUEUE_RESP_SET;
|
end QUEUE_RESP_SET;
|
||||||
|
|
||||||
|
/* Ñ÷èòûâàíèå äàííûõ ñîîáùåíèÿ çàïèñè î÷åðåäè */
|
||||||
|
procedure QUEUE_MSG_GET
|
||||||
|
(
|
||||||
|
NEXSQUEUE in number, -- Ðåã. íîìåð çàïèñè î÷åðåäè
|
||||||
|
RCQUEUE_MSG out sys_refcursor -- Êóðñîð ñ äàííûìè ñîîáùåíèÿ çàïèñè î÷åðåäè
|
||||||
|
)
|
||||||
|
is
|
||||||
|
REXSQUEUE EXSQUEUE%rowtype; -- Çàïèñü ïîçèöèè î÷åðåäè
|
||||||
|
begin
|
||||||
|
/* Ñ÷èòàåì çàïèñü î÷åðåäè */
|
||||||
|
REXSQUEUE := GET_EXSQUEUE_ID(NFLAG_SMART => 0, NRN => NEXSQUEUE);
|
||||||
|
/* Âåðíåì äàííûå â âèäå êóðñîðà */
|
||||||
|
open RCQUEUE_MSG for
|
||||||
|
select REXSQUEUE.MSG "blMsg" from DUAL;
|
||||||
|
end QUEUE_MSG_GET;
|
||||||
|
|
||||||
/* Óñòàíîâêà ñîîáùåíèÿ çàïèñè î÷åðåäè */
|
/* Óñòàíîâêà ñîîáùåíèÿ çàïèñè î÷åðåäè */
|
||||||
procedure QUEUE_MSG_SET
|
procedure QUEUE_MSG_SET
|
||||||
(
|
(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user