АВТ: Модуль интеграции c
ActivePOS SDK
Москва
Фирма ООО «Автоматизация.Внедрение.Технологии»
2015
ОГЛАВЛЕНИЕ
Оглавление
НАЗНАЧЕНИЕ КОНФИГУРАЦИИ 3
ПОДКЛЮЧЕНИЕ ДОПОЛНЕНИЯ В ТИПОВУЮ КОНФИГУРАЦИЮ 4
ОПИСАНИЕ ОБЪЕКТОВ МОДУЛЯ ИНТЕГРАЦИИ SDK 7
РЕАЛИЗОВАННЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ ОБЩИХ МОДУЛЕЙ 9
ОСНОВНЫЕ ТИПЫ СОБЫТИЙ ACTIVEPOS 14
НАЗНАЧЕНИЕ КОНФИГУРАЦИИ
Модуль «АВТ: Модуль интеграции с ActivePOS SDK» является дополнением к конфигурациям 1С на платформе 1С:Предприятие 8, работающих как в режиме управляемого приложения, так и в обычном режиме. Данное дополнение встраивается в используемую конфигурацию и предоставляет набор общих модулей и дополнительных объектов для настройки и отсылки событий ActivePOS из 1С в Trassir.
В состав поставки входит пример работы с данным модулем.
ПОДКЛЮЧЕНИЕ ДОПОЛНЕНИЯ В ТИПОВУЮ КОНФИГУРАЦИЮ
-
Запустите установку файла setup.exe. Программа установит необходимые файлы в каталог шаблонов 1С или выбранный Вами. Если Вы не знаете каталог шаблонов, его можно посмотреть. Для этого запустите 1С и меню выбора информационной базы, нажмите пункт «Настройка».
-
Откройте текущею информационную базу в режиме «Конфигуратор» и сделайте архивную копию!
-
Если у Вас не открыто окно конфигурации. Выберите пункт меню «Конфигурация» - «Открыть конфигурацию».
-
Если на корне дерева конфигурации установлен замок, то необходимо включить возможность изменения конфигурации.
-
Для включения возможности изменения конфигурации необходимо зайти в пункт меню «Конфигурация» - «Поддержка» - «Настройка поддержки». Кнопка «Включить возможность изменения».
-
Далее необходимо выбрать пункты указанные ниже:
-
Далее выберите файл 1Cv8.cf из папки с шаблонами из каталога AVT/APOS/ нужного релиза.
-
Далее на вопрос о постановку на поддержку ответьте «Да».
-
В списке новых объектов будут присутствовать 3 объекта, с которых снят флаг для объединения – это справочник «Товары» и документ «Накладная» и общий модуль «АВТДемонстрационнйМодульКлиент» - они нужны для демонстрации возможностей модуля, если они нужны в рабочей конфигурации, то их можно пометить для объединения.
-
Уберите саму верхний флаг у названия конфигурации и нажмите кнопку «Выполнить». В новом окне о смене режимов редактирование объектов нажмите «ОК»
-
В окне о не разрешенных ссылках нажмите «Продолжить». Окно будет только в том случае, если не были помечены для объединения справочник «Товары» и «Накладная» и общий модуль «АВТДемонстрационнйМодульКлиент».
-
Для пользователей, по которым будет отсылаться события необходимо назначить права на чтение объектов входящих в подсистему «AcitvePOSSDK».
-
На компьютерах, с которых будут посылаться события, из каталога с шаблоном конфигурации необходимо зарегистрировать компоненту Socket.dll под правами администратора командой «regsvr32».
ОПИСАНИЕ ОБЪЕКТОВ МОДУЛЯ ИНТЕГРАЦИИ SDK
Форма настроек интеграции с ActivePOS доступна в меню ActivePOS SDR предназначена для просмотра и редактирования настроек передачи данных на сервер Trassir.
С помощью данной формы пользователю предоставляется возможность включения/отключения модуля отправки сообщений о событиях на сервер Trassir. При снятом флажке будет полностью отключен функционал интеграции с ActivePOS. Для каждого компьютера с которого будет происходить отсылка событий необходимо задать IP-адрес сервера Trassir и порт, соответствующие камере, которая будет связано с конкретным компьютером.
Важно: Порт должен соответствовать порту, указанному в настройках серверной части Trassir для выбранного компьютера.
Данные о настройках записываются в регистр сведений «АВТСоответствиеКомпьютеровИПортов»
Для проверки работы модуля следует использовать пустую базу, которую можно развернуть из шаблона. Это тот же самый cf файл, который используется для объединения с рабочей конфигурацией. Для проверки работы модуля в базе есть справочник «Товары» и документ «Накладная», в котором демонстрируется посылка событий:
-
Создание документа
-
Присвоение номера документа
-
Закрытие документа
-
Добавление товара
-
Изменение цены
-
Изменение количества
РЕАЛИЗОВАННЫЕ ПРОЦЕДУРЫ И ФУНКЦИИ ОБЩИХ МОДУЛЕЙ
ОбщийМодуль.АВТСозданиеXMLДляActivePOSСервер:
-
Функция СоздатьXML(ТипСобытия, СтруктураСобытия, УИД) – служит для генерации строки в виде XML файла. В функцию необходимо передать:
-
ТипСобытия - перечень основных типов событий приведен в разделе «Основные типы событий ActivePOS», а полный перечень смотрите в документации к программе «Trassir»
-
СтруктураСобытия – набор данных для создания xml, в структуре есть как обязательные поля, которые добавляются в данной процедуре (тип события, УникальныйИдентификатор, дата и время, пользователь), а часть необходимо добавлять в зависимости от типа события. Данные поля указаны в разделе «Основные типы событий ActivePOS», более подробную информацию смотрите в документации к программе Trassir
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
Функция возвращает строку XML файла.
-
Функция ПолучитьПараметрыПодключенияКСерверу(ИмяПК) – по переданному символьному представлению имени компьютера возвращает IP адрес и порт подключения к Трассиру в регистре сведений «АВТСоответствиеКомпьютеровИПортов». В функцию необходимо передать:
Функция возвращает структуру со свойствами «ИПСервера», «Порт».
-
Процедуры ЗаписатьВЖурналРегистрацииОшибка и ЗаписатьВЖурналРегистрацииИнформация – осуществляют запись данных в журнал регстрации, либо с типом ошибка, либо с типом информация. В процедуру необходимо передать:
-
ИмяСобытия – строковое представление события для дальнейшего поиска пользователем в журнале регистрации
-
Сообщение – текст события
-
Функция ИспользуетсяИнтеграцияСActivePOSдляКомпьютера (ИмяПК) – по переданному символьному представлению имени компьютера возвращает признак необходимости отправки событий для данного ПК. В случае если интеграция отключена (константа «АВТИспользоватьИнтеграциюСActivePOS» имеет значение булево), то возвращается Ложь. В процедуру необходимо передать:
Функция возвращает Истина, если необходимо отсылать события с данного компьютера.
ОбщийМодуль.АВТСозданиеXMLДляActivePOSКлиент:
-
Процедура ОтправитьXML(ОтправляемаяСтрока, Сокет) – служит для отправки XML файла (полученной строки) через компоненту сокета. По результатам отправки происходит запись в журнал регистрации. В процедуру необходимо передать:
-
ОтправляемаяСтрока – XML файл
-
Сокет – компонента сокета
-
Процедура ОбработатьОперацию(ТипСобытия, Сокет, СтруктураСобытия, ИмяПК, УИД) – Является центральной процедурой, которая вызывает необходимые функции и процедуры для генерации и отправки события в Трассир, данную процедуру следует использовать в формах объектах для которых будет осуществляется контроль событий. В процедуру необходимо передать:
-
ТипСобытия - перечень основных типов событий приведен в разделе «Основные типы событий ActivePOS», а полный перечень смотрите в документации к программе «Trassir»
-
Сокет – компонента сокета
-
СтруктураСобытия – набор данных для создания xml, в структуре есть как обязательные поля, которые добавляются в данной процедуре (тип события, УникальныйИдентификатор, дата и время, пользователь), а часть необходимо добавлять в зависимости от типа события. Данные поля указаны в разделе «Основные типы событий ActivePOS», более подробную информацию смотрите в документации к программе Trassir
-
ИмяПК - имя компьютера
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Процедура СоздатьПодключениеКСерверу(Сокет, ИмяПК) – подключает компоненту сокета по заданным параметрам в настройке в регистра сведений «АВТСоответствиеКомпьютеровИПортов», при ошибки делает запись в журнал регистрации. В процедуру необходимо передать:
-
Сокет – компонента сокета
-
ИмяПК - имя компьютера
ОбщийМодуль.АВТДемонстрационнйМодульКлиент:
Модуль служит для демонстрации работы интеграции с ActivePOS по нескольким основным событий, все процедуры вызываются :
-
Процедура ОткрытьДокумент(УИД, Сокет)– служит для открытия документа в ActivePOS не является обязательной, но для нормального отображения событий лучше использовать. При вызове данной процедуры на видеопоток будет выведена надпись «Открытие документа» и указан пользователь сеанса, у которого было открытие документа. В процедуру необходимо передать:
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Сокет – компонента сокета
-
Процедура ЗакрытьДокумент(УИД, Сокет)– служит для закрытия документа в ActivePOS не является обязательной, но для нормального отображения событий лучше использовать. При вызове данной процедуры на видеопоток будет выведена надпись «Закрытие документа». В процедуру необходимо передать:
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Сокет – компонента сокета
-
Процедура ПрисвоитьНомерДокумент(УИД, Сокет, Номер)– служит для закрытия документа и указания номера документа в ActivePOS не является обязательной, но для нормального отображения событий и указания номера лучше использовать. При вызове данной процедуры на видеопоток будет выведена надпись «Закрытие документа» и указан номер документа. В процедуру необходимо передать:
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Сокет – компонента сокета
-
Номер – Строка, например номер документа в 1С
-
Процедура ДобавленТовар(УИД, Сокет, СтрокаСостава)– отсылает событие по добавлению товара, но для нормального отображения событий и указания номера лучше использовать. В процедуру необходимо передать:
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Сокет – компонента сокета
-
СтрокаСостава – добавляемая строка документа «Накладная»
-
Процедура ИзмененоКоличество(УИД, Сокет, СтрокаСостава, ПредыдущееКоличество)– отсылает событие по увеличению или уменьшению количества товара. В процедуру необходимо передать:
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Сокет – компонента сокета
-
СтрокаСостава – текущая строка документа «Накладная», в которой меняется количество
-
ПредыдущееКоличество –количество товара до изменения. Мы рекомендуем для хранения предыдущего количества использовать реквизиты формы и заполнять их при начале редактирования строки, а само событие по изменению количества, вызывать при изменении ячейки с количеством
-
Процедура ИзмененаЦена(УИД, Сокет, СтрокаСостава, ПредыдущаяЦена)– отсылает событие по увеличению или уменьшению цены товара. В процедуру необходимо передать:
-
УИД – Уникальный идентификатор документа в ActivePOS, мы предлагаем передавать сюда УникальныйИдентификтор объект из 1С
-
Сокет – компонента сокета
-
СтрокаСостава – текущая строка документа «Накладная», в которой меняется количество
-
ПредыдущаяЦена –цена товара до изменения. Мы рекомендуем для хранения предыдущей цены использовать реквизиты формы и заполнять их при начале редактирования строки, а само событие по изменению цены, вызывать при изменении ячейки с ценой
Все выше перечисленные процедуры вызываются при работе с формой документа «Накладная».
УИД – это уникальный идентификатор в системе ActivePOS, по УИД идет связка событий передаваемых в систему. Тип УИД - это строка. С точки зрения 1С УИД может быть равен Уникальному Идентификатору документа в 1С по которому идет регистрация событий.
Если использовать уникальный идентификатор объекта, то в этому случае возможно объединять события разрозненные во времени по документу. Например, открыли документ, что-то отредактировали, прошло несколько дней, еще раз зашли и что-то еще отредактировали, а в видео архиве можно будет эти события просмотреть в рамках одного документа! Поскольку до записи нового документа такого идентификатора нет, то рекомендуем задавать его искусственно для вновь созданных документов с последующей записью. Для этого можно воспользоваться процедурой глобального контекста и методом объекта перед записью.
Сделать реквизит формы УИД с типом «Уникальный идентификатор»
В процедуре документа ПриСозданииНаСервере использовать следующий код:
А в процедуре ПередЗаписьюНаСервере использовать следующий код
ОСНОВНЫЕ ТИПЫ СОБЫТИЙ ACTIVEPOS
В данном разделе описаны основные события ActivePOS.
Обязательный набор передаваемых данных:
-
event_type - тип события;
-
operation_id - уникальный идентификатор операции (порядковый номер документа);
-
cashier - имя пользователя;
-
date - дата совершения операции (MM/dd/yyyy);
-
time - время совершения операции (hh:mm:ss).
Набор параметров, описывающих операцию:
-
position - номер позиции в чеке;
-
quantity - параметр, содержащий количественную характеристику операции;
-
price - параметр, содержащий информацию о цене или стоимости выполняемой операции;
-
barcode - штрихкод позиции;
-
article - артикул позиции;
-
text - параметр служит передачи текстовой информации об операции (например, наименование позиции, код ошибки и др.).
Тип события (event_type)
|
Описание
|
Дополнительные поля для передачи в структуру события
|
POSNG_RECEIPT_OPEN
|
Начало чека "Продажа"
|
|
POSNG_RECEIPT_SELL_CLOSE
|
Конец чека "Продажа"
|
|
POSNG_RECEIPT_RETURN
|
Начало чека "Возврат"
|
|
POSNG_RECEIPT_RETURN_CLOSE
|
Конец чека "Возврат"
|
|
POSNG_RECEIPT_ANNULMENT
|
Новый чек "Аннулирование"
|
|
POSNG_RECEIPT_CLOSE
|
Конец чека
|
|
POSNG_RECEIPT_CANCEL
|
Аннулирование чека
|
|
POSNG_RECEIPT_DELAY
|
Запись отложенного чека
|
|
POSNG_RECEIPT_RECOVERY
|
Восстановление чека
|
|
POSNG_RECEIPT_NUMBER
|
Номер чека
|
text
|
POSNG_POSITION_ADD
|
Добавление товара в чек
|
Position, quantity, price, barcode, article
|
POSNG_POSITION_AMOUNT_DECREASE
|
Уменьшение количества товара
|
Position, quantity, price, barcode, article
|
POSNG_POSITION_AMOUNT_INCREASE
|
Увеличение количества товара
|
Position, quantity, price, barcode, article
|
POSNG_POSITION_COST_DECREASE
|
Уменьшение цены товара из чека
|
Position, quantity, price, barcode, article
|
POSNG_POSITION_COST_INCREASE
|
Увеличение цены товара из чека
|
Position, quantity, price, barcode, article
|
POSNG_POSITION_CANCEL
|
Отмена товара в чеке
|
Position, quantity, price, barcode, article
|
Полный перечень событий смотрите в документации к программе Trassir.
Поделитесь с Вашими друзьями: |