Методика вызова пользовательских функций в интеграционной обработке из Mobile SMARTS
Новая возможность позволяет получать произвольные наборы данных в онлайн-режиме без необходимости менять основную обработку.
Реализация достигается добавлением общей функции ВызовПроизвольнойФункции в основную обработку, которая выступает в роли прокси и вызывает пользовательскую функцию из интеграционной обработки.
Таким образом, нет необходимости разбираться в логике основной обработки и искать места вставки собственного кода — достаточно ограничиться внесением правок только в интеграционную обработку.
Этот функционал будет полезен партнёрам «Клеверенса», внедренцам и программистам, желающим расширить функционал с помощью онлайн-вызовов к 1С.
Подготовительный этап
-
Активировать работу через web-сервисы или COM-соединение в режиме онлайн.
-
В конфигураторе 1С открыть интеграционную обработку и добавить в её модуль нужную функцию с требуемыми входными параметрами и возвращаемым значением, сделав её экспортной.
-
Добавить вызов метода внешней системы «ВызовПроизвольнойФункции» в конфигурацию Mobile SMARTS в тех местах, где нужно получить данные из 1С, указав имя функции и тип результата.
Конфигурация
-
Для функционирования внешних вызовов должен быть активен онлайн-обмен с 1С.
-
Откройте конфигуратор «1С: Предприятие» для добавления функции, доступной с мобильного устройства, в интеграционную обработку.
-
Запустите интеграционную обработку из директории с базой Mobile SMARTS.
-
В общем модуле объекта интеграционной обработки добавьте свою функцию, которая обязательно должна быть экспортной.
-
Сохраните изменения и обновите интеграционную обработку в справочнике «Дополнительные отчеты и обработки». Подробности в статье.
-
Откройте панель управления Mobile SMARTS.
-
В нужном месте конфигурации добавьте вызов вн ешнего метода. Настройте параметры: имя функции, тип результата и передаваемые параметры (до 10 параметров).
Параметры метода «ВызовПроизвольнойФункции»
- ИмяФункции (строка) — название вызываемой функции в интеграционной обработке.
- ТипВозвращаемогоЗначения (строка) — тип объекта Mobile SMARTS.
- Параметр1 … Параметр10 (произвольные) — аргументы, передаваемые из Mobile SMARTS в 1С.
Рассмотрим применение функции на примере конфигурации 1С «Управление торговлей 11.4» и программного продукта «Магазин 15». Предполагается, что подключение к «1С: Предприятию» настроено, и онлайн-режим работает через web-сервисы.
Пример 1
Задача: получить описание товара из 1С по артикулу на ТСД.
Решение: создаём экспортную функцию ПолучитьОписаниеНоменклатурыПоАртикулу в интеграционной обработке, которая по входящему параметру АртикулСтрокой возвращает наименование и описание товара. Если товар не найден, возвращается строка «Товар не найден».
В панели управления Mobile SMARTS добавляем поле для ввода артикула — переменную АртикулДляПоиска. Результат будет выводиться через переменную ОписаниеТовара.
Для вызова метода внешней системы «ВызовПроизвольнойФункции» используем параметры:
ПолучитьОписаниеНоменклатурыПоАртикулу— имя функции интеграционной обработки.- Пустая строка, так как возвращаемое значение — строка.
{АртикулДляПоиска}— введённый артикул.
Переходим к демонстрации:
-
В «1С: Предприятии» заведена номенклатура с артикулом 50976201.
-
Вводим артикул на ТСД, и на экране появляется информация о товаре.
Пример 2
Задача: найти товар по артикулу и вывести на ТСД 10 последних приходных документов с этим товаром, указав дату, номер, контрагента и количество.
Решение: создаём в интеграционной обработке экспортную функцию ПолучитьПоследниеПоступленияПоТовару, которая по входному параметру «Артикул» формирует таблицу с колонками «Дата», «Номер», «Контрагент», «Количество».
На форме из первого примера д обавляем отображение списка из коллекции «СписокДокументов».
Вызов метода внешней системы «ВызовПроизвольнойФункции» выполняем с параметрами:
ПолучитьПоследниеПоступленияПоТовару— имя функции из интеграционной обработки.Cleverence.Warehouse.RowCollection,Cleverence.MobileSMARTS— требуемый тип результата — объект RowCollection.{АртикулДляПоиска}— введённый артикул.
Теперь при вводе артикула на ТСД отображается не только описание товара, но и список последних приходных документов с этим товаром.
