API: Обобщенные сведения

ВНИМАНИЕ!!! Для работы с пакетом API необходимо приобрести модуль «WEB кабинет».

О стоимости модуля «WEB кабинет» можно узнать здесь.

Для работы WEB-кабинета ваших клиентов Скачайте инсталляционный пакет для WEB кабинета и разверните его под IIS (не на сервере СУБД).

Для прямого доступа к базе необходимо использовать следующие параметры:

IP: IP или имя сервера

Port: 1521 (или другой, если настроен проброс портов)

SID БД (Database name): orcl

Login: ExtUser

Password: ExtPassword

 

Как организовать раздельный доступ для Ваших клиентов описано тут.

 

Общие принципы

Для прямого доступа в базу данных предусмотрен логин ExtUser. По умолчанию, этот логин деактивирован из соображений безопасности, для его активации и получения пароля для входа обращайтесь в службу технической поддержки AVA ERP.

Для занесения данных можно воспользоваться процедурами из пакета Pck_InterShop либо вставлять данные непосредственно в представления, сформировав заранее уникальный номер (ID) вносимой записи. Для редактирования и удаления данных необходимо вносить изменения в представления.

Для удобства работы в пакете Pck_InterShop определен тип TId, к которому приводятся все поля БД, содержащие идентификаторы записей.

Для получения уникального значения идентификатора записи, которую предполагается внести в БД, нужно использовать функцию Pck_InterShop.NextId, в которую единственным и обязательным параметром передается название представления для занесения записи. В каждом представлении имеется поле с ID, значение которого однозначно идентифицирует запись в наборе данных. В случае выборки из представления со всеми полями (Select * From…) это поле, как правило, выводится первым.

При работе в режиме прямого доступа к данным (API) существует ряд множеств и подмножеств, имеющих глобальные и локальные идентификаторы. Глобальные идентификаторы отображаются в полях iDocumentId (глобальный ID документа) и iContragentId (глобальный ID контрагента). Наряду с этими идентификаторами в представлениях могут выводиться локальные идентификаторы в полях с названием iId. К примеру, в списках ЮЛ и ФЛ могут присутствовать записи с одинаковыми локальными идентификаторами, но глобальный идентификатор iContragentId повториться не может. В клиентской программе AVA ERP локальные идентификаторы выводятся в поле «№» и доступны всем пользователям, а глобальные идентификаторы — в служебном поле iContragentId (или iDocumentId) и обычно доступны только администраторам системы. В API глобальные идентификаторы используются для связки записей из разных множеств или подмножеств между собой.

<!—

V_E_Client

Список клиентов. Представление доступно для редактирования. В БД клиент заносится с типом Клиент. Менеджер и отдел не проставляется. Состояние устанавливается в значение «Выписано». Для добавления нового клиента можно воспользоваться пакетной функцией Pck_InterShop.InsClient.

Поле Тип Требуемое Значение Комментарий
iContragentId TId Да ID в списке контрагентов Глобальный ID
iId TId н/д ID в списке клиентов Локальный ID, формируется автоматически
vcName Varchar2(250) Нет Название
vcEMail Varchar2(250) Нет Email
vcPhone Varchar2(4000) Нет Телефон(-ы) Список телефонов хранится одной строкой
vcURL Varchar2(250) Нет Сайт (URL-адрес)
vcAddress Varchar2(4000) Нет Адрес Хранится без структуры

 

V_E_Currency

Справочник валют. Представление закрыто для редактирования

vcCurrencyCodeVarchar2(50)н/дКод согласно справочнику ОКВ

Поле Тип Требуемое Значение Комментарий
iCurrencyId TId н/д ID валюты Глобальный ID
vcCurrencyName Varchar2(50) н/д Наименование
vcCurrencyShortName Varchar2(5) н/д Краткое наименование

 

V_E_Deputy

Справочник отделов/подразделений компании Список отделов. Представление недоступно для редактирования. Список отделов имеет иерархическую структуру, дочерние подразделения ссылаются на головное с помощью поля iParentId.

Поле Тип Требуемое Значение Комментарий
iDeputyId TId н/д ID отдела Глобальный ID
iParentId TId н/д ID родительского отдела Ссылка на iDeputyId головного подразделения
vcDeputyName Varchar2(100) н/д Название отдела

 

V_E_Document

