AllegroClient

«AllegroClient» – бесплатная универсальная программа для интеграции терминалов сбора данных (ТСД) Motorola и Casio с системой 1С, а также для мобильных телефонов на ОС Android. Программный продукт позволяет адаптировать всевозможные бизнес процессы под любые конфигурации 1С версий 8.2 и выше. Преимущественное отличие от других систем – вся разработка логики работы клиента на ТСД осуществляется на стороне 1С и не требует от программиста 1С отдельных знаний.  Программа позволяет быстро настроить операции на ТСД в связке с 1С.  Конструирование форм и программирование обработчиков событий осуществляется во внешней обработке, что в свою очередь не требует изменений в конфигурации 1С.

Перечень возможных складских операций:

  • Сбор штрих-кодов
  • Инвентаризация
  • Приемка
  • Перемещение между адресами хранения
  • Размещение на складе
  • Оприходование и списание
  • Возврат товаров

и многие другие.

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

Из представленной схемы видно, что программный продукт состоит из трех частей:

«Сервер ТСД» – приложение на стационарном компьютере, поддерживающее связь терминалов и стационарного компьютера, а так же осуществляющее обмен с 1С. Для обеспечения неснижаемой скорости обмена с 1С, при увеличении количества соединений или увеличении интенсивности обмена, «Сервер ТСД» создает пул com-соединений, наращивая или снижая количество данных соединений в зависимости от нагрузки. Ниже представлен внешний вид «Сервера ТСД».

Клиент – приложение, работающее на ТСД, логика работы которого, настраивается на стороне 1С.

Внешняя обработка 1С – модуль в котором содержаться макеты форм и программный код , описывающий работу приложения. В поставке содержится три демонстрационные обработки для моделей ТСД Motorola MC3XXX и MC9XXX, а так же ждя мобильных телефонов на ОС Android. В обработках содержатся операции: инвентаризация и сбор штрих-кодов. Предназначено для конфигурации «Управление торговлей 11».

 

Распространение:
Свободно

 

Количество одновременно работающих ТСД в сети
Не ограничено

 

Перечень совместимых терминалов сбора данных:
Все модели Motorola и Casio поддерживающие Wi-Fi

 

Подготовка системы и установка

 

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

Компьютер, который будет поддерживать связь с ТСД должен иметь следующую конфигурацию:

  •  Операционную систему — Windows XP/2000/2003/Vista/7/8
  • Microsoft.NET framework 3.5
  • Важно! Система 1С версии 8.2 и выше.
  • Средство связи с ТСД Microsoft ActiveSync 4.2 или Windows Mobile Device Center для операционных систем Vista/7/8
    Для связи ТСД и стационарного компьютера необходимо наличие коммуникационного оборудования и набора интерфейсных кабелей.

Установка «Сервера ТСД»

Для установки необходимо:

  • Установить Microsoft.NET FrameWork 3.5, если требуется.
  • Запустить файл SetupAllegroClient.msi и следовать инструкциям мастера установки.
  • Скопировать обработку «АллегроКлиент.epf» в любое место на диск ПК (обработка содержится в поставке «AllegroClient» для ОС Android «АллегроКлиент_Android.epf»).

Установка Клиента на ТСД

Для установки клиента на терминал необходимо запустить «Server TSD» из меню «Пуск ->Программы -> Allegrosoft->AllegroClient->ServerTSD» . В открывшимся окне меню «Сервис-> Установка клиента», открываем окно установки приложения на терминал.

В выпадающем списке выбираем операционную систему и модель Вашего терминала и нажимаем установить.

Важно! Если вы используете операционные системы Vista или Windows 7/8, по причине того что в данных системах предъявлены повышенные требования к политике безопасности, при установке может возникать ошибка. Для устранения этой проблемы нужно открыть полный доступ к папке C:\Windows\WindowsMobile.

На терминале появится диалоговое окно, установки приложения на терминал, необходимо нажать «Enter», после чего начнется установка приложения. После установки «AllegroClient» , для работоспособности приложения необходимо установить Microsoft.NET Compact framework 3.5 на терминал. Для этого в окне установки клиента, требуется нажать «Установить Compact framework 3.5». Необходимо выполнить аналогичные процедуры, как при установке приложения. Если после установки приложение не запускается, произвести повторную установку приложения.
Если не удается установить клиента с помощью данного меню, то необходимо из каталога программы из папки «ForClient» перекопировать файлы на ТСД и запустить установку на устройстве. Для операционной системы Windows Mobile нужно скопировать MotorolaWM.CAB и NETCFv35.cab, для операционной системы Windows CE MotorolaCE.CAB и NETCFv35.wce.armv4.cab.
После установки можно приступать к настройке системы «AllegroClient».

 

 

Настройки системы «AllegroClient»

 

Настройки сервера «Сервер ТСД»

Окно настроек открывается в главном окне приложения «Сервер ТСД» в меню «Сервис->Настройки».

