Формирование запроса на прогнозирование (начало, процедура подготовки параметров запроса)
This commit is contained in:
parent
277af55060
commit
6c1e35a324
@ -68,6 +68,29 @@ create or replace package UDO_PKG_EQUIPTCF as
|
|||||||
NEQUIPDSCMML in number -- Рег. номер модели
|
NEQUIPDSCMML in number -- Рег. номер модели
|
||||||
);
|
);
|
||||||
|
|
||||||
|
/* Подготовка запроса на формирование прогноза технического объекта */
|
||||||
|
procedure EQCONFIG_THOBJ_FORECAST_PRLG
|
||||||
|
(
|
||||||
|
NEQCONFIG in number, -- Рег. номер технического объекта
|
||||||
|
NEQUIPDSCMML in number, -- Рег. номер модели
|
||||||
|
NDATASET_IDENT in number, -- Идентификатор буфера данных
|
||||||
|
NDATASET_CONFIG_IDENT in number, -- Идентификатор буфера описания данных
|
||||||
|
SURL out varchar2, -- Адрес для запроса
|
||||||
|
SAUTH_TOKEN out varchar2, -- Токен аутентификации для запроса
|
||||||
|
SDATASET_ID out varchar2, -- Идентификатор выборки данных запроса
|
||||||
|
CDATASET_CONFIG out clob, -- Описание данных о наработках
|
||||||
|
SDATASET_URL out varchar2, -- Адрес для получения данных о наработках
|
||||||
|
SCLASS_MACHINE out varchar2, -- Код класса оборудования для запроса
|
||||||
|
STASK out varchar2 -- Задача для запроса (см. константы UDO_PKG_EQUIPDS_BASE.SCMML_TASK_*)
|
||||||
|
);
|
||||||
|
|
||||||
|
/* Подчистка после исполнения запроса на формирование прогноза технического объекта */
|
||||||
|
procedure EQCONFIG_THOBJ_FORECAST_EPLG
|
||||||
|
(
|
||||||
|
NDATASET_IDENT in number, -- Идентификатор буфера данных
|
||||||
|
NDATASET_CONFIG_IDENT in number -- Идентификатор буфера описания данных
|
||||||
|
);
|
||||||
|
|
||||||
/* Формирование цвета прогноза для технического объекта */
|
/* Формирование цвета прогноза для технического объекта */
|
||||||
function EQCONFIG_THOBJ_FORECAST_CLR
|
function EQCONFIG_THOBJ_FORECAST_CLR
|
||||||
(
|
(
|
||||||
@ -736,6 +759,75 @@ text="Проверка прав доступа при формировании
|
|||||||
end loop;
|
end loop;
|
||||||
end EQCONFIG_THOBJ_FORECAST;
|
end EQCONFIG_THOBJ_FORECAST;
|
||||||
|
|
||||||
|
/* Подготовка запроса на формирование прогноза технического объекта */
|
||||||
|
procedure EQCONFIG_THOBJ_FORECAST_PRLG
|
||||||
|
(
|
||||||
|
NEQCONFIG in number, -- Рег. номер технического объекта
|
||||||
|
NEQUIPDSCMML in number, -- Рег. номер модели
|
||||||
|
NDATASET_IDENT in number, -- Идентификатор буфера данных
|
||||||
|
NDATASET_CONFIG_IDENT in number, -- Идентификатор буфера описания данных
|
||||||
|
SURL out varchar2, -- Адрес для запроса
|
||||||
|
SAUTH_TOKEN out varchar2, -- Токен аутентификации для запроса
|
||||||
|
SDATASET_ID out varchar2, -- Идентификатор выборки данных запроса
|
||||||
|
CDATASET_CONFIG out clob, -- Описание данных о наработках
|
||||||
|
SDATASET_URL out varchar2, -- Адрес для получения данных о наработках
|
||||||
|
SCLASS_MACHINE out varchar2, -- Код класса оборудования для запроса
|
||||||
|
STASK out varchar2 -- Задача для запроса (см. константы UDO_PKG_EQUIPDS_BASE.SCMML_TASK_*)
|
||||||
|
)
|
||||||
|
is
|
||||||
|
NCNT PKG_STD.TNUMBER; -- Буфер для количества файлов данных
|
||||||
|
begin
|
||||||
|
/* Проверим данные о наработках */
|
||||||
|
begin
|
||||||
|
select count(T.RN)
|
||||||
|
into NCNT
|
||||||
|
from FILE_BUFFER T
|
||||||
|
where T.IDENT = NDATASET_IDENT
|
||||||
|
and T.BDATA is not null;
|
||||||
|
exception
|
||||||
|
when others then
|
||||||
|
P_EXCEPTION(0, 'Не удалось проверить выборку данных для прогноза.');
|
||||||
|
end;
|
||||||
|
if (NCNT > 0) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Процедура формирования данных для прогноза вернула более одного набора сведений о наработках.');
|
||||||
|
end if;
|
||||||
|
if (NCNT = 0) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Процедура формирования данных для прогноза не вернула сведений о наработках.');
|
||||||
|
end if;
|
||||||
|
/* Читаем описание данных о наработках */
|
||||||
|
for C in (select T.DATA CDATA from FILE_BUFFER T where T.IDENT = NDATASET_CONFIG_IDENT)
|
||||||
|
loop
|
||||||
|
if (CDATASET_CONFIG is not null) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Процедура формирования данных для прогноза вернула более одного описания сведений о наработках.');
|
||||||
|
end if;
|
||||||
|
CDATASET_CONFIG := C.CDATA;
|
||||||
|
end loop;
|
||||||
|
if (CDATASET_CONFIG is null) then
|
||||||
|
P_EXCEPTION(0,
|
||||||
|
'Процедура формирования данных для прогноза не вернула описания сведений о наработках.');
|
||||||
|
end if;
|
||||||
|
/* Формируем URL для запроса */
|
||||||
|
SURL := 'https://parus.cadred.ru/API/forecast/metadata';
|
||||||
|
/* Формируем токен для аутентификации */
|
||||||
|
SAUTH_TOKEN := to_char(base64_encode(clob2blob('parus_remote:CreateNewAccount_787898')));
|
||||||
|
end EQCONFIG_THOBJ_FORECAST_PRLG;
|
||||||
|
|
||||||
|
/* Подчистка после исполнения запроса на формирование прогноза технического объекта */
|
||||||
|
procedure EQCONFIG_THOBJ_FORECAST_EPLG
|
||||||
|
(
|
||||||
|
NDATASET_IDENT in number, -- Идентификатор буфера данных
|
||||||
|
NDATASET_CONFIG_IDENT in number -- Идентификатор буфера описания данных
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
/* Очистим данные в файловом буфере */
|
||||||
|
P_FILE_BUFFER_CLEAR(NIDENT => NDATASET_IDENT);
|
||||||
|
P_FILE_BUFFER_CLEAR(NIDENT => NDATASET_CONFIG_IDENT);
|
||||||
|
end EQCONFIG_THOBJ_FORECAST_EPLG;
|
||||||
|
|
||||||
/* Формирование цвета прогноза для технического объекта */
|
/* Формирование цвета прогноза для технического объекта */
|
||||||
function EQCONFIG_THOBJ_FORECAST_CLR
|
function EQCONFIG_THOBJ_FORECAST_CLR
|
||||||
(
|
(
|
||||||
|
26
db/UDO_P_EQCONFIG_DATASET_MAKE.prc
Normal file
26
db/UDO_P_EQCONFIG_DATASET_MAKE.prc
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
create or replace procedure UDO_P_EQCONFIG_DATASET_MAKE
|
||||||
|
/* Формирование сведений о наработках единицы оборудования для прогноза */
|
||||||
|
(
|
||||||
|
NEQCONFIG in number, -- Рег. номер единицы оборудования
|
||||||
|
DBEG in date, -- Дата "С"
|
||||||
|
DEND in date, -- Дата "По"
|
||||||
|
NDATASET_IDENT out number, -- Идентификатор буфера данных
|
||||||
|
NDATASET_CONFIG_IDENT out number -- Идентификатор буфера описания данных
|
||||||
|
)
|
||||||
|
is
|
||||||
|
begin
|
||||||
|
for C in (select T.COMPANY,
|
||||||
|
T.RN
|
||||||
|
from EQCONFIG T
|
||||||
|
where T.RN = NEQCONFIG)
|
||||||
|
loop
|
||||||
|
UDO_PKG_EQUIPDS_DATAPROCESS.DATASET_CONF_SET(NCOMPANY => C.COMPANY,
|
||||||
|
NEQCONFIG => C.RN,
|
||||||
|
DBEG => DBEG,
|
||||||
|
DEND => DEND,
|
||||||
|
NLENGTH_GB => 1,
|
||||||
|
NDATASET_IDENT => NDATASET_IDENT,
|
||||||
|
NDATASET_CONFIG_IDENT => NDATASET_CONFIG_IDENT);
|
||||||
|
end loop;
|
||||||
|
end UDO_P_EQCONFIG_DATASET_MAKE;
|
||||||
|
/
|
@ -25,5 +25,5 @@ begin
|
|||||||
CFILENAME => null,
|
CFILENAME => null,
|
||||||
CDATA => 'Описание структуры выборки',
|
CDATA => 'Описание структуры выборки',
|
||||||
BLOBDATA => null);
|
BLOBDATA => null);
|
||||||
end;
|
end UDO_P_EQUIPDSCMFL_CREATE;
|
||||||
/
|
/
|
||||||
|
@ -1,2 +1,3 @@
|
|||||||
grant execute on UDO_PKG_EQUIPTCF to public;
|
grant execute on UDO_PKG_EQUIPTCF to public;
|
||||||
grant execute on UDO_PKG_EQUIPDS to public;
|
grant execute on UDO_PKG_EQUIPDS to public;
|
||||||
|
grant execute on UDO_P_EQCONFIG_DATASET_MAKE to public;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user