Список документов. Представление доступно для редактирования. Менеджер и отдел не проставляется. Товарное и финансовое состояние устанавливается в значение «Выписано». Для добавления нового документа можно воспользоваться пакетной функцией Pck_Install.InsDocument.

Поле Тип Требуемое Значение Комментарий
iDocumentId TId Да ID в списке контрагентов Глобальный ID
iId TId н/д ID в списке счетов Локальный ID. Формируется автоматически.
iDocumentTypeId TId Нет ID в справочнике видов документов Если при занесении не указано значение, то используется значение 48 («Счет клиенту»)Виды Документов
vcNum Varchar2(500) Нет Пользовательский номер документа Может заполняться произвольным значением, отображается согласно настроенному правилу формирования названия
vcDocumentName Varchar2(4000) н/д Полное название документа Формируется автоматически согласно правилам наименования документов
iContragentId TId Нет ID контрагента документа
vcContragentName Varchar2(500) н/д Название контрагента
iContragentId_Face TId Нет ID контрагента, выступающего контактным лицом Возможно указание только из списка ФЛ
vcFIO_Face Varchar2(4000) н/д ФИО контактного лица
iDocumentStateId TId н/д ID товарного состояния документа См. Маршрут состояний документов
vcDocumentState Varchar2(50) н/д Товарное состояние документа См. Маршрут состояний документов
iDocumentStateId_Money TId н/д ID финансового состояния документа См. Маршрут состояний документов
vcDocumentState_Money Varchar2(50) н/д Финансовое состояние документа См. Маршрут состояний документов
iCurrencyId TId н/д ID валюты документа Проставляется согласно настройкам системы
vcCurrencyName Varchar2(50) н/д Наименование валюты
vcCurrencyShortName Varchar2(5) н/д Краткое наименование валюты
iDeputyId TId Нет ID отдела Указание отдела может определять доступ к документу
vcDeputyName Varchar2(100) н/д Название отдела
dtExecute Date Нет Желаемая дата выполнения
cbComment Clob Нет Комментарий к документу
decSum Number н/д Сумма документа Считается согласно настроенному правилу
iTmcTypeId TId Нет ID типа документа Типы Документов
vcTmcTypeName Varchar(100) н/д Название типа документа Типы Документов
iDocumentId_Reason TId Нет ID документа-основания ID документа из этого же представления V_E_Document
vcDocumentReasonName Varchar(150) н/д Название документа-снования

 

V_E_DocumentType

Справочник видов документов. Представление недоступно для редактирования.

Поле Тип Требуемое Значение Комментарий
iDocumentTypeId TId н/д ID в справочнике Глобальный ID
vcName Varchar2(50) н/д Наименование вида документа
vcTableName Varchar2(50) н/д Название таблицы Название физической таблицы, в которой хранятся данные, специфичные для данного вида документа

 

V_E_Face

Список физических/контактных лиц . Представление доступно для редактирования. Менеджер и отдел не проставляется. Состояние проставляется в «Выписано». Для занесения нового ФЛ можно воспользоваться пакетной функцией Pck_InterShop.InsFace.

Поле Тип Требуемое Значение Комментарий
iContragentId TId Да ID в списке контрагентов Глобальный ID
iId TId н/д ID в списке ФЛ Локальный ID
vcName Varchar2(50) Нет Имя
vcSurName Varchar2(50) Нет Фамилия
vcLastName Varchar2(50) Нет Отчество
vcFIO Varchar2(4000) н/д ФИО Формируется автоматически
iOwnerId TId Нет ID владельца Для контактных лиц используется iContragentId клиента или фирмы, для независимых ФЛ может быть равным нулю
vcPhone Varchar2(4000) Нет Телефон(-ы) Список телефонов хранится одной строкой
vcEMail Varchar2(250) Нет Email
vcICQ Varchar2(250) Нет Идентификатор в ICQ
vcSype Varchar2(250) Нет Имя в Skype
vcAddress Varchar2(4000) Нет Адрес Хранится без структуры

 

V_E_Firm

Список юридических лиц . Представление доступно для редактирования. Менеджер и отдел не проставляется. Состояние проставляется в «Выписано». Для занесения нового ЮЛ можно воспользоваться пакетной функцией Pck_InterShop.InsFirm.

