Документация iSZN
pkXML_SMEV3.sql
Работа со схемой СМЭВ
GetSMEVSchemaVersion
Описание
Возвращает текущий код версии схемы СМЭВ; если версия схемы СМЭВ не задана, возвращает null.
GetSMEVVersionID
FUNCTION GetSMEVVersionID RETURN PLS_INTEGER;
Описание
Возвращает текущий ID версии СМЭВ; если версия схемы СМЭВ не задана, возвращает null.
CheckSMEVSchemaVersion
PROCEDURE CheckSMEVSchemaVersion;
Описание
Проверяет, что версия схемы СМЭВ задана; если нет, возникает exception.
SetSMEVSchemaVersion
Описание
Устанавливает текущую версию схемы СМЭВ.
Параметры:
- sSchemaVersionCode - код версии схемы; константа из числа SSchemaVersion_xxx.
Если sVersion равен null, версия схемы становится не определена.
Если sVersion имеет ошибочное значение, возникает exception.
SetSMEVSchemaVersion
PROCEDURE SetSMEVSchemaVersion(iSMEVVersionID PLS_INTEGER);
Описание
Устанавливает текущую версию схемы СМЭВ по ID версии СМЭВ.
Параметры:
- iSMEVVersionID - ID версии СМЭВ из справочника “Версии СМЭВ”;
Если iVersionID равен null, версия схемы становится не определена.
Если iVersionID имеет ошибочное значение, возникает exception.
Разбор данных входящих сообщений
GetSMEVTypeNSURI
Описание
Возвращает URI пространства имён СМЭВ uri_xmlns_SMEVTypes. Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVBasicNSURI
Описание
Возвращает URI пространства имён СМЭВ uri_xmlns_SMEVTypesBasic. Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVFaultsNSURI
Описание
Возвращает URI пространства имён СМЭВ uri_xmlns_SMEVTypesFaults. Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVTypeTagID
FUNCTION GetSMEVTypeTagID(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Поиск тега в пространстве имён uri_xmlns_SMEVTypes.
Возвращает ID найденного тега или null.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVTypeBasicTagID
FUNCTION GetSMEVTypeBasicTagID(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Поиск тега в пространстве имён uri_xmlns_SMEVTypesBasic.
Возвращает ID найденного тега или null.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVTypeFaultsTagID
FUNCTION GetSMEVTypeFaultsTagID(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Поиск тега в пространстве имён uri_xmlns_SMEVTypesFaults.
Возвращает ID найденного тега или null.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVTypeDirectiveTagID
FUNCTION GetSMEVTypeDirectiveTagID(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN PLS_INTEGER;
Описание
Поиск тега в пространстве имён uri_xmlns_SMEVTypesDirective13.
Возвращает ID найденного тега или null.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
GetSMEVTypeTagValue
FUNCTION GetSMEVTypeTagValue(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает значение тега в пространстве имён uri_xmlns_SMEVTypes.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVTypeBasicTagValue
FUNCTION GetSMEVTypeBasicTagValue(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает значение тега в пространстве имён uri_xmlns_SMEVTypesBasic.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
GetSMEVTypeDirectiveTagValue
FUNCTION GetSMEVTypeDirectiveTagValue(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN VARCHAR2;
Описание
Возвращает значение тега в пространстве имён uri_xmlns_SMEVTypesDirective13.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
GetSMEVTypeGUID
FUNCTION GetSMEVTypeGUID(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN RAW;
Описание
Возвращает значение тега, содержащего GUID, в пространстве имён uri_xmlns_SMEVTypes.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега;
- iStrict - определяет поведение, если данные не найдены.
Если версия схемы СМЭВ не задана вызовомpkXML_SMEV3.SetSMEVSchemaVersion, возникает exception.
Если значение имеется, но не является корректным GUID, возникает exception, независимо от значения iStrict.
GetParticipantData
FUNCTION GetParticipantData(iParentTagID PLS_INTEGER, sTagName VARCHAR2, iStrict PLS_INTEGER) RETURN uszn.pkSMEV3.TParticipant;
Описание
Извлекает из разобранных XML-данных структуру Participant.
Параметры:
- iParentTagID - ID родительского тега;
- sTagName - имя тега участника взаимодействия (Sender или Recipient);
- iStrict - определяет поведение при отсутствии соответствующего тега участника.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
GetSMEVFault
FUNCTION GetSMEVFault(iTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TSmevFault;
Описание
Извлекает из разобранных XML-данных структуру TSmevFault.
Параметры:
- iTagID - ID тега <SmevFault>.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
GetAsyncProcStatus
FUNCTION GetAsyncProcStatus(iTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TAsyncProcessingStatus;
Описание
Извлекает из разобранных XML-данных структуру TAsyncProcessingStatus.
Параметры:
- iTagID - ID тега <AsyncProcessingStatus>.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
GetRequestStatus
FUNCTION GetRequestStatus(iTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TRequestStatus;
Описание
Извлекает из разобранных XML-данных структуру TRequestStatus.
Параметры:
- iTagID - ID тега <RequestStatus>.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
GetRequestRejectReasons
FUNCTION GetRequestRejectReasons(iOwnerTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TRejectReasonList;
Описание
Извлекает из разобранных XML-данных список причин отказа в приёме запроса.
Параметры:
- iOwnerTagID - ID родительского тега.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
GetMessageMetadata
FUNCTION GetMessageMetadata(iParentTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TMessageMetadata;
Описание
Извлекает из разобранных XML-данных структуру MessageMetadata.
Параметры:
- iParentTagID - ID родительского тега.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
GetAttachments
FUNCTION GetAttachments(iSPRDTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TAttachmentList;
Описание
Извлекает из разобранных XML-данных список вложений, передаваемых в теле сообщения.
Параметры:
- iSPRDTagID - ID тега SenderProvidedRequestData/SenderProvidedResponseData.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если список вложений отсутствует, возвращает пустой список.
Если вложения есть, но не содержат обязательные данные, возникает exception.
GetFSAttachments
FUNCTION GetFSAttachments(iSPRDTagID PLS_INTEGER) RETURN uszn.pkSMEV3.TFSAttachmentList;
Описание
Извлекает из разобранных XML-данных список вложений, передаваемых через файловое хранилище СМЭВ.
Параметры:
- iSPRDTagID - ID тега SenderProvidedRequestData/SenderProvidedResponseData.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если список вложений отсутствует, возвращает пустой список.
Если вложения есть, но не содержат обязательные данные, возникает exception.
Get_GetRequestResponse
PROCEDURE Get_GetRequestResponse(iOperationTagID PLS_INTEGER, Response OUT uszn.pkSMEV3.TGetRequestResponse, iDataRootTagID OUT PLS_INTEGER);
Описание
Извлекает из разобранных XML-данных ответ на вызов метода GetRequest.
Параметры:
- iOperationTagID - ID тега <GetRequestResponse>;
- Response - структурированные данные ответа;
- iDataRootTagID - ID тега с данными запроса, специфичными для вида сведений.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
Get_GetResponseResponse
PROCEDURE Get_GetResponseResponse(iOperationTagID PLS_INTEGER, Response OUT uszn.pkSMEV3.TGetResponseResponse, iDataRootTagID OUT PLS_INTEGER);
Описание
Извлекает из разобранных XML-данных ответ на вызов метода GetResponse.
Параметры:
- iOperationTagID - ID тега <GetResponseResponse>;
- Response - структурированные данные ответа;
- iDataRootTagID - ID тега с данными запроса, специфичными для вида сведений.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
Get_SendRequestResponse
PROCEDURE Get_SendRequestResponse(iSOAPBodyTagID PLS_INTEGER, Response OUT uszn.pkSMEV3.TSendRequestResponse);
Описание
Извлекает из разобранных XML-данных синхронный ответ на вызов метода SendRequestRequest.
Параметры:
- iSOAPBodyTagID - ID тега <soap:Body>;
- Response - структурированные данные синхронного ответа.
Данные извлекаются в текущей версии схемы, для её задания необходимо вызватьpkXML_SMEV3.SetSMEVSchemaVersion.
Если необходимые данные не найдены, возникает exception.
ParseDirectiveRegistry
PROCEDURE ParseDirectiveRegistry(iParentTagID PLS_INTEGER, iStrictSingleRecord PLS_INTEGER, TagsInfo OUT TDirectiveTags);
Описание
Извлекает из разобранных XML-данных информацию о служебных тегах реестра директивных видов сведений.
Входные параметры:
- iParentTagID - родительский тег; должен быть корневым тегом вида сведений;
- iStrictSingleRecord - требуется ли в данных ровно одна запись реестра (0/1).
Выходные параметры:
- TagsInfo - информация о найденных тегах реестра.
Если обязательные теги отсутствуют или содержат некорректные значения, возникает exception.
При наличии нескольких тегов RegistryRecord возникает exception, если iStrictSingleRecord!=0.
Подготовка данных запросов и ответов
AddSignedInfoIDAttrib
Описание
Добавляет в список атрибутов ID подписываемых данных.
Параметры:
- sAttribs - текущий список атрибутов; дополняется идентификатором;
- iSignerKind - вид подписанта; константа из числа ISignerKind_xxx.
Если вид подписанта некорректен, возникает exception.
AddSignedInfoTemplate
Описание
Добавляет шаблон подписи системы-отправителя.
Параметры:
- cRequest - данные тега <SendRequestRequest> или <SendResponseRequest>, содержащие <SenderProvidedRequestData> или <SenderProvidedResponseData> соответственно.
Эти данные дополняются пустым тегом <CallerInformationSystemSignature>.
GetDataKindOutMessageTag
FUNCTION GetDataKindOutMessageTag(iDataKindRegionID PLS_INTEGER, iDataKindID PLS_INTEGER, iMessageKindID PLS_INTEGER, sNSPrefix VARCHAR2, cData CLOB, sExtraAttribs VARCHAR2 := NULL) RETURN CLOB;
Описание
Формирует и возвращает корневой тег исходящего сообщения по виду сведений.
Параметры:
- iDataKindRegionID, iDataKindID - ключ вида сведений;
- iMessageKindID - ID вида сообщения; константа из числа pkSMEV3.IOutMessageKindID_xxx;
- sNSPrefix - префикс пространства имён вида сведений;
- cData - содержимое тега;
- sExtraAttribs - дополнительные атрибуты.
Если вид сведений не существует, возникает exception.
GetSendRequestRequestTag
Описание
Возвращает данные XML для создания запроса.
Параметры:
- Request - структурированные данные запроса.
GetSendResponseRequestTag
Описание
Возвращает данные XML для ответа на запрос.
Параметры:
- Response - структурированные данные ответа.
GetRequestEnvelope
Описание
Формирует SOAP-конверт.
Параметры:
- cHeader - данные тега <Header>; если null, тег <Header> не создаётся;
- cBody - данные тега <Body>.
Переводит ответ в UTF-8 и добавляет псевдотег <?xml version=...?>.