В данном меню устанавливаются настройки соединения с системой 1С.
Для файловой системы 1С, устанавливаем флажок «Файловая база», заполняем следующие настройки:

  • База — путь к базе 1С.
  • Пользователь — указываем пользователя 1С(должен иметь права администратора)
  • Пароль- пароль пользователя 1С
  • Имя функции- указываем имя функции «ОбработкаЗапросаСервераТСД», данная функция содержится в обработке, которая имеется в комплекте поставки.
  • Версия 1С8 — для 1С версии 8.2 ставим 2 для 8.3 соответственно 3
  • Порт — любой, укажем 2001 (в дальнейшем этот же порт установим в настройках клиентского приложения)
  • Обработка — путь к обработке «АллегроКлиент.epf» (обработка содержится в поставке «AllegroClient» для ОС Android «АллегроКлиент_Android.epf»)Важно! Пользователь 1С, которого указываете в настройках сервера, должен иметь режим запуска «Обычное приложение».

 

Для серверной системы 1С, снимаем флажок «Файловая база», заполняем следующие настройки:

  • Сервер — наименование сервера 1С.
  • База — наименование базы 1С.
  • Пользователь — указываем пользователя 1С (должен иметь права администратора)
  • Пароль- пароль пользователя 1С
  • Имя функции- указываем имя функции «ОбработкаЗапросаСервераТСД».
  • Версия 1С8 — для 1С версии 8.2 ставим 2 для 8.3 соответственно 3
  • Порт — любой, укажем 2001 (в дальнейшем этот же порт установим в настройках клиентского приложения)
  • Обработка — путь к обработке «АллегроКлиент.epf» (обработка содержится в поставке «AllegroClient» для ОС Android «АллегроКлиент_Android.epf»)

Важно! Если вы используете операционные системы Vista или Windows 7/8, по причине того что в данных системах предъявлены повышенные требования к политике безопасности,при сохранении настроек может возникать ошибка. Для устранения этой проблемы нужно открыть полный доступ к папке где установлена программа.

После сохранения настроек, запускаем «Сервер ТСД», кнопка «Запуск».

Конфигурирование программы

 

Подготовка макетов форм

Макет формы, который в дальнейшем будет отображаться на ТСД, проектируется на стороне 1С во внешней обработке, путь к которой ранее указали в настройках «Сервера ТСД». Размер формы должен соответствовать разрешению экрана ТСД.

Важно!Разработка форм осуществляется в режиме не управляемых форм.

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

  • Поле ввода
  • Поле ввода с типом «Дата»
  • Флажок
  • Надпись
  • Кнопка
  • Поле выбора

Для перечисленных элементов формы присутствует возможность редактирования размера шрифтов.

В обработке можно создать несколько макетов форм, каждая форма будет соответствовать отдельной операции, которую хотите реализовать. На стороне клиента формы будут динамически формироваться на основе считываемых параметров и размеров элементов, смоделированных в формах 1С.

На стороне ТСД список форм будет выглядеть так:

На устройстве на ОС Android

Allegro_android1

 

Пример макета формы в 1С в конфигураторе (форма «Инвентаризация») :

Отображение данной формы на ТСД:

на устройстве на ОС Android

Allegro_android2

Для работы программы на ТСД с макетами форм 1С, необходима промежуточная загрузка параметров форм из 1С в xml — файлы, для этого в меню «Сервера ТС» необходимо выбрать «Загрузка параметров форм», откроется окно, в котором нужно подтвердить загрузку. Если загрузка прошла успешно, то появится список загруженных форм.

Программирование логики работы системы

 

Вся логика работы разрабатывается в той же обработке что и проектировка форм. Разработка осуществляется в модуле обработки в экспортной функции (имя функции указывали ранее в настройках «Сервера ТСД» — ОбработкаЗапросаСервераТСД).

Функция содержит 5 входящих параметров:

  • КодСотрудника
  • Событие
  • НаименованиеФормы
  • Данные
  • МассивСКонтролами

А теперь подробнее о каждом параметре.

КодСотрудника – данный параметр необходим для авторизации сотрудника на клиенте, можно использовать любой реквизит, однозначно идентифицирующий пользователя 1С, лучше использовать короткий набор символов для быстрого набора в поле авторизации ТСД.

Событие– наименование события от клиента. Необходимо выделить два типа событий зарезервированные системой и не зарезервированные.

Зарезервированные события

Identification – событие срабатывает при авторизации на клиенте. В этом событии необходимо сделать проверку параметра «КодСотрудника».

GetList – событие срабатывает при нажатии на ТСД клавиши «Еnter» на элементе «Поле выбора», при этом параметр «Данные» возвращает наименование «Поля выбора». В данном событие нужно из функции возвратить com-массив, которым будет заполнен элемент «Поле выбора».

Scan – событие срабатывает при сканировании. Параметр «Данные», при срабатывании события, возвращает отсканированный штрих-код.

Не зарезервированные события

Данные события возникают при нажатии кнопок на экране ТСД. Событие имеет наименование такое же, как наименование кнопки, присвоенное при разработке форм.

НаименованиеФормы — наименование текущей формы, в которой происходит работа на ТСД. Возвращается при любом событии кроме «Identification».

Данные – возвращает штрих-код при событии «Scan» или наименование «Поля выбора» при событии «GetList».