Поле Тип Требуемое Значение Комментарий
iContragentId TId Да ID в списке контрагентов Глобальный ID
iId TId н/д ID в списке ЮЛ Локальный ID
vcName Varchar2(250) Да Наименование ЮЛ Используется для оформления юридических документов
vcINN Varchar2(23) Нет ИНН ЮЛ Используется для оформления юридических документов
vcKPP Varchar2(50) Нет КПП ЮЛ Используется для оформления юридических документов
iOwnerId TId Нет ID владельца Для ЮЛ, принадлежащих клиентам используется iContragentId клиента, для независимых ЮЛ может быть равным нулю
vcName_Owner Varchar2(50) н/д Наименование владельца
iFirmTypeId TId Нет ID формы организационно-правовой собственности Значение может быть выбрано из справочника V_E_FirmType
vcFirmTypeName Varchar2(250) н/д Название формы организационно-правовой формы
vcPhone Varchar2(4000) Нет Телефон(-ы) Список телефонов хранится одной строкой
vcAddress_Post Varchar2(4000) Нет Почтовый (юридический) адрес ЮЛ Хранится без структуры
vcAddress_Fact Varchar2(4000) Нет Фактический адрес ЮЛ Хранится без структуры

 

V_E_FirmType

Справочник организационно-правовой собственности (ОКОПФ). Представление недоступно для редактирования.

Поле Тип Требуемое Значение Комментарий
iFirmTypeId TId н/д ID в справочнике Глобальный ID
vcFirmTypeName Varchar2(250) н/д Наименование
vcFirmTypeShortName Varchar2(250) н/д Аббревиатура
iOKOPFCode Number(2) н/д Код по справочнику ОКОПФ

 

V_E_GdsClss

Товарный справочник (классификатор) . Представление закрыто для редактирования. Представление отображает линейный список товаров, услуг и папок классификатора. Для отображения древовидной структуры классификатора предназначены представления V_E_GdsTree и V_E_GdsClssTree.

Поле Тип Требуемое Значение Комментарий
iGdsClssId TId н/д ID товара (внутренний артикул) Глобальный ID
vcName Varchar2(4000) н/д Полное наименование товара Формируется согласно маске наименования
iIsFolder Number н/д Признак папки 0 – для товаров, 1 – для папок
iIsService Number н/д Признак услуги 0 – для товаров, 1 – для услуг
iGdsTypeId TId н/д ID товарного типа См. типы товаров
vcGdsTypeName Varchar2(250) н/д Наименование товарного типа
iGdsClssUnitId TId н/д ID основной ЕИ товара См. Единицы измерения
vcGdsClssUnitName Varchar2(50) н/д Полное наименование основной ЕИ
vcGdsClssUnitShortName Varchar2(10) н/д Краткое наименование основной ЕИ
vcOKEI Varchar2(250) н/д Код ЕИ по справочнику ОКЕИ
iCountryId TId н/д ID страны производства товара См. Справочник стран
vcCountryName Varchar2(80) н/д Наименование страны производства
iBrandNameId TId н/д ID бренда товара См. Справочник брендов
vcBrandName Varchar2(50) н/д Наименование бренда
iColorId TId н/д ID цвета (расцветки товара) См. Справочник цветов
vcColorName Varchar2(250) н/д Наименование цвета (расцветки)
iDeputyId TId н/д ID отдела
vcDeputyName Varchar2(100) н/д Название отдела
decPrice Number н/д Цена товара Действующая розничная цена
iCurrencyId TId н/д ID валюты цены См. V_E_Currency
vcCurrencyShortName Varchar2(5) н/д Краткое наименование валюты цены
decQnt Number н/д Свободный остаток Общий свободный остаток на всех складах

 

V_E_GdsClssTree

Товарный справочник с учетом древовидной структуры. Представление закрыто для редактирования. Представление отображает классификатор с информацией о связях родительских и дочерних позиций. Так как одна товарная позиция может находиться в разных папках, то в данном представлении один и тот же артикул может встречать несколько раз.

