Планы обмена для мобильного приложения
Петр К.
05.03.2018
20 понравилось
300 просмотров

Планы обмена для мобильного приложения

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


Давайте рассмотрим на примере создание двустороннего обмена мобильного устройства и базы. Для начала создадим новую базу, назовем ее "Центральная база", назначение использования как на скриншоте:

И укажем версию:

Теперь создадим объекты метаданных для ввода данных и тестирования обмена данными. Создадим справочник, документ и регистр сведений:
1) Справочник "Номенклатура":

2) Создадим документ "Установка цен номенклатуры": реквизиты
Номенклатура - тип "СправочникСсылка.Номенклатура"
Цена - тип Число

3) Создадим  регистр сведений "Цены номенклатуры":

Периодичность: в пределах дня
Режим записи: в пределах дня
Добавляем измерение: Номенклатура - тип "СправочникСсылка.Номенклатура";
Ресурс: Количество - тип Число.
Для документа "Установка цен номенклатуры" напишем процедуру проведения.

Создадим план обмена, установим ему имя "МобильныйОбмен". В состав плана обмена включим созданные метаданные (справочник, документ и регистр сведений).  Для всех выбранных объектов разрешим авторегистрацию.

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

Пришло время добавить обработку команды:

Для обмена данными нам будет необходим веб-сервис. Давайте создадим его и присвоим ему имя "WebОбмен". Предлагаю использовать для обмена данными хранилище значения, т.к. хранилище значения сжимает данные и это очень важно для мобильного трафика, и хранилище значения может быть сериализовано в/из XDTO.

Заполним URI пространства имен: Data,

Пакеты XDTO: http://v8.1c.ru/8.1/data/core,

Имя файла публикации: WebОбмен.1cws.

Добавим операцию: Синхронизация,
Тип возвращаемого значения: ValueStorage (http://v8.1c.ru/8.1/data/core).


У вас есть вопрос, нужна помощь консультанта?

Оставьте номер телефона и мы перезвоним!

Добавляем параметр "Данные" и установим ему тип значения: ValueStorage (http://v8.1c.ru/8.1/data/core).

Для операции Синхронизация добавим процедуру Синхронизация:

Необходимо опубликовать мобильное приложение:

а потом переходим в Администрирование -> Публикация на веб-сервере и публикуем базу на веб-сервере:

Теперь добавляем базу на мобильном устройстве включаем перезапуск из конфигуратора и разрешаем отладку. Также необходимо прописать адрес сервера отладки.

Настраиваем планы обмена в базе и на мобильном приложении следующим образом:

  • в базе:

  • в мобильном приложении:

Теперь создаем в мобильном приложении номенклатуры и документ и записываем:

В базе создаем номенклатуру:

Теперь в мобильном приложении нажимаем кнопку "Выполнить синхронизацию с БД":

И видим результат, номенклатура созданная в базе появилась на мобильном устройстве, а в базе появилась номенклатура созданная в мобильном приложении:

  • в мобильном приложении:

  • в базе:

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

 

 

Эта статья помогла вам?

Теги:

Комментарии ( 0 )

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