Новые атрибуты класса - функции обратной связи, редактирование класса оборудования, кнопки обновление списков файлов и моделей класса
This commit is contained in:
parent
4c57e82ba9
commit
add981dff7
@ -31,8 +31,12 @@ create or replace package UDO_PKG_EQUIPDS as
|
|||||||
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NEQUIPDS out number, -- Регистрационный номер выборки данных оборудования
|
NEQUIPDS out number, -- Регистрационный номер выборки данных оборудования
|
||||||
NEQUIPDSCM out number -- Регистрационный номер класса оборудования выборки данных
|
NEQUIPDSCM out number -- Регистрационный номер класса оборудования выборки данных
|
||||||
);
|
);
|
||||||
@ -62,11 +66,34 @@ create or replace package UDO_PKG_EQUIPDS as
|
|||||||
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NRN out number -- Регистрационный номер
|
NRN out number -- Регистрационный номер
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* Клиентское исправление "Выборки данных оборудования (классы оборудования)" */
|
||||||
|
procedure CM_UPD
|
||||||
|
(
|
||||||
|
NRN in number, -- Регистрационный номер
|
||||||
|
SEQOBJKIND in varchar2, -- Класс оборудования
|
||||||
|
SDICMUNTS in varchar2, -- Единица измерения выборки
|
||||||
|
SUSERPROCS_DATA in varchar2, -- Процедура формирования
|
||||||
|
SEXSSERVICE_UPLOAD in varchar2, -- Сервис обмена для выгрузки данных
|
||||||
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2 -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
);
|
||||||
|
|
||||||
/* Клиентское удаление "Выборки данных оборудования (классы оборудования)" */
|
/* Клиентское удаление "Выборки данных оборудования (классы оборудования)" */
|
||||||
procedure CM_DEL
|
procedure CM_DEL
|
||||||
(
|
(
|
||||||
@ -292,8 +319,12 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NEQUIPDS out number, -- Регистрационный номер выборки данных оборудования
|
NEQUIPDS out number, -- Регистрационный номер выборки данных оборудования
|
||||||
NEQUIPDSCM out number -- Регистрационный номер класса оборудования выборки данных
|
NEQUIPDSCM out number -- Регистрационный номер класса оборудования выборки данных
|
||||||
)
|
)
|
||||||
@ -320,10 +351,18 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Не указана функция обмена для передачи внешней системе.');
|
'Не указана функция обмена для передачи внешней системе.');
|
||||||
end if;
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_MDCB is null) or (SEXSSERVICEFN_SEND_MDCB is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для приёма обратной связи о передече внешней системе.');
|
||||||
|
end if;
|
||||||
if ((SEXSSERVICE_SEND_RQ is null) or (SEXSSERVICEFN_SEND_RQ is null)) then
|
if ((SEXSSERVICE_SEND_RQ is null) or (SEXSSERVICEFN_SEND_RQ is null)) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Не указана функция обмена для обработки внешней системой.');
|
'Не указана функция обмена для обработки внешней системой.');
|
||||||
end if;
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_RQCB is null) or (SEXSSERVICEFN_SEND_RQCB is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для приёма обратной связи об обработке внешней системой.');
|
||||||
|
end if;
|
||||||
/* Проверим права доступа */
|
/* Проверим права доступа */
|
||||||
UDO_PKG_EQUIPDS_BASE.UTL_ACCESS(STABLE => 'UDO_T_EQUIPDS', SACTION => 'UDO_EQUIPDS_MAKE');
|
UDO_PKG_EQUIPDS_BASE.UTL_ACCESS(STABLE => 'UDO_T_EQUIPDS', SACTION => 'UDO_EQUIPDS_MAKE');
|
||||||
/* Проверим наличие такой выборки */
|
/* Проверим наличие такой выборки */
|
||||||
@ -342,17 +381,21 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
/* Класса оборудования в выборке нет */
|
/* Класса оборудования в выборке нет */
|
||||||
if (NEQUIPDSCM is null) then
|
if (NEQUIPDSCM is null) then
|
||||||
/* Добавляем запись класса оборудования */
|
/* Добавляем запись класса оборудования */
|
||||||
CM_INS(NPRN => NEQUIPDS,
|
CM_INS(NPRN => NEQUIPDS,
|
||||||
SEQOBJKIND => SEQOBJKIND,
|
SEQOBJKIND => SEQOBJKIND,
|
||||||
SDICMUNTS => SDICMUNTS,
|
SDICMUNTS => SDICMUNTS,
|
||||||
SUSERPROCS_DATA => SUSERPROCS_DATA,
|
SUSERPROCS_DATA => SUSERPROCS_DATA,
|
||||||
SEXSSERVICE_UPLOAD => SEXSSERVICE_UPLOAD,
|
SEXSSERVICE_UPLOAD => SEXSSERVICE_UPLOAD,
|
||||||
SEXSSERVICEFN_UPLOAD => SEXSSERVICEFN_UPLOAD,
|
SEXSSERVICEFN_UPLOAD => SEXSSERVICEFN_UPLOAD,
|
||||||
SEXSSERVICE_SEND_MD => SEXSSERVICE_SEND_MD,
|
SEXSSERVICE_SEND_MD => SEXSSERVICE_SEND_MD,
|
||||||
SEXSSERVICEFN_SEND_MD => SEXSSERVICEFN_SEND_MD,
|
SEXSSERVICEFN_SEND_MD => SEXSSERVICEFN_SEND_MD,
|
||||||
SEXSSERVICE_SEND_RQ => SEXSSERVICE_SEND_RQ,
|
SEXSSERVICE_SEND_MDCB => SEXSSERVICE_SEND_MDCB,
|
||||||
SEXSSERVICEFN_SEND_RQ => SEXSSERVICEFN_SEND_RQ,
|
SEXSSERVICEFN_SEND_MDCB => SEXSSERVICEFN_SEND_MDCB,
|
||||||
NRN => NEQUIPDSCM);
|
SEXSSERVICE_SEND_RQ => SEXSSERVICE_SEND_RQ,
|
||||||
|
SEXSSERVICEFN_SEND_RQ => SEXSSERVICEFN_SEND_RQ,
|
||||||
|
SEXSSERVICE_SEND_RQCB => SEXSSERVICE_SEND_RQCB,
|
||||||
|
SEXSSERVICEFN_SEND_RQCB => SEXSSERVICEFN_SEND_RQCB,
|
||||||
|
NRN => NEQUIPDSCM);
|
||||||
end if;
|
end if;
|
||||||
end MAKE;
|
end MAKE;
|
||||||
|
|
||||||
@ -373,11 +416,20 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
NCUR := PKG_XMAKE.OPEN_CURSOR();
|
NCUR := PKG_XMAKE.OPEN_CURSOR();
|
||||||
/* Обращаемся к данным класса оборудования */
|
/* Обращаемся к данным класса оборудования */
|
||||||
for C in (select T.RN NRN,
|
for C in (select T.RN NRN,
|
||||||
|
FORMAT_HIER_NAME(null, null, OK.FULLCODE) SSEQOBJKIND,
|
||||||
OK.NAME SNAME,
|
OK.NAME SNAME,
|
||||||
|
DM.MEAS_MNEMO SDICMUNTS,
|
||||||
UP.CODE SUSERPROCS_DATA,
|
UP.CODE SUSERPROCS_DATA,
|
||||||
SU.CODE || '/' || SFU.CODE SEXSSERVICE_UPLOAD,
|
SU.CODE SEXSSERVICE_UPLOAD,
|
||||||
SMD.CODE || '/' || SFMD.CODE SEXSSERVICE_SEND_MD,
|
SFU.CODE SEXSSERVICEFN_UPLOAD,
|
||||||
SRQ.CODE || '/' || SFRQ.CODE SEXSSERVICE_SEND_RQ
|
SMD.CODE SEXSSERVICE_SEND_MD,
|
||||||
|
SFMD.CODE SEXSSERVICEFN_SEND_MD,
|
||||||
|
SMDCB.CODE SEXSSERVICE_SEND_MDCB,
|
||||||
|
SFMDCB.CODE SEXSSERVICEFN_SEND_MDCB,
|
||||||
|
SRQ.CODE SEXSSERVICE_SEND_RQ,
|
||||||
|
SFRQ.CODE SEXSSERVICEFN_SEND_RQ,
|
||||||
|
SRQCB.CODE SEXSSERVICE_SEND_RQCB,
|
||||||
|
SFRQCB.CODE SEXSSERVICEFN_SEND_RQCB
|
||||||
from UDO_T_EQUIPDSCM T,
|
from UDO_T_EQUIPDSCM T,
|
||||||
EQOBJKIND OK,
|
EQOBJKIND OK,
|
||||||
USERPROCS UP,
|
USERPROCS UP,
|
||||||
@ -385,8 +437,13 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
EXSSERVICEFN SFU,
|
EXSSERVICEFN SFU,
|
||||||
EXSSERVICE SMD,
|
EXSSERVICE SMD,
|
||||||
EXSSERVICEFN SFMD,
|
EXSSERVICEFN SFMD,
|
||||||
|
EXSSERVICE SMDCB,
|
||||||
|
EXSSERVICEFN SFMDCB,
|
||||||
EXSSERVICE SRQ,
|
EXSSERVICE SRQ,
|
||||||
EXSSERVICEFN SFRQ
|
EXSSERVICEFN SFRQ,
|
||||||
|
EXSSERVICE SRQCB,
|
||||||
|
EXSSERVICEFN SFRQCB,
|
||||||
|
DICMUNTS DM
|
||||||
where T.RN = NEQUIPDSCM
|
where T.RN = NEQUIPDSCM
|
||||||
and T.EQOBJKIND = OK.RN
|
and T.EQOBJKIND = OK.RN
|
||||||
and T.USERPROCS_DATA = UP.RN
|
and T.USERPROCS_DATA = UP.RN
|
||||||
@ -394,8 +451,13 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
and SFU.PRN = SU.RN
|
and SFU.PRN = SU.RN
|
||||||
and T.EXSSERVICEFN_SEND_MD = SFMD.RN
|
and T.EXSSERVICEFN_SEND_MD = SFMD.RN
|
||||||
and SFMD.PRN = SMD.RN
|
and SFMD.PRN = SMD.RN
|
||||||
|
and T.EXSSERVICEFN_SEND_MDCB = SFMDCB.RN
|
||||||
|
and SFMDCB.PRN = SMDCB.RN
|
||||||
and T.EXSSERVICEFN_SEND_RQ = SFRQ.RN
|
and T.EXSSERVICEFN_SEND_RQ = SFRQ.RN
|
||||||
and SFRQ.PRN = SRQ.RN)
|
and SFRQ.PRN = SRQ.RN
|
||||||
|
and T.EXSSERVICEFN_SEND_RQCB = SFRQCB.RN
|
||||||
|
and SFRQCB.PRN = SRQCB.RN
|
||||||
|
and T.DICMUNTS = DM.RN)
|
||||||
loop
|
loop
|
||||||
/* Собираем карточку класса оборудования */
|
/* Собираем карточку класса оборудования */
|
||||||
XEQUIPDSCM := PKG_XMAKE.ELEMENT(ICURSOR => NCUR,
|
XEQUIPDSCM := PKG_XMAKE.ELEMENT(ICURSOR => NCUR,
|
||||||
@ -405,20 +467,47 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
SNAME => 'NRN',
|
SNAME => 'NRN',
|
||||||
SVALUE => C.NRN),
|
SVALUE => C.NRN),
|
||||||
RATTRIBUTE01 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
RATTRIBUTE01 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SSEQOBJKIND',
|
||||||
|
SVALUE => C.SSEQOBJKIND),
|
||||||
|
RATTRIBUTE02 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
SNAME => 'SNAME',
|
SNAME => 'SNAME',
|
||||||
SVALUE => C.SNAME),
|
SVALUE => C.SNAME),
|
||||||
RATTRIBUTE02 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
RATTRIBUTE03 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SDICMUNTS',
|
||||||
|
SVALUE => C.SDICMUNTS),
|
||||||
|
RATTRIBUTE04 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
SNAME => 'SUSERPROCS_DATA',
|
SNAME => 'SUSERPROCS_DATA',
|
||||||
SVALUE => C.SUSERPROCS_DATA),
|
SVALUE => C.SUSERPROCS_DATA),
|
||||||
RATTRIBUTE03 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
RATTRIBUTE05 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
SNAME => 'SEXSSERVICE_UPLOAD',
|
SNAME => 'SEXSSERVICE_UPLOAD',
|
||||||
SVALUE => C.SEXSSERVICE_UPLOAD),
|
SVALUE => C.SEXSSERVICE_UPLOAD),
|
||||||
RATTRIBUTE04 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
RATTRIBUTE06 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICEFN_UPLOAD',
|
||||||
|
SVALUE => C.SEXSSERVICEFN_UPLOAD),
|
||||||
|
RATTRIBUTE07 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
SNAME => 'SEXSSERVICE_SEND_MD',
|
SNAME => 'SEXSSERVICE_SEND_MD',
|
||||||
SVALUE => C.SEXSSERVICE_SEND_MD),
|
SVALUE => C.SEXSSERVICE_SEND_MD),
|
||||||
RATTRIBUTE05 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
RATTRIBUTE08 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICEFN_SEND_MD',
|
||||||
|
SVALUE => C.SEXSSERVICEFN_SEND_MD),
|
||||||
|
RATTRIBUTE09 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICE_SEND_MDCB',
|
||||||
|
SVALUE => C.SEXSSERVICE_SEND_MDCB),
|
||||||
|
RATTRIBUTE10 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICEFN_SEND_MDCB',
|
||||||
|
SVALUE => C.SEXSSERVICEFN_SEND_MDCB),
|
||||||
|
RATTRIBUTE11 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
SNAME => 'SEXSSERVICE_SEND_RQ',
|
SNAME => 'SEXSSERVICE_SEND_RQ',
|
||||||
SVALUE => C.SEXSSERVICE_SEND_RQ)));
|
SVALUE => C.SEXSSERVICE_SEND_RQ),
|
||||||
|
RATTRIBUTE12 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICEFN_SEND_RQ',
|
||||||
|
SVALUE => C.SEXSSERVICEFN_SEND_RQ),
|
||||||
|
RATTRIBUTE13 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICE_SEND_RQCB',
|
||||||
|
SVALUE => C.SEXSSERVICE_SEND_RQCB),
|
||||||
|
RATTRIBUTE14 => PKG_XMAKE.ATTRIBUTE(ICURSOR => NCUR,
|
||||||
|
SNAME => 'SEXSSERVICEFN_SEND_RQCB',
|
||||||
|
SVALUE => C.SEXSSERVICEFN_SEND_RQCB)));
|
||||||
end loop;
|
end loop;
|
||||||
/* Формируем XML-представление ответа */
|
/* Формируем XML-представление ответа */
|
||||||
XDOC := PKG_XMAKE.ELEMENT(ICURSOR => NCUR, SNAME => 'XDATA', RNODE00 => XEQUIPDSCM);
|
XDOC := PKG_XMAKE.ELEMENT(ICURSOR => NCUR, SNAME => 'XDATA', RNODE00 => XEQUIPDSCM);
|
||||||
@ -527,8 +616,12 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NRN out number -- Регистрационный номер
|
NRN out number -- Регистрационный номер
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
@ -538,7 +631,9 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
NUSERPROCS_DATA PKG_STD.TREF; -- Рег. номер процедуры формирования
|
NUSERPROCS_DATA PKG_STD.TREF; -- Рег. номер процедуры формирования
|
||||||
NEXSSERVICEFN_UPLOAD PKG_STD.TREF; -- Рег. номер функции обмена для выгрузки данных
|
NEXSSERVICEFN_UPLOAD PKG_STD.TREF; -- Рег. номер функции обмена для выгрузки данных
|
||||||
NEXSSERVICEFN_SEND_MD PKG_STD.TREF; -- Рег. номер Функции обмена для передачи внешней системе
|
NEXSSERVICEFN_SEND_MD PKG_STD.TREF; -- Рег. номер Функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_MDCB PKG_STD.TREF; -- Рег. номер call-back функции обмена для передачи внешней системе
|
||||||
NEXSSERVICEFN_SEND_RQ PKG_STD.TREF; -- Рег. номер функции обмена для обработки внешней системой
|
NEXSSERVICEFN_SEND_RQ PKG_STD.TREF; -- Рег. номер функции обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB PKG_STD.TREF; -- Рег. номер call-back функции обмена для обработки внешней системой
|
||||||
begin
|
begin
|
||||||
/* Проверим параметры */
|
/* Проверим параметры */
|
||||||
if (NPRN is null) then
|
if (NPRN is null) then
|
||||||
@ -560,40 +655,154 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Не указана функция обмена для передачи внешней системе.');
|
'Не указана функция обмена для передачи внешней системе.');
|
||||||
end if;
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_MDCB is null) or (SEXSSERVICEFN_SEND_MDCB is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для приёма обратной связи о передече внешней системе.');
|
||||||
|
end if;
|
||||||
if ((SEXSSERVICE_SEND_RQ is null) or (SEXSSERVICEFN_SEND_RQ is null)) then
|
if ((SEXSSERVICE_SEND_RQ is null) or (SEXSSERVICEFN_SEND_RQ is null)) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Не указана функция обмена для обработки внешней системой.');
|
'Не указана функция обмена для обработки внешней системой.');
|
||||||
end if;
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_RQCB is null) or (SEXSSERVICEFN_SEND_RQCB is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для приёма обратной связи об обработке внешней системой.');
|
||||||
|
end if;
|
||||||
/* Проверим права доступа */
|
/* Проверим права доступа */
|
||||||
UDO_PKG_EQUIPDS_BASE.UTL_ACCESS(STABLE => 'UDO_T_EQUIPDSCM', SACTION => 'UDO_EQUIPDSCM_INSERT');
|
UDO_PKG_EQUIPDS_BASE.UTL_ACCESS(STABLE => 'UDO_T_EQUIPDSCM', SACTION => 'UDO_EQUIPDSCM_INSERT');
|
||||||
/* Разыменуем ссылки */
|
/* Разыменуем ссылки */
|
||||||
UDO_PKG_EQUIPDS_BASE.CM_JOINS(NCOMPANY => NCOMPANY,
|
UDO_PKG_EQUIPDS_BASE.CM_JOINS(NCOMPANY => NCOMPANY,
|
||||||
SEQOBJKIND => SEQOBJKIND,
|
SEQOBJKIND => SEQOBJKIND,
|
||||||
SDICMUNTS => SDICMUNTS,
|
SDICMUNTS => SDICMUNTS,
|
||||||
SUSERPROCS_DATA => SUSERPROCS_DATA,
|
SUSERPROCS_DATA => SUSERPROCS_DATA,
|
||||||
SEXSSERVICE_UPLOAD => SEXSSERVICE_UPLOAD,
|
SEXSSERVICE_UPLOAD => SEXSSERVICE_UPLOAD,
|
||||||
SEXSSERVICEFN_UPLOAD => SEXSSERVICEFN_UPLOAD,
|
SEXSSERVICEFN_UPLOAD => SEXSSERVICEFN_UPLOAD,
|
||||||
SEXSSERVICE_SEND_MD => SEXSSERVICE_SEND_MD,
|
SEXSSERVICE_SEND_MD => SEXSSERVICE_SEND_MD,
|
||||||
SEXSSERVICEFN_SEND_MD => SEXSSERVICEFN_SEND_MD,
|
SEXSSERVICEFN_SEND_MD => SEXSSERVICEFN_SEND_MD,
|
||||||
SEXSSERVICE_SEND_RQ => SEXSSERVICE_SEND_RQ,
|
SEXSSERVICE_SEND_MDCB => SEXSSERVICE_SEND_MDCB,
|
||||||
SEXSSERVICEFN_SEND_RQ => SEXSSERVICEFN_SEND_RQ,
|
SEXSSERVICEFN_SEND_MDCB => SEXSSERVICEFN_SEND_MDCB,
|
||||||
NEQOBJKIND => NEQOBJKIND,
|
SEXSSERVICE_SEND_RQ => SEXSSERVICE_SEND_RQ,
|
||||||
NDICMUNTS => NDICMUNTS,
|
SEXSSERVICEFN_SEND_RQ => SEXSSERVICEFN_SEND_RQ,
|
||||||
NUSERPROCS_DATA => NUSERPROCS_DATA,
|
SEXSSERVICE_SEND_RQCB => SEXSSERVICE_SEND_RQCB,
|
||||||
NEXSSERVICEFN_UPLOAD => NEXSSERVICEFN_UPLOAD,
|
SEXSSERVICEFN_SEND_RQCB => SEXSSERVICEFN_SEND_RQCB,
|
||||||
NEXSSERVICEFN_SEND_MD => NEXSSERVICEFN_SEND_MD,
|
NEQOBJKIND => NEQOBJKIND,
|
||||||
NEXSSERVICEFN_SEND_RQ => NEXSSERVICEFN_SEND_RQ);
|
NDICMUNTS => NDICMUNTS,
|
||||||
|
NUSERPROCS_DATA => NUSERPROCS_DATA,
|
||||||
|
NEXSSERVICEFN_UPLOAD => NEXSSERVICEFN_UPLOAD,
|
||||||
|
NEXSSERVICEFN_SEND_MD => NEXSSERVICEFN_SEND_MD,
|
||||||
|
NEXSSERVICEFN_SEND_MDCB => NEXSSERVICEFN_SEND_MDCB,
|
||||||
|
NEXSSERVICEFN_SEND_RQ => NEXSSERVICEFN_SEND_RQ,
|
||||||
|
NEXSSERVICEFN_SEND_RQCB => NEXSSERVICEFN_SEND_RQCB);
|
||||||
/* Добавляем запись */
|
/* Добавляем запись */
|
||||||
UDO_PKG_EQUIPDS_BASE.CM_INS(NPRN => NPRN,
|
UDO_PKG_EQUIPDS_BASE.CM_INS(NPRN => NPRN,
|
||||||
NEQOBJKIND => NEQOBJKIND,
|
NEQOBJKIND => NEQOBJKIND,
|
||||||
NDICMUNTS => NDICMUNTS,
|
NDICMUNTS => NDICMUNTS,
|
||||||
NUSERPROCS_DATA => NUSERPROCS_DATA,
|
NUSERPROCS_DATA => NUSERPROCS_DATA,
|
||||||
NEXSSERVICEFN_UPLOAD => NEXSSERVICEFN_UPLOAD,
|
NEXSSERVICEFN_UPLOAD => NEXSSERVICEFN_UPLOAD,
|
||||||
NEXSSERVICEFN_SEND_MD => NEXSSERVICEFN_SEND_MD,
|
NEXSSERVICEFN_SEND_MD => NEXSSERVICEFN_SEND_MD,
|
||||||
NEXSSERVICEFN_SEND_RQ => NEXSSERVICEFN_SEND_RQ,
|
NEXSSERVICEFN_SEND_MDCB => NEXSSERVICEFN_SEND_MDCB,
|
||||||
NRN => NRN);
|
NEXSSERVICEFN_SEND_RQ => NEXSSERVICEFN_SEND_RQ,
|
||||||
|
NEXSSERVICEFN_SEND_RQCB => NEXSSERVICEFN_SEND_RQCB,
|
||||||
|
NRN => NRN);
|
||||||
end CM_INS;
|
end CM_INS;
|
||||||
|
|
||||||
|
/* Клиентское исправление "Выборки данных оборудования (классы оборудования)" */
|
||||||
|
procedure CM_UPD
|
||||||
|
(
|
||||||
|
NRN in number, -- Регистрационный номер
|
||||||
|
SEQOBJKIND in varchar2, -- Класс оборудования
|
||||||
|
SDICMUNTS in varchar2, -- Единица измерения выборки
|
||||||
|
SUSERPROCS_DATA in varchar2, -- Процедура формирования
|
||||||
|
SEXSSERVICE_UPLOAD in varchar2, -- Сервис обмена для выгрузки данных
|
||||||
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2 -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCOMPANY PKG_STD.TREF := GET_SESSION_COMPANY(); -- Организация
|
||||||
|
NEQOBJKIND PKG_STD.TREF; -- Рег. номер класса оборудования
|
||||||
|
NDICMUNTS PKG_STD.TREF; -- Рег. номер единицы измерения выборки
|
||||||
|
NUSERPROCS_DATA PKG_STD.TREF; -- Рег. номер процедуры формирования
|
||||||
|
NEXSSERVICEFN_UPLOAD PKG_STD.TREF; -- Рег. номер функции обмена для выгрузки данных
|
||||||
|
NEXSSERVICEFN_SEND_MD PKG_STD.TREF; -- Рег. номер Функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_MDCB PKG_STD.TREF; -- Рег. номер call-back функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_RQ PKG_STD.TREF; -- Рег. номер функции обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB PKG_STD.TREF; -- Рег. номер call-back функции обмена для обработки внешней системой
|
||||||
|
begin
|
||||||
|
/* Проверим параметры */
|
||||||
|
if (NRN is null) then
|
||||||
|
P_EXCEPTION(0, 'Не указан идентификатор исправляемого класса оборудования выборки данных.');
|
||||||
|
end if;
|
||||||
|
if (SEQOBJKIND is null) then
|
||||||
|
P_EXCEPTION(0, 'Не указан класс оборудования.');
|
||||||
|
end if;
|
||||||
|
if (SDICMUNTS is null) then
|
||||||
|
P_EXCEPTION(0, 'Не указана единица измерения выборки.');
|
||||||
|
end if;
|
||||||
|
if (SUSERPROCS_DATA is null) then
|
||||||
|
P_EXCEPTION(0, 'Не указана процедура формирования данных выборки.');
|
||||||
|
end if;
|
||||||
|
if ((SEXSSERVICE_UPLOAD is null) or (SEXSSERVICEFN_UPLOAD is null)) then
|
||||||
|
P_EXCEPTION(0, 'Не указана функция обмена для выгрузки данных.');
|
||||||
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_MD is null) or (SEXSSERVICEFN_SEND_MD is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для передачи внешней системе.');
|
||||||
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_MDCB is null) or (SEXSSERVICEFN_SEND_MDCB is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для приёма обратной связи о передече внешней системе.');
|
||||||
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_RQ is null) or (SEXSSERVICEFN_SEND_RQ is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для обработки внешней системой.');
|
||||||
|
end if;
|
||||||
|
if ((SEXSSERVICE_SEND_RQCB is null) or (SEXSSERVICEFN_SEND_RQCB is null)) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Не указана функция обмена для приёма обратной связи об обработке внешней системой.');
|
||||||
|
end if;
|
||||||
|
/* Проверим права доступа */
|
||||||
|
UDO_PKG_EQUIPDS_BASE.UTL_ACCESS(STABLE => 'UDO_T_EQUIPDSCM', SACTION => 'UDO_EQUIPDSCM_UPDATE');
|
||||||
|
/* Разыменуем ссылки */
|
||||||
|
UDO_PKG_EQUIPDS_BASE.CM_JOINS(NCOMPANY => NCOMPANY,
|
||||||
|
SEQOBJKIND => SEQOBJKIND,
|
||||||
|
SDICMUNTS => SDICMUNTS,
|
||||||
|
SUSERPROCS_DATA => SUSERPROCS_DATA,
|
||||||
|
SEXSSERVICE_UPLOAD => SEXSSERVICE_UPLOAD,
|
||||||
|
SEXSSERVICEFN_UPLOAD => SEXSSERVICEFN_UPLOAD,
|
||||||
|
SEXSSERVICE_SEND_MD => SEXSSERVICE_SEND_MD,
|
||||||
|
SEXSSERVICEFN_SEND_MD => SEXSSERVICEFN_SEND_MD,
|
||||||
|
SEXSSERVICE_SEND_MDCB => SEXSSERVICE_SEND_MDCB,
|
||||||
|
SEXSSERVICEFN_SEND_MDCB => SEXSSERVICEFN_SEND_MDCB,
|
||||||
|
SEXSSERVICE_SEND_RQ => SEXSSERVICE_SEND_RQ,
|
||||||
|
SEXSSERVICEFN_SEND_RQ => SEXSSERVICEFN_SEND_RQ,
|
||||||
|
SEXSSERVICE_SEND_RQCB => SEXSSERVICE_SEND_RQCB,
|
||||||
|
SEXSSERVICEFN_SEND_RQCB => SEXSSERVICEFN_SEND_RQCB,
|
||||||
|
NEQOBJKIND => NEQOBJKIND,
|
||||||
|
NDICMUNTS => NDICMUNTS,
|
||||||
|
NUSERPROCS_DATA => NUSERPROCS_DATA,
|
||||||
|
NEXSSERVICEFN_UPLOAD => NEXSSERVICEFN_UPLOAD,
|
||||||
|
NEXSSERVICEFN_SEND_MD => NEXSSERVICEFN_SEND_MD,
|
||||||
|
NEXSSERVICEFN_SEND_MDCB => NEXSSERVICEFN_SEND_MDCB,
|
||||||
|
NEXSSERVICEFN_SEND_RQ => NEXSSERVICEFN_SEND_RQ,
|
||||||
|
NEXSSERVICEFN_SEND_RQCB => NEXSSERVICEFN_SEND_RQCB);
|
||||||
|
/* Исправляем запись */
|
||||||
|
UDO_PKG_EQUIPDS_BASE.CM_UPD(NRN => NRN,
|
||||||
|
NEQOBJKIND => NEQOBJKIND,
|
||||||
|
NDICMUNTS => NDICMUNTS,
|
||||||
|
NUSERPROCS_DATA => NUSERPROCS_DATA,
|
||||||
|
NEXSSERVICEFN_UPLOAD => NEXSSERVICEFN_UPLOAD,
|
||||||
|
NEXSSERVICEFN_SEND_MD => NEXSSERVICEFN_SEND_MD,
|
||||||
|
NEXSSERVICEFN_SEND_MDCB => NEXSSERVICEFN_SEND_MDCB,
|
||||||
|
NEXSSERVICEFN_SEND_RQ => NEXSSERVICEFN_SEND_RQ,
|
||||||
|
NEXSSERVICEFN_SEND_RQCB => NEXSSERVICEFN_SEND_RQCB);
|
||||||
|
end CM_UPD;
|
||||||
|
|
||||||
/* Клиентское удаление "Выборки данных оборудования (классы оборудования)" */
|
/* Клиентское удаление "Выборки данных оборудования (классы оборудования)" */
|
||||||
procedure CM_DEL
|
procedure CM_DEL
|
||||||
(
|
(
|
||||||
@ -760,11 +969,11 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
DDATASET_TS PKG_STD.TLDATE; -- Буфер для времени формирования данных выборки
|
DDATASET_TS PKG_STD.TLDATE; -- Буфер для времени формирования данных выборки
|
||||||
begin
|
begin
|
||||||
/* Проверим параметры */
|
/* Проверим параметры */
|
||||||
if (COALESCE(NDATASET_IDENT, 0) = 0) then
|
if (NDATASET_IDENT is null) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Пользовательская процедура формирования данных не вернула идентификатор буфера выборки.');
|
'Пользовательская процедура формирования данных не вернула идентификатор буфера выборки.');
|
||||||
end if;
|
end if;
|
||||||
if (COALESCE(NDATASET_CONFIG_IDENT, 0) = 0) then
|
if (NDATASET_CONFIG_IDENT is null) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'Пользовательская процедура формирования данных не вернула идентификатор буфера описания выборки.');
|
'Пользовательская процедура формирования данных не вернула идентификатор буфера описания выборки.');
|
||||||
end if;
|
end if;
|
||||||
@ -1056,6 +1265,7 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
into NCOUNT
|
into NCOUNT
|
||||||
from UDO_T_EQUIPDSCMFL T
|
from UDO_T_EQUIPDSCMFL T
|
||||||
where T.PRN = RCMML.PRN
|
where T.PRN = RCMML.PRN
|
||||||
|
and T.DATASET_ID = RCMML.DATASET_ID
|
||||||
and T.STATUS = UDO_PKG_EQUIPDS_BASE.NCMFL_STATUS_SENT;
|
and T.STATUS = UDO_PKG_EQUIPDS_BASE.NCMFL_STATUS_SENT;
|
||||||
exception
|
exception
|
||||||
when others then
|
when others then
|
||||||
@ -1064,7 +1274,7 @@ create or replace package body UDO_PKG_EQUIPDS as
|
|||||||
end;
|
end;
|
||||||
if (NCOUNT = 0) then
|
if (NCOUNT = 0) then
|
||||||
P_EXCEPTION(0,
|
P_EXCEPTION(0,
|
||||||
'У класса оборудования нет файлов данных, переданных фреймворку - обучение невозможно.');
|
'У выборки класса оборудования нет файлов данных, переданных фреймворку - обучение невозможно.');
|
||||||
end if;
|
end if;
|
||||||
/* Отправим запрос на обучение */
|
/* Отправим запрос на обучение */
|
||||||
UDO_PKG_EQUIPDS_DATAPROCESS.SEND_RQ(NCOMPANY => NCOMPANY, NEQUIPDSCMML => RCMML.RN);
|
UDO_PKG_EQUIPDS_DATAPROCESS.SEND_RQ(NCOMPANY => NCOMPANY, NEQUIPDSCMML => RCMML.RN);
|
||||||
|
@ -112,14 +112,20 @@ create or replace package UDO_PKG_EQUIPDS_BASE as
|
|||||||
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
|
SEXSSERVICEFN_SEND_RQCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NEQOBJKIND out number, -- Рег. номер класса оборудования
|
NEQOBJKIND out number, -- Рег. номер класса оборудования
|
||||||
NDICMUNTS out number, -- Рег. номер единицы измерения выборки
|
NDICMUNTS out number, -- Рег. номер единицы измерения выборки
|
||||||
NUSERPROCS_DATA out number, -- Рег. номер процедуры формирования
|
NUSERPROCS_DATA out number, -- Рег. номер процедуры формирования
|
||||||
NEXSSERVICEFN_UPLOAD out number, -- Рег. номер функции обмена для выгрузки данных
|
NEXSSERVICEFN_UPLOAD out number, -- Рег. номер функции обмена для выгрузки данных
|
||||||
NEXSSERVICEFN_SEND_MD out number, -- Рег. номер Функции обмена для передачи внешней системе
|
NEXSSERVICEFN_SEND_MD out number, -- Рег. номер Функции обмена для передачи внешней системе
|
||||||
NEXSSERVICEFN_SEND_RQ out number -- Рег. номер функции обмена для обработки внешней системой
|
NEXSSERVICEFN_SEND_MDCB out number, -- Рег. номер call-back функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_RQ out number, -- Рег. номер функции обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB out number -- Рег. номер call-back функции обмена для обработки внешней системой
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Базовое добавление "Выборки данных оборудования (классы оборудования)" */
|
/* Базовое добавление "Выборки данных оборудования (классы оборудования)" */
|
||||||
@ -131,7 +137,9 @@ create or replace package UDO_PKG_EQUIPDS_BASE as
|
|||||||
NUSERPROCS_DATA in number, -- Процедура формирования
|
NUSERPROCS_DATA in number, -- Процедура формирования
|
||||||
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
||||||
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_MDCB in number, -- Call-back функции обмена для передачи внешней системе
|
||||||
NEXSSERVICEFN_SEND_RQ in number, -- Функция обмена для обработки внешней системой
|
NEXSSERVICEFN_SEND_RQ in number, -- Функция обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB in number, -- Call-back функции обмена для обработки внешней системой
|
||||||
NRN out number -- Регистрационный номер
|
NRN out number -- Регистрационный номер
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -144,7 +152,9 @@ create or replace package UDO_PKG_EQUIPDS_BASE as
|
|||||||
NUSERPROCS_DATA in number, -- Процедура формирования
|
NUSERPROCS_DATA in number, -- Процедура формирования
|
||||||
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
||||||
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
||||||
NEXSSERVICEFN_SEND_RQ in number -- Функция обмена для обработки внешней системой
|
NEXSSERVICEFN_SEND_MDCB in number, -- Call-back функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_RQ in number, -- Функция обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB in number -- Call-back функции обмена для обработки внешней системой
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Базовое удаление "Выборки данных оборудования (классы оборудования)" */
|
/* Базовое удаление "Выборки данных оборудования (классы оборудования)" */
|
||||||
@ -516,22 +526,28 @@ create or replace package body UDO_PKG_EQUIPDS_BASE as
|
|||||||
/* Разыменование словарей "Выборки данных оборудования (классы оборудования)" */
|
/* Разыменование словарей "Выборки данных оборудования (классы оборудования)" */
|
||||||
procedure CM_JOINS
|
procedure CM_JOINS
|
||||||
(
|
(
|
||||||
NCOMPANY in number, -- Организация
|
NCOMPANY in number, -- Организация
|
||||||
SEQOBJKIND in varchar2, -- Класс оборудования
|
SEQOBJKIND in varchar2, -- Класс оборудования
|
||||||
SDICMUNTS in varchar2, -- Единица измерения выборки
|
SDICMUNTS in varchar2, -- Единица измерения выборки
|
||||||
SUSERPROCS_DATA in varchar2, -- Процедура формирования
|
SUSERPROCS_DATA in varchar2, -- Процедура формирования
|
||||||
SEXSSERVICE_UPLOAD in varchar2, -- Сервис обмена для выгрузки данных
|
SEXSSERVICE_UPLOAD in varchar2, -- Сервис обмена для выгрузки данных
|
||||||
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
SEXSSERVICEFN_UPLOAD in varchar2, -- Функция обмена для выгрузки данных
|
||||||
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
SEXSSERVICE_SEND_MD in varchar2, -- Сервис обмена для передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
SEXSSERVICEFN_SEND_MD in varchar2, -- Функция обмена для передачи внешней системе
|
||||||
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
SEXSSERVICE_SEND_MDCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
SEXSSERVICEFN_SEND_MDCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами передачи внешней системе
|
||||||
NEQOBJKIND out number, -- Рег. номер класса оборудования
|
SEXSSERVICE_SEND_RQ in varchar2, -- Сервис обмена для обработки внешней системой
|
||||||
NDICMUNTS out number, -- Рег. номер единицы измерения выборки
|
SEXSSERVICEFN_SEND_RQ in varchar2, -- Функция обмена для обработки внешней системой
|
||||||
NUSERPROCS_DATA out number, -- Рег. номер процедуры формирования
|
SEXSSERVICE_SEND_RQCB in varchar2, -- Сервис обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NEXSSERVICEFN_UPLOAD out number, -- Рег. номер функции обмена для выгрузки данных
|
SEXSSERVICEFN_SEND_RQCB in varchar2, -- Функция сервиса обмена для приёма Call-back запросов с результатами обработки внешней системой
|
||||||
NEXSSERVICEFN_SEND_MD out number, -- Рег. номер Функции обмена для передачи внешней системе
|
NEQOBJKIND out number, -- Рег. номер класса оборудования
|
||||||
NEXSSERVICEFN_SEND_RQ out number -- Рег. номер функции обмена для обработки внешней системой
|
NDICMUNTS out number, -- Рег. номер единицы измерения выборки
|
||||||
|
NUSERPROCS_DATA out number, -- Рег. номер процедуры формирования
|
||||||
|
NEXSSERVICEFN_UPLOAD out number, -- Рег. номер функции обмена для выгрузки данных
|
||||||
|
NEXSSERVICEFN_SEND_MD out number, -- Рег. номер Функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_MDCB out number, -- Рег. номер call-back функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_RQ out number, -- Рег. номер функции обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB out number -- Рег. номер call-back функции обмена для обработки внешней системой
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
NEXSSERVICE PKG_STD.TREF; -- Рег. номер сервиса обмена
|
NEXSSERVICE PKG_STD.TREF; -- Рег. номер сервиса обмена
|
||||||
@ -568,6 +584,13 @@ create or replace package body UDO_PKG_EQUIPDS_BASE as
|
|||||||
NEXSSERVICE => NEXSSERVICE,
|
NEXSSERVICE => NEXSSERVICE,
|
||||||
SCODE => SEXSSERVICEFN_SEND_MD,
|
SCODE => SEXSSERVICEFN_SEND_MD,
|
||||||
NRN => NEXSSERVICEFN_SEND_MD);
|
NRN => NEXSSERVICEFN_SEND_MD);
|
||||||
|
/* Call-back функции обмена для передачи внешней системе */
|
||||||
|
FIND_EXSSERVICE_CODE(NFLAG_SMART => 0, NFLAG_OPTION => 0, SCODE => SEXSSERVICE_SEND_MDCB, NRN => NEXSSERVICE);
|
||||||
|
FIND_EXSSERVICEFN_CODE(NFLAG_SMART => 0,
|
||||||
|
NFLAG_OPTION => 0,
|
||||||
|
NEXSSERVICE => NEXSSERVICE,
|
||||||
|
SCODE => SEXSSERVICEFN_SEND_MDCB,
|
||||||
|
NRN => NEXSSERVICEFN_SEND_MDCB);
|
||||||
/* Функция обмена для обработки внешней системой */
|
/* Функция обмена для обработки внешней системой */
|
||||||
FIND_EXSSERVICE_CODE(NFLAG_SMART => 0, NFLAG_OPTION => 0, SCODE => SEXSSERVICE_SEND_RQ, NRN => NEXSSERVICE);
|
FIND_EXSSERVICE_CODE(NFLAG_SMART => 0, NFLAG_OPTION => 0, SCODE => SEXSSERVICE_SEND_RQ, NRN => NEXSSERVICE);
|
||||||
FIND_EXSSERVICEFN_CODE(NFLAG_SMART => 0,
|
FIND_EXSSERVICEFN_CODE(NFLAG_SMART => 0,
|
||||||
@ -575,25 +598,145 @@ create or replace package body UDO_PKG_EQUIPDS_BASE as
|
|||||||
NEXSSERVICE => NEXSSERVICE,
|
NEXSSERVICE => NEXSSERVICE,
|
||||||
SCODE => SEXSSERVICEFN_SEND_RQ,
|
SCODE => SEXSSERVICEFN_SEND_RQ,
|
||||||
NRN => NEXSSERVICEFN_SEND_RQ);
|
NRN => NEXSSERVICEFN_SEND_RQ);
|
||||||
|
/* Call-back функции обмена для обработки внешней системой */
|
||||||
|
FIND_EXSSERVICE_CODE(NFLAG_SMART => 0, NFLAG_OPTION => 0, SCODE => SEXSSERVICE_SEND_RQCB, NRN => NEXSSERVICE);
|
||||||
|
FIND_EXSSERVICEFN_CODE(NFLAG_SMART => 0,
|
||||||
|
NFLAG_OPTION => 0,
|
||||||
|
NEXSSERVICE => NEXSSERVICE,
|
||||||
|
SCODE => SEXSSERVICEFN_SEND_RQCB,
|
||||||
|
NRN => NEXSSERVICEFN_SEND_RQCB);
|
||||||
end CM_JOINS;
|
end CM_JOINS;
|
||||||
|
|
||||||
|
/* Базовые проверки целостности и корректности "Выборки данных оборудования (классы оборудования)" */
|
||||||
|
procedure CM_CHECK
|
||||||
|
(
|
||||||
|
SMODE in varchar2, -- 'I' - добавление, 'U' - исправление, 'D' - удаление
|
||||||
|
RREC in UDO_T_EQUIPDSCM%rowtype -- Запись с новыми значения класса оборудования выборки данных
|
||||||
|
)
|
||||||
|
is
|
||||||
|
/* Локальные переменные */
|
||||||
|
RREC_OLD UDO_T_EQUIPDSCM%rowtype; -- Предыдущие значения записи класса оборудования выборки данных
|
||||||
|
|
||||||
|
/* Считывание типа сервиса обмена */
|
||||||
|
function EXSSERVICE_TYPE
|
||||||
|
(
|
||||||
|
NEXSSERVICEFN in number -- Рег. номер функции обмена
|
||||||
|
) return number -- Тип сервиса обмена (см. константы PKG_EXS.NSRV_TYPE_*)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
/* Найдем тип серсива обмена */
|
||||||
|
for C in (select S.SRV_TYPE
|
||||||
|
from EXSSERVICE S,
|
||||||
|
EXSSERVICEFN F
|
||||||
|
where F.RN = NEXSSERVICEFN
|
||||||
|
and F.PRN = S.RN)
|
||||||
|
loop
|
||||||
|
/* Нашли - вернём */
|
||||||
|
return C.SRV_TYPE;
|
||||||
|
end loop;
|
||||||
|
/* Ничего не нашли */
|
||||||
|
return null;
|
||||||
|
end EXSSERVICE_TYPE;
|
||||||
|
|
||||||
|
/* Проверка типов сервисов обмена */
|
||||||
|
procedure EXSSERVICE_TYPE_CHECK
|
||||||
|
(
|
||||||
|
RREC in UDO_T_EQUIPDSCM%rowtype -- Проверяемая запись
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
if (EXSSERVICE_TYPE(NEXSSERVICEFN => RREC.EXSSERVICEFN_UPLOAD) <> PKG_EXS.NSRV_TYPE_SEND) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Функция обмена для выгрузки данных должна иметь тип "Отправка сообщений".');
|
||||||
|
end if;
|
||||||
|
if (EXSSERVICE_TYPE(NEXSSERVICEFN => RREC.EXSSERVICEFN_SEND_MD) <> PKG_EXS.NSRV_TYPE_SEND) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Функция обмена для передачи данных внешней системе должна иметь тип "Отправка сообщений".');
|
||||||
|
end if;
|
||||||
|
if (EXSSERVICE_TYPE(NEXSSERVICEFN => RREC.EXSSERVICEFN_SEND_MDCB) <> PKG_EXS.NSRV_TYPE_RECIVE) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Функция обмена для обратной связи о передаче данных внешней системе должна иметь тип "Приём сообщений".');
|
||||||
|
end if;
|
||||||
|
if (EXSSERVICE_TYPE(NEXSSERVICEFN => RREC.EXSSERVICEFN_SEND_RQ) <> PKG_EXS.NSRV_TYPE_SEND) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Функция обмена для обработки внешней системой должна иметь тип "Отправка сообщений".');
|
||||||
|
end if;
|
||||||
|
if (EXSSERVICE_TYPE(NEXSSERVICEFN => RREC.EXSSERVICEFN_SEND_RQCB) <> PKG_EXS.NSRV_TYPE_RECIVE) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Функция обмена для обратной связи об обработке внешней системой должна иметь тип "Приём сообщений".');
|
||||||
|
end if;
|
||||||
|
end EXSSERVICE_TYPE_CHECK;
|
||||||
|
begin
|
||||||
|
/* Работаем от режима */
|
||||||
|
case SMODE
|
||||||
|
/* Добавление */
|
||||||
|
when 'I' then
|
||||||
|
begin
|
||||||
|
/* Проверим корректность типов серсовисов обмена */
|
||||||
|
EXSSERVICE_TYPE_CHECK(RREC => RREC);
|
||||||
|
end;
|
||||||
|
/* Исправление */
|
||||||
|
when 'U' then
|
||||||
|
begin
|
||||||
|
/* Считывание текущей записи */
|
||||||
|
RREC_OLD := CM_GET(NFLAG_SMART => 0, NRN => RREC.RN);
|
||||||
|
/* Если изменяются кличевые атрибуты, влияющие на выборку */
|
||||||
|
if ((RREC.EQOBJKIND <> RREC_OLD.EQOBJKIND) or (RREC.DICMUNTS <> RREC_OLD.DICMUNTS)) then
|
||||||
|
/* Проверим отсутствие файлов данных */
|
||||||
|
for C in (select T.RN from UDO_T_EQUIPDSCMFL T where T.PRN = RREC.RN)
|
||||||
|
loop
|
||||||
|
/* Они есть - изменения недопустимы */
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Изменение ключевых атрибутов ("Класс оборудования", "Единица измерения выборки") недопустимо - для данного класса оборудования уже зарегистрированы файлы данных.');
|
||||||
|
end loop;
|
||||||
|
end if;
|
||||||
|
/* Проверим корректность типов серсовисов обмена */
|
||||||
|
EXSSERVICE_TYPE_CHECK(RREC => RREC);
|
||||||
|
end;
|
||||||
|
/* Удаление */
|
||||||
|
when 'D' then
|
||||||
|
begin
|
||||||
|
/* Специальных проверок нет, проверки на возможность удаления файлов и моделей класса оборудования запустятся автоматически при их удалении по связям */
|
||||||
|
null;
|
||||||
|
end;
|
||||||
|
/* Неизвестный режим работы */
|
||||||
|
else
|
||||||
|
P_EXCEPTION(0, 'Режим проверки "%s" не поддерживается.', SMODE);
|
||||||
|
end case;
|
||||||
|
end CM_CHECK;
|
||||||
|
|
||||||
/* Базовое добавление "Выборки данных оборудования (классы оборудования)" */
|
/* Базовое добавление "Выборки данных оборудования (классы оборудования)" */
|
||||||
procedure CM_INS
|
procedure CM_INS
|
||||||
(
|
(
|
||||||
NPRN in number, -- Родитель
|
NPRN in number, -- Родитель
|
||||||
NEQOBJKIND in number, -- Класс оборудования
|
NEQOBJKIND in number, -- Класс оборудования
|
||||||
NDICMUNTS in number, -- Единица измерения выборки
|
NDICMUNTS in number, -- Единица измерения выборки
|
||||||
NUSERPROCS_DATA in number, -- Процедура формирования
|
NUSERPROCS_DATA in number, -- Процедура формирования
|
||||||
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
||||||
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
||||||
NEXSSERVICEFN_SEND_RQ in number, -- Функция обмена для обработки внешней системой
|
NEXSSERVICEFN_SEND_MDCB in number, -- Call-back функции обмена для передачи внешней системе
|
||||||
NRN out number -- Регистрационный номер
|
NEXSSERVICEFN_SEND_RQ in number, -- Функция обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB in number, -- Call-back функции обмена для обработки внешней системой
|
||||||
|
NRN out number -- Регистрационный номер
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
|
RREC UDO_T_EQUIPDSCM%rowtype; -- Запись с новыми значениями для проверки
|
||||||
begin
|
begin
|
||||||
|
/* Соберём запись */
|
||||||
|
RREC.PRN := NPRN;
|
||||||
|
RREC.EQOBJKIND := NEQOBJKIND;
|
||||||
|
RREC.DICMUNTS := NDICMUNTS;
|
||||||
|
RREC.USERPROCS_DATA := NUSERPROCS_DATA;
|
||||||
|
RREC.EXSSERVICEFN_UPLOAD := NEXSSERVICEFN_UPLOAD;
|
||||||
|
RREC.EXSSERVICEFN_SEND_MD := NEXSSERVICEFN_SEND_MD;
|
||||||
|
RREC.EXSSERVICEFN_SEND_MDCB := NEXSSERVICEFN_SEND_MDCB;
|
||||||
|
RREC.EXSSERVICEFN_SEND_RQ := NEXSSERVICEFN_SEND_RQ;
|
||||||
|
RREC.EXSSERVICEFN_SEND_RQCB := NEXSSERVICEFN_SEND_RQCB;
|
||||||
|
/* Проверим возможность исполнения */
|
||||||
|
CM_CHECK(SMODE => 'I', RREC => RREC);
|
||||||
/* Формируем рег. номер */
|
/* Формируем рег. номер */
|
||||||
NRN := GEN_ID();
|
NRN := GEN_ID();
|
||||||
/* Добавляем запись */
|
/* Добавляем запись */
|
||||||
insert into UDO_T_EQUIPDSCM
|
insert into UDO_T_EQUIPDSCM
|
||||||
(RN,
|
(RN,
|
||||||
PRN,
|
PRN,
|
||||||
@ -603,7 +746,9 @@ create or replace package body UDO_PKG_EQUIPDS_BASE as
|
|||||||
USERPROCS_DATA,
|
USERPROCS_DATA,
|
||||||
EXSSERVICEFN_UPLOAD,
|
EXSSERVICEFN_UPLOAD,
|
||||||
EXSSERVICEFN_SEND_MD,
|
EXSSERVICEFN_SEND_MD,
|
||||||
EXSSERVICEFN_SEND_RQ)
|
EXSSERVICEFN_SEND_MDCB,
|
||||||
|
EXSSERVICEFN_SEND_RQ,
|
||||||
|
EXSSERVICEFN_SEND_RQCB)
|
||||||
values
|
values
|
||||||
(NRN,
|
(NRN,
|
||||||
NPRN,
|
NPRN,
|
||||||
@ -613,40 +758,64 @@ create or replace package body UDO_PKG_EQUIPDS_BASE as
|
|||||||
NUSERPROCS_DATA,
|
NUSERPROCS_DATA,
|
||||||
NEXSSERVICEFN_UPLOAD,
|
NEXSSERVICEFN_UPLOAD,
|
||||||
NEXSSERVICEFN_SEND_MD,
|
NEXSSERVICEFN_SEND_MD,
|
||||||
NEXSSERVICEFN_SEND_RQ);
|
NEXSSERVICEFN_SEND_MDCB,
|
||||||
|
NEXSSERVICEFN_SEND_RQ,
|
||||||
|
NEXSSERVICEFN_SEND_RQCB);
|
||||||
end CM_INS;
|
end CM_INS;
|
||||||
|
|
||||||
/* Базовое исправление "Выборки данных оборудования (классы оборудования)" */
|
/* Базовое исправление "Выборки данных оборудования (классы оборудования)" */
|
||||||
procedure CM_UPD
|
procedure CM_UPD
|
||||||
(
|
(
|
||||||
NRN in number, -- Регистрационный номер
|
NRN in number, -- Регистрационный номер
|
||||||
NEQOBJKIND in number, -- Класс оборудования
|
NEQOBJKIND in number, -- Класс оборудования
|
||||||
NDICMUNTS in number, -- Единица измерения выборки
|
NDICMUNTS in number, -- Единица измерения выборки
|
||||||
NUSERPROCS_DATA in number, -- Процедура формирования
|
NUSERPROCS_DATA in number, -- Процедура формирования
|
||||||
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
NEXSSERVICEFN_UPLOAD in number, -- Функция обмена для выгрузки данных
|
||||||
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
NEXSSERVICEFN_SEND_MD in number, -- Функция обмена для передачи внешней системе
|
||||||
NEXSSERVICEFN_SEND_RQ in number -- Функция обмена для обработки внешней системой
|
NEXSSERVICEFN_SEND_MDCB in number, -- Call-back функции обмена для передачи внешней системе
|
||||||
|
NEXSSERVICEFN_SEND_RQ in number, -- Функция обмена для обработки внешней системой
|
||||||
|
NEXSSERVICEFN_SEND_RQCB in number -- Call-back функции обмена для обработки внешней системой
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
|
RREC UDO_T_EQUIPDSCM%rowtype; -- Запись с новыми значениями для проверки
|
||||||
begin
|
begin
|
||||||
|
/* Соберём запись */
|
||||||
|
RREC := CM_GET(NFLAG_SMART => 0, NRN => NRN);
|
||||||
|
RREC.EQOBJKIND := NEQOBJKIND;
|
||||||
|
RREC.DICMUNTS := NDICMUNTS;
|
||||||
|
RREC.USERPROCS_DATA := NUSERPROCS_DATA;
|
||||||
|
RREC.EXSSERVICEFN_UPLOAD := NEXSSERVICEFN_UPLOAD;
|
||||||
|
RREC.EXSSERVICEFN_SEND_MD := NEXSSERVICEFN_SEND_MD;
|
||||||
|
RREC.EXSSERVICEFN_SEND_MDCB := NEXSSERVICEFN_SEND_MDCB;
|
||||||
|
RREC.EXSSERVICEFN_SEND_RQ := NEXSSERVICEFN_SEND_RQ;
|
||||||
|
RREC.EXSSERVICEFN_SEND_RQCB := NEXSSERVICEFN_SEND_RQCB;
|
||||||
|
/* Проверим возможность исполнения */
|
||||||
|
CM_CHECK(SMODE => 'U', RREC => RREC);
|
||||||
/* Исправим данные */
|
/* Исправим данные */
|
||||||
update UDO_T_EQUIPDSCM T
|
update UDO_T_EQUIPDSCM T
|
||||||
set T.EQOBJKIND = NEQOBJKIND,
|
set T.EQOBJKIND = NEQOBJKIND,
|
||||||
T.DICMUNTS = NDICMUNTS,
|
T.DICMUNTS = NDICMUNTS,
|
||||||
T.USERPROCS_DATA = NUSERPROCS_DATA,
|
T.USERPROCS_DATA = NUSERPROCS_DATA,
|
||||||
T.EXSSERVICEFN_UPLOAD = NEXSSERVICEFN_UPLOAD,
|
T.EXSSERVICEFN_UPLOAD = NEXSSERVICEFN_UPLOAD,
|
||||||
T.EXSSERVICEFN_SEND_MD = NEXSSERVICEFN_SEND_MD,
|
T.EXSSERVICEFN_SEND_MD = NEXSSERVICEFN_SEND_MD,
|
||||||
T.EXSSERVICEFN_SEND_RQ = NEXSSERVICEFN_SEND_RQ
|
T.EXSSERVICEFN_SEND_MDCB = NEXSSERVICEFN_SEND_MDCB,
|
||||||
|
T.EXSSERVICEFN_SEND_RQ = NEXSSERVICEFN_SEND_RQ,
|
||||||
|
T.EXSSERVICEFN_SEND_RQCB = NEXSSERVICEFN_SEND_RQCB
|
||||||
where T.RN = NRN;
|
where T.RN = NRN;
|
||||||
end CM_UPD;
|
end CM_UPD;
|
||||||
|
|
||||||
/* Базовое удаление "Выборки данных оборудования (классы оборудования)" */
|
/* Базовое удаление "Выборки данных оборудования (классы оборудования)" */
|
||||||
procedure CM_DEL
|
procedure CM_DEL
|
||||||
(
|
(
|
||||||
NRN in number -- Регистрационный номер
|
NRN in number -- Регистрационный номер
|
||||||
)
|
)
|
||||||
is
|
is
|
||||||
|
RREC UDO_T_EQUIPDSCM%rowtype; -- Запись с новыми значениями для проверки
|
||||||
begin
|
begin
|
||||||
|
/* Соберём запись */
|
||||||
|
RREC := CM_GET(NFLAG_SMART => 0, NRN => NRN);
|
||||||
|
/* Проверим возможность исполнения */
|
||||||
|
CM_CHECK(SMODE => 'D', RREC => RREC);
|
||||||
/* Удалим файлы */
|
/* Удалим файлы */
|
||||||
for C in (select T.RN from UDO_T_EQUIPDSCMFL T where T.PRN = NRN)
|
for C in (select T.RN from UDO_T_EQUIPDSCMFL T where T.PRN = NRN)
|
||||||
loop
|
loop
|
||||||
|
@ -17,8 +17,12 @@ create table UDO_T_EQUIPDSCM
|
|||||||
EXSSERVICEFN_UPLOAD number(17) not null,
|
EXSSERVICEFN_UPLOAD number(17) not null,
|
||||||
/* Функция обмена для передачи внешней системе */
|
/* Функция обмена для передачи внешней системе */
|
||||||
EXSSERVICEFN_SEND_MD number(17) not null,
|
EXSSERVICEFN_SEND_MD number(17) not null,
|
||||||
|
/* Call-back функции обмена для передачи внешней системе */
|
||||||
|
EXSSERVICEFN_SEND_MDCB number(17) not null,
|
||||||
/* Функция обмена для обработки внешней системой */
|
/* Функция обмена для обработки внешней системой */
|
||||||
EXSSERVICEFN_SEND_RQ number(17) not null,
|
EXSSERVICEFN_SEND_RQ number(17) not null,
|
||||||
|
/* Call-back функции обмена для обработки внешней системой */
|
||||||
|
EXSSERVICEFN_SEND_RQCB number(17) not null,
|
||||||
/* Ключи */
|
/* Ключи */
|
||||||
constraint UDO_C_EQUIPDSCM_RN_PK primary key (RN),
|
constraint UDO_C_EQUIPDSCM_RN_PK primary key (RN),
|
||||||
constraint UDO_C_EQUIPDSCM_PRN_FK foreign key (PRN) references UDO_T_EQUIPDS(RN),
|
constraint UDO_C_EQUIPDSCM_PRN_FK foreign key (PRN) references UDO_T_EQUIPDS(RN),
|
||||||
@ -27,6 +31,8 @@ create table UDO_T_EQUIPDSCM
|
|||||||
constraint UDO_C_EQUIPDSCM_USRPD_FK foreign key (USERPROCS_DATA) references USERPROCS(RN),
|
constraint UDO_C_EQUIPDSCM_USRPD_FK foreign key (USERPROCS_DATA) references USERPROCS(RN),
|
||||||
constraint UDO_C_EQUIPDSCM_EXSFNUPLD_FK foreign key (EXSSERVICEFN_UPLOAD) references EXSSERVICEFN(RN),
|
constraint UDO_C_EQUIPDSCM_EXSFNUPLD_FK foreign key (EXSSERVICEFN_UPLOAD) references EXSSERVICEFN(RN),
|
||||||
constraint UDO_C_EQUIPDSCM_EXSFNSDMD_FK foreign key (EXSSERVICEFN_SEND_MD) references EXSSERVICEFN(RN),
|
constraint UDO_C_EQUIPDSCM_EXSFNSDMD_FK foreign key (EXSSERVICEFN_SEND_MD) references EXSSERVICEFN(RN),
|
||||||
|
constraint UDO_C_EQUIPDSCM_EXSFNSDMDCB_FK foreign key (EXSSERVICEFN_SEND_MDCB) references EXSSERVICEFN(RN),
|
||||||
constraint UDO_C_EQUIPDSCM_EXSFNSDRQ_FK foreign key (EXSSERVICEFN_SEND_RQ) references EXSSERVICEFN(RN),
|
constraint UDO_C_EQUIPDSCM_EXSFNSDRQ_FK foreign key (EXSSERVICEFN_SEND_RQ) references EXSSERVICEFN(RN),
|
||||||
|
constraint UDO_C_EQUIPDSCM_EXSFNSDRQCB_FK foreign key (EXSSERVICEFN_SEND_RQCB) references EXSSERVICEFN(RN),
|
||||||
constraint UDO_C_EQUIPDSCM_UN unique (PRN, EQOBJKIND)
|
constraint UDO_C_EQUIPDSCM_UN unique (PRN, EQOBJKIND)
|
||||||
);
|
);
|
||||||
|
@ -47,6 +47,7 @@ const REFRESH_INITIAL = {
|
|||||||
const DIALOGS_INITIAL = {
|
const DIALOGS_INITIAL = {
|
||||||
dataSelectionIU: false,
|
dataSelectionIU: false,
|
||||||
dataSelectionClassMachineIU: false,
|
dataSelectionClassMachineIU: false,
|
||||||
|
dataSelectionClassMachine: null,
|
||||||
dataSelectionClassMachineFileSendMD: false,
|
dataSelectionClassMachineFileSendMD: false,
|
||||||
dataSelectionClassMachineModelIU: false
|
dataSelectionClassMachineModelIU: false
|
||||||
};
|
};
|
||||||
@ -139,7 +140,13 @@ const AdminTab = ({ dataSelection = DS_RN_DEFAULT, dataSelectionClassMachine = n
|
|||||||
const handleDataSelectionClassMachineClick = value => setDataSelectionClassMachine(value);
|
const handleDataSelectionClassMachineClick = value => setDataSelectionClassMachine(value);
|
||||||
|
|
||||||
//При нажатии на "Добавить класс оборудования"
|
//При нажатии на "Добавить класс оборудования"
|
||||||
const handleAddEquipDataSelectionClassMachine = () => setDialogs(pv => ({ ...pv, dataSelectionClassMachineIU: true }));
|
const handleAddEquipDataSelectionClassMachine = () =>
|
||||||
|
setDialogs(pv => ({ ...pv, dataSelectionClassMachineIU: true, dataSelectionClassMachine: null }));
|
||||||
|
|
||||||
|
//При нажатии на "Изменить класс оборудования"
|
||||||
|
const handleEditEquipDataSelectionClassMachine = equipDSCM => {
|
||||||
|
setDialogs(pv => ({ ...pv, dataSelectionClassMachineIU: true, dataSelectionClassMachine: equipDSCM }));
|
||||||
|
};
|
||||||
|
|
||||||
//При нажатии на "Удалить класс оборудования"
|
//При нажатии на "Удалить класс оборудования"
|
||||||
const handleDeleteEquipDataSelectionClassMachine = async equipDSCM => {
|
const handleDeleteEquipDataSelectionClassMachine = async equipDSCM => {
|
||||||
@ -153,24 +160,39 @@ const AdminTab = ({ dataSelection = DS_RN_DEFAULT, dataSelectionClassMachine = n
|
|||||||
|
|
||||||
//При сохранении диалога IU класса оборудования
|
//При сохранении диалога IU класса оборудования
|
||||||
const handleEquipDataSelectionClassMachineIUOk = async values => {
|
const handleEquipDataSelectionClassMachineIUOk = async values => {
|
||||||
const data = await executeStored({
|
let dataSelectionClassMachine = null;
|
||||||
stored: "UDO_PKG_EQUIPDS.CM_INS",
|
const args = {
|
||||||
args: {
|
SEQOBJKIND: values.eqobjKind,
|
||||||
NPRN: equipDataSelection,
|
SDICMUNTS: values.measureUnit,
|
||||||
SEQOBJKIND: values.eqobjKind,
|
SUSERPROCS_DATA: values.userprocsData,
|
||||||
SDICMUNTS: values.measureUnit,
|
SEXSSERVICE_UPLOAD: values.exsServiceUpload,
|
||||||
SUSERPROCS_DATA: values.userprocsData,
|
SEXSSERVICEFN_UPLOAD: values.exsServiceFnUpload,
|
||||||
SEXSSERVICE_UPLOAD: values.exsServiceUpload,
|
SEXSSERVICE_SEND_MD: values.exsServiceSendMd,
|
||||||
SEXSSERVICEFN_UPLOAD: values.exsServiceFnUpload,
|
SEXSSERVICEFN_SEND_MD: values.exsServiceFnSendMd,
|
||||||
SEXSSERVICE_SEND_MD: values.exsServiceSendMd,
|
SEXSSERVICE_SEND_MDCB: values.exsServiceSendMdCb,
|
||||||
SEXSSERVICEFN_SEND_MD: values.exsServiceFnSendMd,
|
SEXSSERVICEFN_SEND_MDCB: values.exsServiceFnSendMdCb,
|
||||||
SEXSSERVICE_SEND_RQ: values.exsServiceSendRq,
|
SEXSSERVICE_SEND_RQ: values.exsServiceSendRq,
|
||||||
SEXSSERVICEFN_SEND_RQ: values.exsServiceFnSendRq
|
SEXSSERVICEFN_SEND_RQ: values.exsServiceFnSendRq,
|
||||||
}
|
SEXSSERVICE_SEND_RQCB: values.exsServiceSendRqCb,
|
||||||
});
|
SEXSSERVICEFN_SEND_RQCB: values.exsServiceFnSendRqCb
|
||||||
setDialogs(pv => ({ ...pv, dataSelectionClassMachineIU: false }));
|
};
|
||||||
|
if (dialogs.dataSelectionClassMachine) {
|
||||||
|
await executeStored({
|
||||||
|
stored: "UDO_PKG_EQUIPDS.CM_UPD",
|
||||||
|
args: { NRN: dialogs.dataSelectionClassMachine, ...args }
|
||||||
|
});
|
||||||
|
dataSelectionClassMachine = dialogs.dataSelectionClassMachine;
|
||||||
|
setRefresh(pv => ({ ...pv, dataSelectionClassMachineCard: pv.dataSelectionClassMachineCard + 1 }));
|
||||||
|
} else {
|
||||||
|
const data = await executeStored({
|
||||||
|
stored: "UDO_PKG_EQUIPDS.CM_INS",
|
||||||
|
args: { NPRN: equipDataSelection, ...args }
|
||||||
|
});
|
||||||
|
dataSelectionClassMachine = data.NRN;
|
||||||
|
}
|
||||||
|
setDialogs(pv => ({ ...pv, dataSelectionClassMachineIU: false, dataSelectionClassMachine: null }));
|
||||||
setRefresh(pv => ({ ...pv, dataSelectionClassMachine: pv.dataSelectionClassMachine + 1 }));
|
setRefresh(pv => ({ ...pv, dataSelectionClassMachine: pv.dataSelectionClassMachine + 1 }));
|
||||||
setDataSelectionClassMachine(data.NRN);
|
setDataSelectionClassMachine(dataSelectionClassMachine);
|
||||||
};
|
};
|
||||||
|
|
||||||
//Отработка результатов выполнения пользовательской процедуры формирования данных выборки
|
//Отработка результатов выполнения пользовательской процедуры формирования данных выборки
|
||||||
@ -187,6 +209,10 @@ const AdminTab = ({ dataSelection = DS_RN_DEFAULT, dataSelectionClassMachine = n
|
|||||||
setRefresh(pv => ({ ...pv, dataSelectionClassMachineFilesList: pv.dataSelectionClassMachineFilesList + 1 }));
|
setRefresh(pv => ({ ...pv, dataSelectionClassMachineFilesList: pv.dataSelectionClassMachineFilesList + 1 }));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
//При нажатии "Обновить" в списке файлов карточки класса оборудования
|
||||||
|
const handleRefreshEquipDataSelectionClassMachineFiles = () =>
|
||||||
|
setRefresh(pv => ({ ...pv, dataSelectionClassMachineFilesList: pv.dataSelectionClassMachineFilesList + 1 }));
|
||||||
|
|
||||||
//При нажатии "Сформировать" в списке файлов карточки класса оборудования
|
//При нажатии "Сформировать" в списке файлов карточки класса оборудования
|
||||||
const handleMakeEquipDataSelectionClassMachineFiles = (equipDSCM, procedure, clear) => {
|
const handleMakeEquipDataSelectionClassMachineFiles = (equipDSCM, procedure, clear) => {
|
||||||
pOnlineUserProcedure({
|
pOnlineUserProcedure({
|
||||||
@ -219,6 +245,10 @@ const AdminTab = ({ dataSelection = DS_RN_DEFAULT, dataSelectionClassMachine = n
|
|||||||
//При нажатии "Передать внешней системе" в списке файлов карточки класса оборудования
|
//При нажатии "Передать внешней системе" в списке файлов карточки класса оборудования
|
||||||
const handleSendMdEquipDataSelectionClassMachineFiles = () => setDialogs(pv => ({ ...pv, dataSelectionClassMachineFileSendMD: true }));
|
const handleSendMdEquipDataSelectionClassMachineFiles = () => setDialogs(pv => ({ ...pv, dataSelectionClassMachineFileSendMD: true }));
|
||||||
|
|
||||||
|
//При нажатии на "Обновить модели класса оборудования"
|
||||||
|
const handleRefreshEquipDataSelectionClassMachineModel = () =>
|
||||||
|
setRefresh(pv => ({ ...pv, dataSelectionClassMachineModelsList: pv.dataSelectionClassMachineModelsList + 1 }));
|
||||||
|
|
||||||
//При нажатии на "Добавить модель класса оборудования"
|
//При нажатии на "Добавить модель класса оборудования"
|
||||||
const handleAddEquipDataSelectionClassMachineModel = () => setDialogs(pv => ({ ...pv, dataSelectionClassMachineModelIU: true }));
|
const handleAddEquipDataSelectionClassMachineModel = () => setDialogs(pv => ({ ...pv, dataSelectionClassMachineModelIU: true }));
|
||||||
|
|
||||||
@ -285,6 +315,7 @@ const AdminTab = ({ dataSelection = DS_RN_DEFAULT, dataSelectionClassMachine = n
|
|||||||
) : null}
|
) : null}
|
||||||
{dialogs.dataSelectionClassMachineIU ? (
|
{dialogs.dataSelectionClassMachineIU ? (
|
||||||
<EquipDataSelectionClassMachineIU
|
<EquipDataSelectionClassMachineIU
|
||||||
|
classMachine={dialogs.dataSelectionClassMachine}
|
||||||
onOk={handleEquipDataSelectionClassMachineIUOk}
|
onOk={handleEquipDataSelectionClassMachineIUOk}
|
||||||
onCancel={handleEquipDataSelectionClassMachineIUCancel}
|
onCancel={handleEquipDataSelectionClassMachineIUCancel}
|
||||||
/>
|
/>
|
||||||
@ -351,11 +382,14 @@ const AdminTab = ({ dataSelection = DS_RN_DEFAULT, dataSelectionClassMachine = n
|
|||||||
card={equipDataSelectionClassMachineCard}
|
card={equipDataSelectionClassMachineCard}
|
||||||
filesList={equipDataSelectionClassMachineFilesList}
|
filesList={equipDataSelectionClassMachineFilesList}
|
||||||
modelsList={equipDataSelectionClassMachineModelsList}
|
modelsList={equipDataSelectionClassMachineModelsList}
|
||||||
|
onCardEdit={handleEditEquipDataSelectionClassMachine}
|
||||||
onCardDelete={handleDeleteEquipDataSelectionClassMachine}
|
onCardDelete={handleDeleteEquipDataSelectionClassMachine}
|
||||||
|
onClassMachineFilesRefresh={handleRefreshEquipDataSelectionClassMachineFiles}
|
||||||
onClassMachineFilesMake={handleMakeEquipDataSelectionClassMachineFiles}
|
onClassMachineFilesMake={handleMakeEquipDataSelectionClassMachineFiles}
|
||||||
onClassMachineFilesDelete={handleDeleteEquipDataSelectionClassMachineFiles}
|
onClassMachineFilesDelete={handleDeleteEquipDataSelectionClassMachineFiles}
|
||||||
onClassMachineFilesUpload={handleUploadEquipDataSelectionClassMachineFiles}
|
onClassMachineFilesUpload={handleUploadEquipDataSelectionClassMachineFiles}
|
||||||
onClassMachineFilesSendMd={handleSendMdEquipDataSelectionClassMachineFiles}
|
onClassMachineFilesSendMd={handleSendMdEquipDataSelectionClassMachineFiles}
|
||||||
|
onClassMachineModelRefresh={handleRefreshEquipDataSelectionClassMachineModel}
|
||||||
onClassMachineModelAdd={handleAddEquipDataSelectionClassMachineModel}
|
onClassMachineModelAdd={handleAddEquipDataSelectionClassMachineModel}
|
||||||
onClassMachineModelDelete={handleDeleteEquipDataSelectionClassMachineModel}
|
onClassMachineModelDelete={handleDeleteEquipDataSelectionClassMachineModel}
|
||||||
onClassMachineModelSendRq={handleSendRqEquipDataSelectionClassMachineModel}
|
onClassMachineModelSendRq={handleSendRqEquipDataSelectionClassMachineModel}
|
||||||
|
@ -7,7 +7,7 @@
|
|||||||
//Подключение библиотек
|
//Подключение библиотек
|
||||||
//---------------------
|
//---------------------
|
||||||
|
|
||||||
import React, { useState, useContext, useRef } from "react"; //Классы React
|
import React, { useState, useContext, useRef, useEffect } from "react"; //Классы React
|
||||||
import PropTypes from "prop-types"; //Контроль свойств компонента
|
import PropTypes from "prop-types"; //Контроль свойств компонента
|
||||||
import {
|
import {
|
||||||
Box,
|
Box,
|
||||||
@ -53,7 +53,7 @@ import {
|
|||||||
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
import { P8PDataGrid, P8P_DATA_GRID_SIZE } from "../../components/p8p_data_grid"; //Таблица данных
|
||||||
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
import { P8P_DATA_GRID_CONFIG_PROPS } from "../../config_wrapper"; //Подключение компонентов к настройкам приложения
|
||||||
import { DS_RN_DEFAULT, TASK_LIST } from "./eqs_tech_cond_forecast_hooks"; //Общие вспомогательные хуки
|
import { DS_RN_DEFAULT, TASK_LIST } from "./eqs_tech_cond_forecast_hooks"; //Общие вспомогательные хуки
|
||||||
import { useEquipDataSelectionClassMachineDataSetsList } from "./admin_tab_hooks"; //Вспомогательные хуки
|
import { useEquipDataSelectionClassMachineDataSetsList, useEquipDataSelectionClassMachineCard } from "./admin_tab_hooks"; //Вспомогательные хуки
|
||||||
|
|
||||||
//---------
|
//---------
|
||||||
//Константы
|
//Константы
|
||||||
@ -97,6 +97,7 @@ const STYLES = {
|
|||||||
overflowY: "auto",
|
overflowY: "auto",
|
||||||
...SCROLL_STYLES
|
...SCROLL_STYLES
|
||||||
},
|
},
|
||||||
|
EQUIP_DSCM_DIALOG_CONTENT: { ...SCROLL_STYLES },
|
||||||
FL_ML_TABLE: {
|
FL_ML_TABLE: {
|
||||||
height: `200px`,
|
height: `200px`,
|
||||||
...SCROLL_STYLES
|
...SCROLL_STYLES
|
||||||
@ -305,7 +306,7 @@ EquipDataSelectionIU.propTypes = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
//Диалог IU класса оборудования выборки данных
|
//Диалог IU класса оборудования выборки данных
|
||||||
const EquipDataSelectionClassMachineIU = ({ onOk, onCancel }) => {
|
const EquipDataSelectionClassMachineIU = ({ classMachine, onOk, onCancel }) => {
|
||||||
//Подключение к контексту приложения
|
//Подключение к контексту приложения
|
||||||
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
const { pOnlineShowDictionary } = useContext(ApplicationСtx);
|
||||||
|
|
||||||
@ -318,18 +319,45 @@ const EquipDataSelectionClassMachineIU = ({ onOk, onCancel }) => {
|
|||||||
exsServiceFnUpload: "",
|
exsServiceFnUpload: "",
|
||||||
exsServiceSendMd: "",
|
exsServiceSendMd: "",
|
||||||
exsServiceFnSendMd: "",
|
exsServiceFnSendMd: "",
|
||||||
|
exsServiceSendMdCb: "",
|
||||||
|
exsServiceFnSendMdCb: "",
|
||||||
exsServiceSendRq: "",
|
exsServiceSendRq: "",
|
||||||
exsServiceFnSendRq: ""
|
exsServiceFnSendRq: "",
|
||||||
|
exsServiceSendRqCb: "",
|
||||||
|
exsServiceFnSendRqCb: ""
|
||||||
});
|
});
|
||||||
|
|
||||||
|
//Карточка из базы
|
||||||
|
const { equipDataSelectionClassMachineCard } = useEquipDataSelectionClassMachineCard(classMachine, 0);
|
||||||
|
|
||||||
|
//При загрузке карточки из базы
|
||||||
|
useEffect(() => {
|
||||||
|
if (equipDataSelectionClassMachineCard.NRN)
|
||||||
|
setValues({
|
||||||
|
eqobjKind: equipDataSelectionClassMachineCard.SSEQOBJKIND,
|
||||||
|
measureUnit: equipDataSelectionClassMachineCard.SDICMUNTS,
|
||||||
|
userprocsData: equipDataSelectionClassMachineCard.SUSERPROCS_DATA,
|
||||||
|
exsServiceUpload: equipDataSelectionClassMachineCard.SEXSSERVICE_UPLOAD,
|
||||||
|
exsServiceFnUpload: equipDataSelectionClassMachineCard.SEXSSERVICEFN_UPLOAD,
|
||||||
|
exsServiceSendMd: equipDataSelectionClassMachineCard.SEXSSERVICE_SEND_MD,
|
||||||
|
exsServiceFnSendMd: equipDataSelectionClassMachineCard.SEXSSERVICEFN_SEND_MD,
|
||||||
|
exsServiceSendMdCb: equipDataSelectionClassMachineCard.SEXSSERVICE_SEND_MDCB,
|
||||||
|
exsServiceFnSendMdCb: equipDataSelectionClassMachineCard.SEXSSERVICEFN_SEND_MDCB,
|
||||||
|
exsServiceSendRq: equipDataSelectionClassMachineCard.SEXSSERVICE_SEND_RQ,
|
||||||
|
exsServiceFnSendRq: equipDataSelectionClassMachineCard.SEXSSERVICEFN_SEND_RQ,
|
||||||
|
exsServiceSendRqCb: equipDataSelectionClassMachineCard.SEXSSERVICE_SEND_RQCB,
|
||||||
|
exsServiceFnSendRqCb: equipDataSelectionClassMachineCard.SEXSSERVICEFN_SEND_RQCB
|
||||||
|
});
|
||||||
|
}, [equipDataSelectionClassMachineCard]);
|
||||||
|
|
||||||
//Отработка воода значения в форму
|
//Отработка воода значения в форму
|
||||||
const handleValueChanged = (name, value) => setValues(pv => ({ ...pv, [name]: value }));
|
const handleValueChanged = (name, value) => setValues(pv => ({ ...pv, [name]: value }));
|
||||||
|
|
||||||
//Генерация содержимого
|
//Генерация содержимого
|
||||||
return (
|
return (
|
||||||
<Dialog open={true} onClose={() => (onOk ? onCancel() : null)}>
|
<Dialog open={true} onClose={() => (onOk ? onCancel() : null)} maxWidth={"sm"} fullWidth={true}>
|
||||||
<DialogTitle>Класс оборудования выборки данных</DialogTitle>
|
<DialogTitle>Класс оборудования выборки данных</DialogTitle>
|
||||||
<DialogContent>
|
<DialogContent sx={STYLES.EQUIP_DSCM_DIALOG_CONTENT}>
|
||||||
<IUDFormTextField
|
<IUDFormTextField
|
||||||
elementCode={"eqobjKind"}
|
elementCode={"eqobjKind"}
|
||||||
elementValue={values.eqobjKind}
|
elementValue={values.eqobjKind}
|
||||||
@ -379,6 +407,20 @@ const EquipDataSelectionClassMachineIU = ({ onOk, onCancel }) => {
|
|||||||
onChange={handleValueChanged}
|
onChange={handleValueChanged}
|
||||||
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendMd", callBack)}
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendMd", callBack)}
|
||||||
/>
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceSendMdCb"}
|
||||||
|
elementValue={values.exsServiceSendMdCb}
|
||||||
|
labelText={"Сервис обмена для обратной связи о передаче внешней системе"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceFnSendMdCb"}
|
||||||
|
elementValue={values.exsServiceFnSendMdCb}
|
||||||
|
labelText={"Функция обмена для обратной связи о передаче внешней системе"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendMdCb", callBack)}
|
||||||
|
/>
|
||||||
<IUDFormTextField
|
<IUDFormTextField
|
||||||
elementCode={"exsServiceSendRq"}
|
elementCode={"exsServiceSendRq"}
|
||||||
elementValue={values.exsServiceSendRq}
|
elementValue={values.exsServiceSendRq}
|
||||||
@ -393,6 +435,20 @@ const EquipDataSelectionClassMachineIU = ({ onOk, onCancel }) => {
|
|||||||
onChange={handleValueChanged}
|
onChange={handleValueChanged}
|
||||||
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendRq", callBack)}
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendRq", callBack)}
|
||||||
/>
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceSendRqCb"}
|
||||||
|
elementValue={values.exsServiceSendRqCb}
|
||||||
|
labelText={"Сервис обмена для обратной связи об обработке внешней системой"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceFnSendRqCb"}
|
||||||
|
elementValue={values.exsServiceFnSendRqCb}
|
||||||
|
labelText={"Функция обмена для обратной связи об обработке внешней системой"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendRqCb", callBack)}
|
||||||
|
/>
|
||||||
</DialogContent>
|
</DialogContent>
|
||||||
<DialogActions>
|
<DialogActions>
|
||||||
<Button onClick={() => (onOk ? onOk(values) : null)}>{BUTTONS.OK}</Button>
|
<Button onClick={() => (onOk ? onOk(values) : null)}>{BUTTONS.OK}</Button>
|
||||||
@ -404,6 +460,7 @@ const EquipDataSelectionClassMachineIU = ({ onOk, onCancel }) => {
|
|||||||
|
|
||||||
//Контроль свойств - Диалог IU класса оборудования выборки данных
|
//Контроль свойств - Диалог IU класса оборудования выборки данных
|
||||||
EquipDataSelectionClassMachineIU.propTypes = {
|
EquipDataSelectionClassMachineIU.propTypes = {
|
||||||
|
classMachine: PropTypes.number,
|
||||||
onOk: PropTypes.func,
|
onOk: PropTypes.func,
|
||||||
onCancel: PropTypes.func
|
onCancel: PropTypes.func
|
||||||
};
|
};
|
||||||
@ -588,11 +645,14 @@ const EquipDataSelectionClassMachineCard = ({
|
|||||||
card,
|
card,
|
||||||
filesList,
|
filesList,
|
||||||
modelsList,
|
modelsList,
|
||||||
|
onCardEdit,
|
||||||
onCardDelete,
|
onCardDelete,
|
||||||
|
onClassMachineFilesRefresh,
|
||||||
onClassMachineFilesMake,
|
onClassMachineFilesMake,
|
||||||
onClassMachineFilesDelete,
|
onClassMachineFilesDelete,
|
||||||
onClassMachineFilesUpload,
|
onClassMachineFilesUpload,
|
||||||
onClassMachineFilesSendMd,
|
onClassMachineFilesSendMd,
|
||||||
|
onClassMachineModelRefresh,
|
||||||
onClassMachineModelAdd,
|
onClassMachineModelAdd,
|
||||||
onClassMachineModelDelete,
|
onClassMachineModelDelete,
|
||||||
onClassMachineModelSendRq
|
onClassMachineModelSendRq
|
||||||
@ -600,9 +660,15 @@ const EquipDataSelectionClassMachineCard = ({
|
|||||||
//Подключаемся к теме
|
//Подключаемся к теме
|
||||||
const theme = useTheme();
|
const theme = useTheme();
|
||||||
|
|
||||||
|
//При нажатии на "Исправить" для карточки
|
||||||
|
const handleCardEditClick = () => (onCardEdit ? onCardEdit(card.NRN) : null);
|
||||||
|
|
||||||
//При нажатии на "Удалить" для карточки
|
//При нажатии на "Удалить" для карточки
|
||||||
const handleCardDeleteClick = () => (onCardDelete ? onCardDelete(card.NRN) : null);
|
const handleCardDeleteClick = () => (onCardDelete ? onCardDelete(card.NRN) : null);
|
||||||
|
|
||||||
|
//При нажатии на "Обновить" для файлов данных
|
||||||
|
const handleClassMachineFilesRefreshClick = () => (onClassMachineFilesRefresh ? onClassMachineFilesRefresh() : null);
|
||||||
|
|
||||||
//При нажатии на "Сформировать" для файлов данных
|
//При нажатии на "Сформировать" для файлов данных
|
||||||
const handleClassMachineFilesMakeClick = option =>
|
const handleClassMachineFilesMakeClick = option =>
|
||||||
onClassMachineFilesMake ? onClassMachineFilesMake(card.NRN, card.SUSERPROCS_DATA, option.code === "CLEAR_AND_MAKE" ? 1 : 0) : null;
|
onClassMachineFilesMake ? onClassMachineFilesMake(card.NRN, card.SUSERPROCS_DATA, option.code === "CLEAR_AND_MAKE" ? 1 : 0) : null;
|
||||||
@ -616,6 +682,9 @@ const EquipDataSelectionClassMachineCard = ({
|
|||||||
//При нажатии на "Удалить" для файлов данных
|
//При нажатии на "Удалить" для файлов данных
|
||||||
const handleClassMachineFilesDeleteClick = equipDSCMFL => (onClassMachineFilesDelete ? onClassMachineFilesDelete(equipDSCMFL) : null);
|
const handleClassMachineFilesDeleteClick = equipDSCMFL => (onClassMachineFilesDelete ? onClassMachineFilesDelete(equipDSCMFL) : null);
|
||||||
|
|
||||||
|
//При нажатии на "Обновить" для моделей
|
||||||
|
const handleClassMachineModelRefreshClick = () => (onClassMachineModelRefresh ? onClassMachineModelRefresh() : null);
|
||||||
|
|
||||||
//При нажатии на "Добавить" для моделей
|
//При нажатии на "Добавить" для моделей
|
||||||
const handleClassMachineModelAddClick = () => (onClassMachineModelAdd ? onClassMachineModelAdd() : null);
|
const handleClassMachineModelAddClick = () => (onClassMachineModelAdd ? onClassMachineModelAdd() : null);
|
||||||
|
|
||||||
@ -634,6 +703,9 @@ const EquipDataSelectionClassMachineCard = ({
|
|||||||
<Typography variant="h5" component="div">
|
<Typography variant="h5" component="div">
|
||||||
{card.SNAME}
|
{card.SNAME}
|
||||||
</Typography>
|
</Typography>
|
||||||
|
<IconButton onClick={handleCardEditClick}>
|
||||||
|
<Icon>edit</Icon>
|
||||||
|
</IconButton>
|
||||||
<IconButton onClick={handleCardDeleteClick}>
|
<IconButton onClick={handleCardDeleteClick}>
|
||||||
<Icon>delete</Icon>
|
<Icon>delete</Icon>
|
||||||
</IconButton>
|
</IconButton>
|
||||||
@ -645,6 +717,9 @@ const EquipDataSelectionClassMachineCard = ({
|
|||||||
Файлы данных
|
Файлы данных
|
||||||
</Typography>
|
</Typography>
|
||||||
<Stack spacing={0} direction={"row"}>
|
<Stack spacing={0} direction={"row"}>
|
||||||
|
<IconButton onClick={handleClassMachineFilesRefreshClick}>
|
||||||
|
<Icon>refresh</Icon>
|
||||||
|
</IconButton>
|
||||||
<PopUpButton
|
<PopUpButton
|
||||||
onClick={handleClassMachineFilesMakeClick}
|
onClick={handleClassMachineFilesMakeClick}
|
||||||
options={[
|
options={[
|
||||||
@ -676,9 +751,14 @@ const EquipDataSelectionClassMachineCard = ({
|
|||||||
<Typography variant="h6" component="div">
|
<Typography variant="h6" component="div">
|
||||||
Модели
|
Модели
|
||||||
</Typography>
|
</Typography>
|
||||||
<IconButton onClick={handleClassMachineModelAddClick}>
|
<Stack spacing={0} direction={"row"}>
|
||||||
<Icon>add</Icon>
|
<IconButton onClick={handleClassMachineModelRefreshClick}>
|
||||||
</IconButton>
|
<Icon>refresh</Icon>
|
||||||
|
</IconButton>
|
||||||
|
<IconButton onClick={handleClassMachineModelAddClick}>
|
||||||
|
<Icon>add</Icon>
|
||||||
|
</IconButton>
|
||||||
|
</Stack>
|
||||||
</Stack>
|
</Stack>
|
||||||
<P8PDataGrid
|
<P8PDataGrid
|
||||||
{...{ ...P8P_DATA_GRID_CONFIG_PROPS }}
|
{...{ ...P8P_DATA_GRID_CONFIG_PROPS }}
|
||||||
@ -712,11 +792,14 @@ EquipDataSelectionClassMachineCard.propTypes = {
|
|||||||
card: PropTypes.object.isRequired,
|
card: PropTypes.object.isRequired,
|
||||||
filesList: PropTypes.object.isRequired,
|
filesList: PropTypes.object.isRequired,
|
||||||
modelsList: PropTypes.object.isRequired,
|
modelsList: PropTypes.object.isRequired,
|
||||||
|
onCardEdit: PropTypes.func,
|
||||||
onCardDelete: PropTypes.func,
|
onCardDelete: PropTypes.func,
|
||||||
|
onClassMachineFilesRefresh: PropTypes.func,
|
||||||
onClassMachineFilesMake: PropTypes.func,
|
onClassMachineFilesMake: PropTypes.func,
|
||||||
onClassMachineFilesDelete: PropTypes.func,
|
onClassMachineFilesDelete: PropTypes.func,
|
||||||
onClassMachineFilesUpload: PropTypes.func,
|
onClassMachineFilesUpload: PropTypes.func,
|
||||||
onClassMachineFilesSendMd: PropTypes.func,
|
onClassMachineFilesSendMd: PropTypes.func,
|
||||||
|
onClassMachineModelRefresh: PropTypes.func,
|
||||||
onClassMachineModelAdd: PropTypes.func,
|
onClassMachineModelAdd: PropTypes.func,
|
||||||
onClassMachineModelDelete: PropTypes.func,
|
onClassMachineModelDelete: PropTypes.func,
|
||||||
onClassMachineModelSendRq: PropTypes.func
|
onClassMachineModelSendRq: PropTypes.func
|
||||||
|
@ -126,7 +126,11 @@ const selectServiceFn = (showDictionary, name, callBack) => {
|
|||||||
? "exsServiceUpload"
|
? "exsServiceUpload"
|
||||||
: name == "exsServiceFnSendMd"
|
: name == "exsServiceFnSendMd"
|
||||||
? "exsServiceSendMd"
|
? "exsServiceSendMd"
|
||||||
: "exsServiceSendRq",
|
: name == "exsServiceFnSendMdCb"
|
||||||
|
? "exsServiceSendMdCb"
|
||||||
|
: name == "exsServiceFnSendRq"
|
||||||
|
? "exsServiceSendRq"
|
||||||
|
: "exsServiceSendRqCb",
|
||||||
value: res.outParameters.out_CODE
|
value: res.outParameters.out_CODE
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -254,8 +254,12 @@ const ForecastTab = ({ onGoToAdmin }) => {
|
|||||||
SEXSSERVICEFN_UPLOAD: values.exsServiceFnUpload,
|
SEXSSERVICEFN_UPLOAD: values.exsServiceFnUpload,
|
||||||
SEXSSERVICE_SEND_MD: values.exsServiceSendMd,
|
SEXSSERVICE_SEND_MD: values.exsServiceSendMd,
|
||||||
SEXSSERVICEFN_SEND_MD: values.exsServiceFnSendMd,
|
SEXSSERVICEFN_SEND_MD: values.exsServiceFnSendMd,
|
||||||
|
SEXSSERVICE_SEND_MDCB: values.exsServiceSendMdCb,
|
||||||
|
SEXSSERVICEFN_SEND_MDCB: values.exsServiceFnSendMdCb,
|
||||||
SEXSSERVICE_SEND_RQ: values.exsServiceSendRq,
|
SEXSSERVICE_SEND_RQ: values.exsServiceSendRq,
|
||||||
SEXSSERVICEFN_SEND_RQ: values.exsServiceFnSendRq
|
SEXSSERVICEFN_SEND_RQ: values.exsServiceFnSendRq,
|
||||||
|
SEXSSERVICE_SEND_RQCB: values.exsServiceSendRqCb,
|
||||||
|
SEXSSERVICEFN_SEND_RQCB: values.exsServiceFnSendRqCb
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
setDialogs(pv => ({ ...pv, makeEqDataSet: false }));
|
setDialogs(pv => ({ ...pv, makeEqDataSet: false }));
|
||||||
|
@ -654,8 +654,12 @@ const TechObjMakeDataSet = ({ eqobjKind, measureUnit, onOk, onCancel }) => {
|
|||||||
exsServiceFnUpload: "Загрузка_на_SCP",
|
exsServiceFnUpload: "Загрузка_на_SCP",
|
||||||
exsServiceSendMd: "Загрузка_на_Фреймворк",
|
exsServiceSendMd: "Загрузка_на_Фреймворк",
|
||||||
exsServiceFnSendMd: "Передача данных",
|
exsServiceFnSendMd: "Передача данных",
|
||||||
|
exsServiceSendMdCb: "Поучение_от_Фреймворка",
|
||||||
|
exsServiceFnSendMdCb: "Состояние загрузки данных",
|
||||||
exsServiceSendRq: "Загрузка_на_Фреймворк",
|
exsServiceSendRq: "Загрузка_на_Фреймворк",
|
||||||
exsServiceFnSendRq: "Запрос на обучение"
|
exsServiceFnSendRq: "Запрос на обучение",
|
||||||
|
exsServiceSendRqCb: "Поучение_от_Фреймворка",
|
||||||
|
exsServiceFnSendRqCb: "Состояние обучения модели"
|
||||||
});
|
});
|
||||||
|
|
||||||
//Отработка воода значения в форму
|
//Отработка воода значения в форму
|
||||||
@ -663,7 +667,7 @@ const TechObjMakeDataSet = ({ eqobjKind, measureUnit, onOk, onCancel }) => {
|
|||||||
|
|
||||||
//Генерация содержимого
|
//Генерация содержимого
|
||||||
return (
|
return (
|
||||||
<Dialog open={true} onClose={() => (onOk ? onCancel() : null)}>
|
<Dialog open={true} onClose={() => (onOk ? onCancel() : null)} maxWidth={"sm"} fullWidth={true}>
|
||||||
<DialogTitle>Регистрация выборки данных класса технического объекта</DialogTitle>
|
<DialogTitle>Регистрация выборки данных класса технического объекта</DialogTitle>
|
||||||
<DialogContent sx={STYLES.TECH_OBJ_MAKE_DATASET_DIALOG_CONTENT}>
|
<DialogContent sx={STYLES.TECH_OBJ_MAKE_DATASET_DIALOG_CONTENT}>
|
||||||
{equipDataSelectionListIsLoading ? null : equipDataSelectionListAccess ? (
|
{equipDataSelectionListIsLoading ? null : equipDataSelectionListAccess ? (
|
||||||
@ -725,6 +729,20 @@ const TechObjMakeDataSet = ({ eqobjKind, measureUnit, onOk, onCancel }) => {
|
|||||||
onChange={handleValueChanged}
|
onChange={handleValueChanged}
|
||||||
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendMd", callBack)}
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendMd", callBack)}
|
||||||
/>
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceSendMdCb"}
|
||||||
|
elementValue={values.exsServiceSendMdCb}
|
||||||
|
labelText={"Сервис обмена для обратной связи о передаче внешней системе"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceFnSendMdCb"}
|
||||||
|
elementValue={values.exsServiceFnSendMdCb}
|
||||||
|
labelText={"Функция обмена для обратной связи о передаче внешней системе"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendMdCb", callBack)}
|
||||||
|
/>
|
||||||
<IUDFormTextField
|
<IUDFormTextField
|
||||||
elementCode={"exsServiceSendRq"}
|
elementCode={"exsServiceSendRq"}
|
||||||
elementValue={values.exsServiceSendRq}
|
elementValue={values.exsServiceSendRq}
|
||||||
@ -739,6 +757,20 @@ const TechObjMakeDataSet = ({ eqobjKind, measureUnit, onOk, onCancel }) => {
|
|||||||
onChange={handleValueChanged}
|
onChange={handleValueChanged}
|
||||||
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendRq", callBack)}
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendRq", callBack)}
|
||||||
/>
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceSendRqCb"}
|
||||||
|
elementValue={values.exsServiceSendRqCb}
|
||||||
|
labelText={"Сервис обмена для обратной связи об обработке внешней системой"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<IUDFormTextField
|
||||||
|
elementCode={"exsServiceFnSendRqCb"}
|
||||||
|
elementValue={values.exsServiceFnSendRqCb}
|
||||||
|
labelText={"Функция обмена для обратной связи об обработке внешней системой"}
|
||||||
|
onChange={handleValueChanged}
|
||||||
|
dictionary={callBack => selectServiceFn(pOnlineShowDictionary, "exsServiceFnSendRqCb", callBack)}
|
||||||
|
/>
|
||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<P8PAppInlineError text="У вас нет прав доступа для обучения моделей. Обратитесь к администратору." />
|
<P8PAppInlineError text="У вас нет прав доступа для обучения моделей. Обратитесь к администратору." />
|
||||||
|
Loading…
x
Reference in New Issue
Block a user