Поле Тип Требуемое Значение Комментарий
iGdsTreeId TId н/д ID связи товаров Глобальный ID, на который ссылаются дочерние позиции через поле iParentId
iGdsClssId TId н/д ID товара (внутренний артикул) Глобальный ID
vcName Varchar2(4000) н/д Полное наименование товара Формируется согласно маске наименования
iIsFolder Number н/д Признак папки 0 – для товаров, 1 – для папок
iIsService Number н/д Признак услуги 0 – для товаров, 1 – для услуг
iGdsTypeId TId н/д ID товарного типа См. Типы товаров
vcGdsTypeName Varchar2(250) н/д Наименование товарного типа
iGdsClssUnitId TId н/д ID основной ЕИ товара См. Единицы измерения
vcGdsClssUnitName Varchar2(50) н/д Полное наименование основной ЕИ
vcGdsClssUnitShortName Varchar2(10) н/д Краткое наименование основной ЕИ
vcOKEI Varchar2(250) н/д Код ЕИ по справочнику ОКЕИ
iCountryId TId н/д ID страны производства товара См. Справочник стран
vcCountryName Varchar2(80) н/д Наименование страны производства
iBrandNameId TId н/д ID бренда товара См. Справочник брендов
vcBrandName Varchar2(50) н/д Наименование бренда
iColorId TId н/д ID цвета (расцветки товара) См. Справочник цветов
vcColorName Varchar2(250) н/д Наименование цвета (расцветки)
decPrice Number н/д Цена товара Действующая розничная цена
iCurrencyId TId н/д ID валюты цены См. V_E_Currency
vcCurrencyShortName Varchar2(5) н/д Краткое наименование валюты цены
decQnt Number н/д Свободный остаток Общий логический остаток на всех складах
iParentId TId н/д Ссылка на ID родительской позиции ID, который хранится в поле iGdsTreeId родительской позиции
iGdsClssId_Parent TId н/д ID (внутренний артикул) родительской позиции

 

V_E_GdsClssUnit

Справочник единиц измерения (ОКЕИ) Единицы измерения. Представление недоступно для редактирования.

Поле Тип Требуемое Значение Комментарий
iGdsClssUnitId TId н/д ID единицы измерения Глобальный ID
vcGdsClssUnitName Varchar2(50) н/д Наименование единицы измерения
vcGdsClssUnitShortName Varchar2(10) н/д Краткое наименование ЕИ
vcOKEI Varchar2(250) н/д Код ЕИ по ОКЕИ

 

V_E_GdsCompl

Дерево комплектации товара Занесение производимого изделия. Представление недоступно для редактирования.

Поле Тип Требуемое Значение Комментарий
iGdsCompld TId н/д ID товарной позиции Глобальный ID
iGdsClssId TId н/д ID (артикул) комплекта Классификатор
iGdsClssId_In TId н/д ID (артикул) комплектующей Классификатор
decQnt Number(30, 10) н/д Кол-во комплектующей в комплекте
vcGdsClss Varchar2(4000) н/д Наименование комплекта
vcGdsClss_In Varchar2(4000) н/д Наименование комплектующей

 

V_E_GdsPos

Список товарных позиций в документах. Представление доступно для редактирования. Для получения списка позиций по конкретному документу необходимо выполнить запрос с наложением условия по полю iDocumentId.

Поле Тип Требуемое Значение Комментарий
iGdsPosId TId Да ID товарной позиции Глобальный ID
iDocumentId TId Да ID документа, в котором находится позиция См. V_E_Document
iGdsClssId TId Да ID товара (внутренний артикул) См. V_E_GdsClss
vcName Varchar2(4000) н/д Полное наименование позиции Формируется автоматически в зависимости от товарного типа. Обычно представляет собой наименование товара из классификатора
decQnt Number(36, 16) Да Количество в указанной ЕИ
iGdsClssUnitId TId Нет ID ЕИ, в которой указано количество
vcGdsClssUnitShortName Varchar2(10) н/д Краткое наименование ЕИ
decPrice Number Да Цена за единицу товара
iCurrencyId Number н/д ID валюты цены Используется валюта, указанная в документе
vcCurrencyShortName Varchar2(5) н/д Краткое наименование валюты
decSum Number н/д Сумма позиции Вычисляется автоматически как произведение цены и количества
decSumNDS Number н/д Сумма НДС по позиции Вычисляется автоматически в соответствии с налоговой ставкой и схемой налогообложения
cbComment Clob Нет Комментарий к позиции

 

V_E_GdsTree

Организация древовидной структуры товарного справочника. Представление закрыто для редактирования. В представлении отображается информация, в какой папке находится товар или папка. Связь осуществляется через поля iGdsTreeId и iParentId.

