jde_exec_blocks/APP_EVENT_AIU_FOR_APP_TASK_...

84 lines
2.8 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

as
declare variable F_RESULT D_PRIZNAK;
declare variable F_PR_ERR D_INTEGER; --DECLARE VARIABLE FSEANS_STATUS TYPE OF D_INTEGER;
declare variable EXEC_BLOCK_32_7 type of column EXEC_BLOCKS.EXEC_BLOCKS_TEXT;
declare variable EXEC_32_7_OUTPUT type of D_BIGINT;
begin
/*
TIM130324 17:00
*/
-- APP_EVENT_AIU_FOR_APP_TASK_10: ТРИГГЕР ОБРАБОТКИ ЗАПИСИ СОБЫТИЯ APP_EVENT
-- (СОЗДАНИЕ, РЕДАКТИРОВАНИЕ, УДАЛЕНИЕ APP_TASK)
--0. ДЛЯ ПОЧТОВОГО СЕРВЕРА НИЧЕГО НЕ ДЕЛАЕМ
if (exists(select 1
from PARSRV A
where A.PARSRV_VID = 1)) then
exit;
-- IF (UPDATING AND (NEW.APP_EVENT_DEL = 1)
-- AND (NEW.APP_EVENT_DEL IS DISTINCT FROM OLD.APP_EVENT_DEL)) THEN
-- BEGIN
-- UPDATE APP_TASK A
-- SET A.APP_TASK_DEL = 1
-- WHERE A.ID_APP_TASK = NEW.ID_APP_EVENT;
-- EXIT;
-- END
--УТОЧНИТЬ, ДЛЯ КАКИХ APP_EVENT НЕ НУЖНО СОЗДАВАТЬ APP_TASK!!!
if (inserting or
-- (
updating
-- AND
-- (
-- (NEW.APP_EVENT_DT IS DISTINCT FROM OLD.APP_EVENT_DT)
-- OR (NEW.APP_EVENT_TEXT IS DISTINCT FROM OLD.APP_EVENT_TEXT)
-- OR (NEW.APP_EVENT_PARAM IS DISTINCT FROM OLD.APP_EVENT_PARAM)
-- OR (NEW.APP_EVENT_DATA IS DISTINCT FROM OLD.APP_EVENT_DATA)
-- OR (NEW.APP_EVENT_DEL IS DISTINCT FROM OLD.APP_EVENT_DEL)
-- OR (NEW.APP_EVENT_CH IS DISTINCT FROM OLD.APP_EVENT_CH)
-- /* УТОЧНИТЬ !!!
-- OR (NEW.APP_EVENT_ID_SOTR IS DISTINCT FROM OLD.APP_EVENT_ID_SOTR)
-- OR (NEW.APP_EVENT_ID_REC IS DISTINCT FROM OLD.APP_EVENT_ID_REC)
-- OR (NEW.APP_EVENT_VID IS DISTINCT FROM OLD.APP_EVENT_VID)
-- OR (NEW.APP_EVENT_TIP IS DISTINCT FROM OLD.APP_EVENT_TIP)
-- */
-- )
-- )
) then
begin
-- if (new.APP_EVENT_VID in (8676, 8677, 8678)) then
-- begin
--ПЕРЕСЧЕТ ТС В APP_TASK
select OUT_RESULT, OUT_PR_ERR
from APP_TASK_WORK(new.ID_APP_EVENT) --ID_APP_EVENT
into :F_RESULT, :F_PR_ERR;
--ФОРМИРОВАНИЕ ЗАПИСЕЙ В APP_PARAM
select OUT_RESULT, OUT_PR_ERR
from APP_PARAM_WORK(new.ID_APP_EVENT) --ID_APP_EVENT
into :F_RESULT, :F_PR_ERR;
-- end
--
-- else
-- if (new.APP_EVENT_VID in (8795, 8797)) then
-- begin
select E.EXEC_BLOCKS_TEXT
from EXEC_BLOCKS E
where E.EXEC_BLOCKS_VID = 32 and
E.EXEC_BLOCKS_TIP = 7 and
E.EXEC_BLOCKS_DEL = 0 rows 1 to 1
into :EXEC_BLOCK_32_7;
if (:EXEC_BLOCK_32_7 is not null) then
begin
execute statement(:EXEC_BLOCK_32_7)(IN_ID_APP_EVENT := new.ID_APP_EVENT)
into :EXEC_32_7_OUTPUT;
end
-- end
end
end