create or replace function SCENARIO#0121(IN_ID in out NUMBER, -- ИД
IN_ISSUEDBID in out NUMBER, -- БД ИСТОЧНИК
IN_BANKOPERATIONID in out VARCHAR2, -- НОМЕР ОПЕРАЦИИ
IN_ORDERNUMBER in out VARCHAR2, -- НОМЕР ЗАЯВКИ В СИСТЕМЕ
IN_BRANCH in out VARCHAR2, -- КОД ФИЛИАЛА
IN_CURRENCYCODE in out VARCHAR2, -- КОД ВАЛЮТЫ
IN_OPERATIONDATETIME in out DATE, -- ДАТА ОПЕРАЦИИ
IN_BASEAMOUNT in out NUMBER, -- СУММА (НАЦ)
IN_CURRENCYAMOUNT in out NUMBER, -- СУММА (ВАЛ)
IN_EKNPCODE in out VARCHAR2, -- КНП
IN_DOCNUMBER in out VARCHAR2, -- № ДОКУМЕНТА
IN_DOCDATE in out DATE, -- ДАТА ДОКУМЕНТА
IN_DOCCATEGORY in out NUMBER, -- КАТЕГОРИЯ ДОКУМЕНТА
IN_DOCSUSPIC in out NUMBER, -- ТИП ПОДОЗРИТЕЛЬНОСТИ
IN_OPERATIONSTATUS in out NUMBER, -- СОСТОЯНИЕ ОПЕРАЦИИ
IN_OPERATIONREASON in out VARCHAR2, -- ОСНОВАНИЕ СОВЕРШЕНИЯ
OUT_MESS_NUMBER out NUMBER, -- ФМ1 - НОМЕР ФОРМЫ
OUT_MESS_DATE out DATE, -- ФМ1 - ДАТА ФОРМЫ
OUT_MESS_KIND out NUMBER, -- ФМ1 - ВИД ДОКУМЕНТА
OUT_MESS_STATUS out NUMBER, -- ФМ1 - ОСНОВАНИЕ ПОДАЧИ
OUT_SUSPIC_KIND out NUMBER, -- ВИД ДОКУМЕНТА (ФМ/ПОДОЗРИТ)
OUT_SUSPICIOUSTYPECODE out NUMBER, -- КОД КАТЕГОРИИ ФМ
OUT_CRITERIAFIRST out NUMBER, -- ПРИЗНАК ПОДОЗРИТЕЛЬНОСТИ 1
OUT_CRITERIASECOND out NUMBER, -- ПРИЗНАК ПОДОЗРИТЕЛЬНОСТИ 2
OUT_CRITERIATHIRD out NUMBER, -- ПРИЗНАК ПОДОЗРИТЕЛЬНОСТИ 3
OUT_CRITERIADIFFICULTIES out VARCHAR2, -- ЗАТРУДНЕНИЯ
OUT_OPERATIONEXTRAINFO out VARCHAR2, -- ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ
OUT_OFFLINEOPERATIONID out NUMBER, -- ID ОПЕРАЦИИ ИЗ TB_OFFLINEOPERATIONS
OUT_OPERATION_LIST out VARCHAR2 -- СПИСОК ID ОПЕРАЦИЙ TB_OFFLINEOPERATIONS
)
return number is
v_res number; -- СТАТУС ВОЗВРАТА, ЕСЛИ СРАБАТЫВАЕТ СЦЕНАРИЙ, ТО ВОЗВРАЩАЕМ 1
sWord varchar2(50) := '';
begin
v_res := -1;
/*****
ОПИСАНИЕ СЦЕНАРИЯ:
0121.Получение выигрыша по результатам проведения азартной игры в игорных заведениях;
СУММА > = 1 000 000 KZT (в эквиваленте)
И
КНП = 119
И
ОСНОВАНИЕ СОДЕРЖИТ: казино, букмекер, игр, ставк, покер, рулетка, casino, bets,
gambling, gaming, poker, roulet, wager, venture
*****/
-- НАЧАЛО ПОЛЬЗОВАТЕЛЬСКОГО КОДА
if IN_BASEAMOUNT >= 1000000 and IN_EKNPCODE in ( '119') then
if UPPER(IN_OPERATIONREASON) like '% КАЗИНО %' then sWord := 'КАЗИНО';
elsif UPPER(IN_OPERATIONREASON) like '% БУКМЕКЕР%' then sWord := 'БУКМЕКЕР';
elsif UPPER(IN_OPERATIONREASON) like '%ИГР%' then sWord := 'ИГР';
elsif UPPER(IN_OPERATIONREASON) like '% СТАВК%' then sWord := 'СТАВК';
elsif UPPER(IN_OPERATIONREASON) like '% ПОКЕР%' then sWord := 'ПОКЕР';
elsif UPPER(IN_OPERATIONREASON) like '% РУЛЕТКА %' then sWord := 'РУЛЕТКА';
elsif UPPER(IN_OPERATIONREASON) like '% CASINO %' then sWord := 'CASINO';
elsif UPPER(IN_OPERATIONREASON) like '% BETS %' then sWord := 'BETS';
elsif UPPER(IN_OPERATIONREASON) like '% GAMING %' then sWord := 'GAMING';
elsif UPPER(IN_OPERATIONREASON) like '% GAMBLING %' then sWord := 'GAMBLING';
elsif UPPER(IN_OPERATIONREASON) like '% POKER %' then sWord := 'POKER';
elsif UPPER(IN_OPERATIONREASON) like '% ROULET %' then sWord := 'ROULET';
elsif UPPER(IN_OPERATIONREASON) like '% WAGER %' then sWord := 'WAGER';
elsif UPPER(IN_OPERATIONREASON) like '% VENTURE %' then sWord := 'VENTURE';
end if;
if sWord is not null then
OUT_MESS_NUMBER := -1;
OUT_MESS_DATE := sysdate;
OUT_MESS_KIND := '1';
OUT_MESS_STATUS := '1';
OUT_SUSPIC_KIND := '1';
OUT_SUSPICIOUSTYPECODE := '0122';
OUT_CRITERIAFIRST := null;
OUT_CRITERIASECOND := null;
OUT_CRITERIATHIRD := null;
OUT_CRITERIADIFFICULTIES := '';
OUT_OPERATIONEXTRAINFO := '[Сценарий № 0121] Разовая операция' ||
chr(10) || 'Назначение платежа: ' ||
IN_OPERATIONREASON || chr(10) ||
'Получение выигрыша, в размере > 1000000 KZT' ||
chr(10) || 'КНП = '||IN_EKNPCODE || chr(10) ||
'Совпадение со словом: ' || sWord;
OUT_OFFLINEOPERATIONID := IN_ID;
OUT_OPERATION_LIST := IN_ID;
IN_OPERATIONREASON := nvl(get_doc_type(IN_ID),IN_OPERATIONREASON);
v_res := 1;
end if;
end if;
-- КОНЕЦ ПОЛЬЗОВАТЕЛЬСКОГО КОДА
return v_res;
end;
create or replace function SCENARIO#0121(IN_ID in out NUMBER, -- ИД IN_ISSUEDBID in out NUMBER, -- БД ИСТОЧНИК IN_BANKOPERATIONID in out VARCHAR2, -- НОМЕР ОПЕРАЦИИ IN_ORDERNUMBER in out VARCHAR2, -- НОМЕР ЗАЯВКИ В СИСТЕМЕ IN_BRANCH in out VARCHAR2, -- КОД ФИЛИАЛА IN_CURRENCYCODE in out VARCHAR2, -- КОД ВАЛЮТЫ IN_OPERATIONDATETIME in out DATE, -- ДАТА ОПЕРАЦИИ IN_BASEAMOUNT in out NUMBER, -- СУММА (НАЦ) IN_CURRENCYAMOUNT in out NUMBER, -- СУММА (ВАЛ) IN_EKNPCODE in out VARCHAR2, -- КНП IN_DOCNUMBER in out VARCHAR2, -- № ДОКУМЕНТА IN_DOCDATE in out DATE, -- ДАТА ДОКУМЕНТА IN_DOCCATEGORY in out NUMBER, -- КАТЕГОРИЯ ДОКУМЕНТА IN_DOCSUSPIC in out NUMBER, -- ТИП ПОДОЗРИТЕЛЬНОСТИ IN_OPERATIONSTATUS in out NUMBER, -- СОСТОЯНИЕ ОПЕРАЦИИ IN_OPERATIONREASON in out VARCHAR2, -- ОСНОВАНИЕ СОВЕРШЕНИЯ OUT_MESS_NUMBER out NUMBER, -- ФМ1 - НОМЕР ФОРМЫ OUT_MESS_DATE out DATE, -- ФМ1 - ДАТА ФОРМЫ OUT_MESS_KIND out NUMBER, -- ФМ1 - ВИД ДОКУМЕНТА OUT_MESS_STATUS out NUMBER, -- ФМ1 - ОСНОВАНИЕ ПОДАЧИ OUT_SUSPIC_KIND out NUMBER, -- ВИД ДОКУМЕНТА (ФМ/ПОДОЗРИТ) OUT_SUSPICIOUSTYPECODE out NUMBER, -- КОД КАТЕГОРИИ ФМ OUT_CRITERIAFIRST out NUMBER, -- ПРИЗНАК ПОДОЗРИТЕЛЬНОСТИ 1 OUT_CRITERIASECOND out NUMBER, -- ПРИЗНАК ПОДОЗРИТЕЛЬНОСТИ 2 OUT_CRITERIATHIRD out NUMBER, -- ПРИЗНАК ПОДОЗРИТЕЛЬНОСТИ 3 OUT_CRITERIADIFFICULTIES out VARCHAR2, -- ЗАТРУДНЕНИЯ OUT_OPERATIONEXTRAINFO out VARCHAR2, -- ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ OUT_OFFLINEOPERATIONID out NUMBER, -- ID ОПЕРАЦИИ ИЗ TB_OFFLINEOPERATIONS OUT_OPERATION_LIST out VARCHAR2 -- СПИСОК ID ОПЕРАЦИЙ TB_OFFLINEOPERATIONS )
return number is v_res number; -- СТАТУС ВОЗВРАТА, ЕСЛИ СРАБАТЫВАЕТ СЦЕНАРИЙ, ТО ВОЗВРАЩАЕМ 1 sWord varchar2(50) := ''; begin v_res := -1;
/***** ОПИСАНИЕ СЦЕНАРИЯ: 0121.Получение выигрыша по результатам проведения азартной игры в игорных заведениях;
СУММА > = 1 000 000 KZT (в эквиваленте) И КНП = 119 И ОСНОВАНИЕ СОДЕРЖИТ: казино, букмекер, игр, ставк, покер, рулетка, casino, bets, gambling, gaming, poker, roulet, wager, venture
*****/ -- НАЧАЛО ПОЛЬЗОВАТЕЛЬСКОГО КОДА if IN_BASEAMOUNT >= 1000000 and IN_EKNPCODE in ( '119') then
end if;
-- КОНЕЦ ПОЛЬЗОВАТЕЛЬСКОГО КОДА return v_res; end;