МассивСКонтролами – Сом-массив в строках которого содержаться все наименования элементов формы текущей формы с их текущими значениями. Строка массива имеет следующий формат: НаименованиеЭлемента;ЗначениеЭлемента. Значение элемента – строковое представление значения элемента формы . Для некоторых элементов есть свои особенности. Для элемента «флажок» — значения «1»/ «0» соответственно включен/выключен. Для элемента «Поле ввода» с типом «Дата» — «xx.xx.xxx», где через точку день, месяц, год.

При возврате функции нужно сформировать аналогичный com-массив как в параметре «МассивСКонтролами», можно возвращать только те элементы, которые нужно изменить, при этом, хотя бы один элемент в массиве должен присутствовать.

Для того что бы отобразить ошибку на ТСД в виде предупреждения, необходимо возвратить один элемент com-массива в следующем формате –«ERROR,Текст ошибки».

Так же, для того чтобы не менять элементы формы, можно возвратить com-массив с элементом «SUCCESS,».

Если необходимо вызвать «Диалог вопроса», то необходимо в возвращаемый com-массив добавить элемент -«DoQueryBox; Текст вопроса;», на ТСД, после нажатия «Yes/No» отработает событие и отдельные параметры будет иметь следующие данные:

  • Событие – наименование предыдущего события.
  • МассивСКонтролами – все элементы формы плюс «DoQueryBox» со значением «1», если была нажата клавиша «Yes», значение «0», если была нажата клавиша «No».
  • Данные – штрих-код, если предыдущие событие было «Scan».Из выше описанного видно, что функция на стороне 1С принимает исчерпывающую информацию о текущей форме на ТСД, задача программиста обработать входящие параметры, произвести необходимые операции с базой и возвратить необходимые данные для изменения значений элементов на форме ТСД.

    Настройка и работа клиента на ТСД

     

 

При первом запуске клиента, откроется окно с настройками:

Окно настроек имеет четыре пункта:

  • IP адрес сервера — IP адрес ПК, на котором установлен «Сервер ТСД».
  • Порт – порт, который был указан в настройках «Сервера ТСД»
  • Время ожидания — время ожидания ответа от сервера в секундах, рекомендуем установить 20 секунд
  • Постоянное соединение — при установленном флажке клиент поддерживает постоянное соединение с «Сервером ТСД», при этом обеспечивается максимальная скорость обмена, в противном случае, соединение устанавливается только в момент обмена.

После сохранения настроек появится окно авторизации:

Если были правильно указаны настройки, то на «Сервере ТСД» отобразится событие «Подключение». После подтверждения авторизации появится список форм (операций), которые были созданы в обработке 1С. После выбора необходимой операции, можно начинать работу с программой по алгоритму, заложенному на стороне 1С.

Простой пример

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

Создаем форму в обработке 1С «ПроверкаНоменклатуры», с размерами экрана ТСД.

На форму поместим два элемента формы: Надпись «Номенклатура» и надпись «Информация». В модуль обработки добавляем следующий код:

Сохраняем обработку. Загружаем данные параметров формы из 1С. Открываем на ТСД данную форму, при сканировании получаем следующий результат:

В поставке представлены демонстрационные обработки, в которых содержатся более сложные примеры. В обработках рассмотрены принципы работы со всеми элементами форм, доступные для разработки в системе «AllegroClient». В обработках представлены три операции: инвентаризация, остатки и цены и сбор ширих-кодов. Пример предназначен для конфигурации «Управление торговлей 11» . Так же вы можете ознакомиться с платной версией программы AllegroClient-prof с более широкими возможностями.

СКАЧАТЬ

 

9 комментариев to “AllegroClient”

  1. Валерий

    Здравствуйте, очень интересная разработка. А на ТСД OPTICON не получится поставить?

    Ответить
  2. Вячеслав

    Добрый день! По какой причине не работает ДокОбъект=ДокСсылка.ПолучитьОбъект()? В примерах есть такой код, а в реалии выдает ошибку…

    Ответить
      • Вячеслав

        Ошибка выполнения метода 1С!Адресат вызова создал исключение.
        Возникает при попытке получить объект инвентаризации из ссылки:
        ИнвентаризацияСсылка = Документы.ИнвентаризацияТоваровНаСкладе.НайтиПоНомеру(СокрЛП(НомерДок), ТекущаяДата());

        Если ИнвентаризацияСсылка = Документы.ИнвентаризацияТоваровНаСкладе.ПустаяСсылка() Тогда
        Возврат СформироватьОшибку(МассивДляОтправки,»Не найден документ №»+НомерДок);
        КонецЕсли;

        ИнвентаризацияОбъект = ИнвентаризацияСсылка.ПолучитьОбъект();
        …. Тут и валится.

        Ответить
        • igor

          Посмотрите модуль документа, возможно есть места в коде, которые не отрабатываются во внешнем соединение.

          Ответить
  3. Николай

    Добрый день!
    У меня ТСД MobileBase DS5. В обработке не поступает событие «SCAN».
    Год назад на моторолле все работало.
    Это из-за модели ТСД? Или Вы в программе что-то поменяли.

    Ответить

Оставить комментарий

  • (will not be published)