Документация iSZN
pkEpgu.sql
Ошибки
Error_NoEpguEnvType
PROCEDURE Error_NoEpguEnvType(iID PLS_INTEGER);
Описание
Вызывает exception “Тип среды ЕПГУ ... не существует”.
Типы среды ЕПГУ
GetEpguEnvType
FUNCTION GetEpguEnvType(iID PLS_INTEGER, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает код типа среды ЕПГУ по его ID.
Параметры:
- iID - ID типа среды ЕПГУ (запись справочника «Типы среды ЕПГУ»);
- iStrict - определяет поведение при отсутствии записи в справочнике.
GetEpguEnvTypeName
FUNCTION GetEpguEnvTypeName(iID PLS_INTEGER, iNameKind PLS_INTEGER, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает наименование типа среды ЕПГУ по его ID.
Параметры:
- iID - ID типа среды ЕПГУ (записи в соответствующем справочнике);
- iNameKind - вид наименования: 1 - техническое, 2 - отображаемое;
- iStrict - определяет поведение при отсутствии записи.
Конфигурация
GetParticipantKey
PROCEDURE GetParticipantKey(iRegionID PLS_INTEGER, iStrict PLS_INTEGER, iParticipantRgnID OUT PLS_INTEGER, iParticipantID OUT PLS_INTEGER);
Описание
Возвращает ключ участника взаимодействия, представляющего ИС для работы с ЕПГУ.
Значение берётся из региональной настройки экземпляра Системы EPGU_ELK_SYSTEM.
Входные параметры:
- iRegionID - ID района, для которого требуются данные ИС;
- iStrict - определяет поведение при отсутствии значения настройки.
Выходные параметры:
- iParticipantRgnID, iParticipantID - ключ участника взаимодействия с СМЭВ.
GetParticipantSlurpKey
FUNCTION GetParticipantSlurpKey(iRegionID PLS_INTEGER, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Возвращает Slurp-ключ участника взаимодействия, представляющего ИС для работы с ЕПГУ.
Значение берётся из региональной настройки экземпляра Системы EPGU_ELK_SYSTEM.
Параметры:
- iRegionID - ID района, для которого необходимо получить значение настройки;
- iStrict - определяет поведение при отсутствии значения настройки.
Разбор XML
ParseFiasAddress
PROCEDURE ParseFiasAddress(iAddrTagID PLS_INTEGER, sNSURI VARCHAR2, Address OUT TFiasAddress);
Описание
Заполняет сведения об адресе по ФИАС из разобранного XML-файла.
Параметры:
- iAddrTagID - ID тега адреса по ФИАС;
- sNSURI - URI пространства имён тегов;
- Address - заполняемые адресные данные.
ExtractSignedContent
PROCEDURE ExtractSignedContent(iIncMessageID PLS_INTEGER, Entries OUT uszn.TZipArchiveEntryList, iStrictExists PLS_INTEGER);
Описание
Распаковывает содержимое вложения SignedContent.zip, приложенного к входящему сообщению СМЭВ-3.
Параметры:
- iIncMessageID - ID входящего сообщения;
- Entries - разобранное содержимое архива;
- iStrictExists - определяет поведение при отсутствии сообщения или приложенного к нему файла SignedContent.zip.
Если архив повреждён, возникает exception.
Если файл не найден, то при iStrictExists=0 возвращает null.
GetRegionIDByAddress
FUNCTION GetRegionIDByAddress(iRootRgnID PLS_INTEGER, Address TFiasAddress) RETURN PLS_INTEGER;
Описание
Определяет район Системы по адресу ФИАС.
Параметры:
- iRootRgnID - ID района, в пределах которого искать район;
- Address - разобранный адрес по ФИАС.
Если район определить не удалось, возвращает null.
Общая обработка событий заявления
ProcessTextRequest
PROCEDURE ProcessTextRequest( iIncMessageID PLS_INTEGER, Request IN uszn.pkSMEV3.TGetRequestResponse, sOrderID VARCHAR2, sText VARCHAR2, iWarningCount IN OUT NOCOPY PLS_INTEGER, iErrorCount IN OUT NOCOPY PLS_INTEGER, sErrorMsg IN OUT NOCOPY VARCHAR2, cLogData IN OUT NOCOPY CLOB, iLogLevel PLS_INTEGER, iRegionID OUT PLS_INTEGER, iOutMsgID OUT PLS_INTEGER); -- Обрабатывает входящий запрос отмены заявления. -- Параметры: -- iIncMessageID - ID входящего сообщения; -- Request - структурированные данные исходного запроса; -- sOrderID - номер заявления на ЕПГУ; -- sReason - описание причины отмены заявления; -- iWarningCount - количество предупреждений; обновляется в процессе обработки; -- iErrorCount - количество сбоев; обновляется в процессе обработки; -- sErrorMsg - последнее сообщение об ошибке/предупреждении; -- cLogData - данные протокола, заполняются процессе обработки; -- iLogLevel - начальный уровень отступа в протоколе; -- iRegionID, iOutMsgID - ключ исходящего сообщения. -- Запрос поступает через предметный вид сведений по конкретной услуге (концентратор услуг). -- Для универсального вида сведений для приёма заявлений с ЕПГУ отмена заявления пока не предусмотрена. -- Фактически на данный момент отмена заявления не реализована, функция отправляет отказ. PROCEDURE ProcessCancelRequest( iIncMessageID PLS_INTEGER, Request IN uszn.pkSMEV3.TGetRequestResponse, sOrderID VARCHAR2, sReason VARCHAR2,
Описание
Обрабатывает входящий запрос с текстовым сообщением от заявителя.
Параметры:
- iIncMessageID - ID входящего сообщения;
- Request - структурированные данные исходного запроса;
- sOrderID - номер заявления на ЕПГУ;
- sText - текст сообщения;
- iWarningCount - количество предупреждений; обновляется в процессе обработки;
- iErrorCount - количество сбоев; обновляется в процессе обработки;
- sErrorMsg - последнее сообщение об ошибке/предупреждении;
- cLogData - данные протокола, заполняются процессе обработки;
- iLogLevel - начальный уровень отступа в протоколе;
- iRegionID, iOutMsgID - ключ исходящего сообщения.
Запрос поступает через предметный вид сведений по конкретной услуге (концентратор услуг) или через универсальный
вид сведений для приёма заявлений с ЕПГУ. Ответ делается также через этот ВС.
Для унификации ответ на запрос универсального ВС сделан по аналогии с ответом для концентратора услуг, поэтому
обработка объединена в одной процедуре.
ProcessCancelRequest
PROCEDURE ProcessCancelRequest( iIncMessageID PLS_INTEGER, Request IN uszn.pkSMEV3.TGetRequestResponse, sOrderID VARCHAR2, sReason VARCHAR2, iWarningCount IN OUT NOCOPY PLS_INTEGER, iErrorCount IN OUT NOCOPY PLS_INTEGER, sErrorMsg IN OUT NOCOPY VARCHAR2, cLogData IN OUT NOCOPY CLOB, iLogLevel PLS_INTEGER, iRegionID OUT PLS_INTEGER, iOutMsgID OUT PLS_INTEGER); -- Возвращает заполненный тег ChangeOrderInfo. -- Параметры: -- ChangeOrder - структурированные данные тега; -- sNSPrefix - префикс пространства имён ответа. FUNCTION GetChangeOrderTag(ChangeOrder IN TChangeOrderInfo, sNSPrefix VARCHAR2) RETURN VARCHAR2;
Описание
Обрабатывает входящий запрос отмены заявления.
Параметры:
- iIncMessageID - ID входящего сообщения;
- Request - структурированные данные исходного запроса;
- sOrderID - номер заявления на ЕПГУ;
- sReason - описание причины отмены заявления;
- iWarningCount - количество предупреждений; обновляется в процессе обработки;
- iErrorCount - количество сбоев; обновляется в процессе обработки;
- sErrorMsg - последнее сообщение об ошибке/предупреждении;
- cLogData - данные протокола, заполняются процессе обработки;
- iLogLevel - начальный уровень отступа в протоколе;
- iRegionID, iOutMsgID - ключ исходящего сообщения.
Запрос поступает через предметный вид сведений по конкретной услуге (концентратор услуг).
Для универсального вида сведений для приёма заявлений с ЕПГУ отмена заявления пока не предусмотрена.
Фактически на данный момент отмена заявления не реализована, функция отправляет отказ.
GetChangeOrderTag
Описание
Возвращает заполненный тег ChangeOrderInfo.
Параметры:
- ChangeOrder - структурированные данные тега;
- sNSPrefix - префикс пространства имён ответа.
SendFinalAppStatus
FUNCTION SendFinalAppStatus(iRegionID PLS_INTEGER, iRequestID PLS_INTEGER, iRequestEventID PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Ставит в очередь ответ с финальным статусом. Финальный статус по обращению отправляется в виде ответа на запрос
подачи заявления через предметный вид сведений по конкретной услуге (концентратор услуг) или через универсальный
вид сведений для приёма заявлений с ЕПГУ (для унификации сделан по аналогии с концентраторными услугами).
Параметры:
- iRegionID - ID района;
- iRequestID - ID записи обращения за ГУ;
- iRequestEventID - ID записи события по обращению, о котором необходимо уведомить; если задано, то iRequestID игнорируется.
Возвращает ID записи созданного исходящего сообщения.
Если ID записи события не задан (null), отправляется уведомление о текущем состоянии обращения.
При выполнении возникает exception, если:
- запись обращения за предоставлением ГУ не существует или заблокирована;
- запись события по обращению задана, но при этом не существует или заблокирована;
- источник обращения отличен от одного из: pkStateSvc.IReqOrigin_EpguHub, pkStateSvc.IReqOrigin_EPGU3;
- входящее сообщение СМЭВ, по которому создано обращение, не существуют.
SendStatusChangeNotify
FUNCTION SendStatusChangeNotify(iRegionID PLS_INTEGER, iRequestID PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Рассылает уведомления об изменении состояния обращения за оказанием государственной услуги.
Отправляется информация о текущем состоянии обращения.
Возвращает ID сообщения СМЭВ-3, созданного для отправки статуса.
Параметры:
- iRegionID, iRequestID - ключ записи обращения за оказанием государственной услуги.
Если обращение не существует, возникает exception.
SendRequestEventNotification
FUNCTION SendRequestEventNotification(iRegionID PLS_INTEGER, iRequestEventID PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Отправляет уведомление о событии по обращению за оказанием ГУ.
Также заполняет у события информацию об отправке уведомления.
Параметры:
- iRegionID, iRequestEventID - ключ записи события по обращению за оказанием ГУ.
Возвращает ID сообщения СМЭВ-3, созданного для отправки статуса.
Если событие не существует или уведомление уже отправлялось, возникает exception.