Добавил передачу SOPTIONS при повторном добавлении сообщения в очередь обмена, поменял использованиче числового литерала "0" на константу PKG_EXS.NSRV_TYPE_SEND

This commit is contained in:
Mikhail Chechnev 2019-01-08 16:18:29 +03:00
parent 9c48c46406
commit b6f121a11e

View File

@ -0,0 +1,34 @@
create or replace procedure P_EXSQUEUE_BASE_REPEAT
(
NRN in number -- Ðåãèñòðàöèîííûé íîìåð
)
as
NRN_NEW PKG_STD.TREF; -- Ðåãèñòðàöèîííûé íîìåð äîáàâëåííîãî ñîîáùåíèÿ
begin
/* Îòáîð çàïèñè */
for REC in (select T.*,
S.SRV_TYPE
from EXSQUEUE T,
EXSSERVICEFN F,
EXSSERVICE S
where T.RN = NRN
and T.EXSSERVICEFN = F.RN
and F.PRN = S.RN)
loop
/* Åñëè ýòî íå îòïðàâêà ñîîáùåíèÿ */
if (REC.SRV_TYPE != PKG_EXS.NSRV_TYPE_SEND) then
P_EXCEPTION(0,
'Ïîâòîðèòü îòïðàâêó ìîæíî òîëüêî äëÿ èñõîäÿùåãî ñîîáùåíèÿ.');
end if;
/* Ïîìåùåíèå ñîîáùåíèÿ îáìåíà â î÷åðåäü */
PKG_EXS.QUEUE_PUT(NEXSSERVICEFN => REC.EXSSERVICEFN,
BMSG => REC.MSG_ORIGINAL,
NEXSQUEUE => REC.RN,
NLNK_COMPANY => REC.LNK_COMPANY,
NLNK_DOCUMENT => REC.LNK_DOCUMENT,
SLNK_UNITCODE => REC.LNK_UNITCODE,
SOPTIONS => REC.OPTIONS,
NNEW_EXSQUEUE => NRN_NEW);
end loop;
end;
/