<< Нажмите для отображения Оглавления >>

Навигация:  Для разработчиков >

Доработка сервера обмена под не типовые конфигурации 1С:Предприятие а также под другие учётные системы

 

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

При использовании других учётных систем можно использовать коммуникационные средства PocketServer.dll через механизмы технологии COM и технологии создания внешних компонент 1С:Предприятие в соответствии с протоколом обмена с КПК.

 

Принятые обозначения

 

<Параметр> - строковый параметр, который обязательно должен присутствовать.

[Параметр или набор параметров] – один или несколько параметров, которые можно указывать или не указывать. Может быть повторён неограниченное количество раз, но только полностью.

\r\n – разделитель строк, символы 0Dh 0Ah.

\t – символ табуляции 09h.

ЖирныйШрифт – уникальный во всех запросах и ответах идентификатор, ссылка на параметр из другого запроса или ответа.

 

Протокол обмена с КПК

 

Обмен с КПК выполняется через внешнюю компоненту PocketServer.dll. Инициатором обмена всегда выступает КПК. 1С:Предприятие получает запрос, формирует и отправляет ответ в КПК. Все запросы и ответы представляют собой текстовые строки, разделяемые символами CR/LF, за исключением ответа на запрос на обновление программы. Весь поток данных от сервера к КПК сжимается по алгоритму ZIP. Вся работа по сжатию выполняется PocketServer.dll.

При поступлении запроса от КПК происходит вызов процедуры ОбработкаВнешнегоСобытия. Первый параметр содержит строку "PocketServer", второй – код сеанса связи с КПК, третий – тело запроса.

Формат запроса от КПК:

<ВерсияПротоколаОбмена>\r\n

<Платформа>\r\n

<КодАгента>\r\n

<КодЗапроса>\r\n

[ПараметрыЗапроса]

 

Описание параметров:

ВерсияПротоколаОбмена – совпадает с версией Моби-С на КПК.

КодАгента – как он задан в диалоге Параметры в Моби-С на КПК. В коде агента через разделитель Символ(30) можно передать пароль на обмен.  Если пароль с КПК не совпадает с паролем из 1С, необходимо вернуть ответ WRONG_PASSWORD.

Платформа - используемая мобильная платформа WM или Android.

КодЗапроса – строка, идентифицирующая запрос .

 

Описание запросов

 

Примечание общее для всех запросов и ответов:

Порядок – число, указывающее в какой последовательности отображать или перебирать значения в КПК при выборе пользователем. Первым будет отображено значение с минимальным Порядком, далее по возрастанию. Например, для единиц, если нужно чтобы первой отображалась единица "упак.", затем "шт.", затем "ящик", то порядок должен быть 1, 2 и 3 соответственно.

КраткоеНаименование пользователь увидит в КПК, ПолноеНаименование печатается в документах.

Другие возможные ответы

Если первая строка ответа не <OK>, то она будет выведена пользователю КПК.

 

В различных реквизитах протокола обмена используются кодовые обозначения обьектов Моби-С

Обьект

Код

Наименование

Клиент

1


Товар

4


Заказ

14

Orders

Заказ табличная часть

15


Продажа

12

Invoices

Продажа табличная часть

13


Покупка

16

ReceiptInvoices

Покупка табличная часть

17


ПКО

18

PKOs

Анкета

19


Новый клиент

29


Наличие и цены

37

Inventories

Отчет о выполнении

35


Наличие и цены табличная часть

38


Журнал документов

-1


 

Порядок работы с PocketServer.dll

 

1.Загрузить внешнюю компоненту PocketServer.dll.

2.Создать объект AddIn.Server. В дальнейшем будем называть его Сервер.

3.Выполнить инициализацию Сервера методом Инициализация с параметром номер порта обмена. По умолчанию, выбран 1234. Метод возвращает 1 – успешно, 0 – неудача. Номер порта устанавливается во внешнем отчети и в КПК на закладке Базы.

4.При получении запроса от КПК будет вызвана процедура ОбработкаВнешнегоСобытия. Первый параметр содержит строку "PocketServer", второй – идентификатор текущего подключения. Он будет использоваться при отправке данных в КПК, третий параметр – текст запроса.

5.Для ответа на запрос вызвать метод Сервера ПослатьОтвет. Первый параметр – идентификатор подключения, второй – текст ответа, третий – 1 – это последние данные в сеансе связи (т.е. завершить передачу данных в КПК), 0 – в противном случае.

6.Завершить обработку запроса методом ЗапросОбработан.

7.При закрытии обработки вызвать метод Сервера Завершить.

 

При завершении обмена, необходимо последним символом отправить символ с кодом 0, затем послать управляющий код КонецПотока.