Поле Тип Требуемое Значение Комментарий
iGdsTreeId TId н/д ID узла Глобальный ID
iGdsClssId TId н/д ID товара (внутренний артикул) См. V_E_GdsClss
iParentId TId н/д ID родительского узла Ссылка на iGdsTreeId родительского узла
iIsFolder Number н/д Признак папки 0 – для товара, 1 – для папки

 

V_E_LinkFixOst

Справочник товарных остатков Остатки по товару. Представление недоступно для редактирования. В представлении отражены текущие остатки товара на различных документах. Количество указано в основных единицах измерения товара. Если необходимо просмотреть остатки только на складах, необходимо сделать выборку из данного представления с наложением условия iDocumentTypeId = 1 (1 – вид документа «Склад» Виды Документов).

Поле Тип Требуемое Значение Комментарий
iViewFixOstId TId н/д ID вида остатка Ссылка на справочник видов товарных остатков V_ViewFixOst
iDocumentId TId н/д ID документа Ссылка на документ, на котором имеется остаток
iDocumentTypeId TId н/д ID вида документа Ссылка на вид документа, к которому относится документ из поля iDocumentId
iId TId н/д Локальный ID документа Локальный ID документа, указанного в поле iDocumentId
iGdsClssId TId н/д ID (артикул) товара Ссылка на товарный справочник V_E_GdsClss
decQnt Number н/д Количество (остаток) Товарный остаток в основных ЕИ товара
vcViewFixOstName Varchar2(50) н/д Наименование остатка
vcDocumentName Varchar2(150) н/д Наименование документа
vcGdsClss Varchar2(4000) н/д Наименование товара
vcGdsClssUnitName Varchar2(50) н/д Полное наименование ЕИ

 

V_E_TmcType

Справочник типов документов. Представление недоступно для редактирования.

Поле Тип Требуемое Значение Комментарий
iTmcTypeId TId н/д ID типа документа Глобальный ID
vcTmcType Varchar2(100) н/д Название типа документа
iParentId TId н/д ID родительского типа документа Ссылка на iTmcTypeId типа документа, в который входит данный тип
iDocumentTypeId TId н/д ID вида документа Ссылка на вид документа, к которому применим данный тип документа

 

V_E_ViewFixOst

Справочник типов товарных остатков. Представление недоступно для редактирования.

Поле Тип Требуемое Значение Комментарий
iViewFixOstId TId н/д ID типа остатка Глобальный ID
vcViewFixOstName Varchar2(50) н/д Наименование остатка
vcViewFixOstShortName Varchar2(10) н/д Краткое наименование остатка

 

Хранимый пакет Pck_InterShop

В пакете Pck_InterShop реализованы процедуры и функции для добавления записей в редактируемые представления, а также вспомогательные процедуры. Все функции по добавлению записей выполняют действия, аналогичные ручной вставке записей в представления и возвращают глобальный ID добавленной записи.

Также в этом пакете описан базовый тип TId, используемый при обращении к параметрам процедур пакета, содержащих глобальные или локальные ID (первичные и внешние ключи).

В пакете Pck_InterShop описаны типы ошибок (Exception), которые могут возникать при работе с процедурами пакета. Следует обратить внимание, что помимо описанных в пакете типов ошибок, могут также возникать ошибки на уровне логики базы данных и на уровне СУБД.

<

Тип данных Описание
TId Тип данных и параметров процедур, хранящих уникальные идентификаторы записей.
Тип ошибки Описание
Err_Changing_Nil_Record Попытка редактирования или удаления записи (в физической таблице) с ID, равным нулю. Такие записи являются служебными, служат для «пустых» внешних ключей и недоступны для редактирования.
Err_Unknown_Table Попытка получить информацию из неизвестной таблицы или представления. Например, попытка получить новый ID с помощью функции NextID, когда в качестве параметра передано неправильное название представления.
Err_Required_Field Попытка вставить запись, для которой определены не все обязательные для заполнения поля.
Имя функции Описание
NextID Вспомогательная функция для получения нового уникального глобального ID для добавления новой записи в представление.
InsClient Добавление новой записи в список клиентов (представление V_E_Client).
InsFirm Добавление новой записи в список ЮЛ (представление V_E_Firm).