Интеграция Mobile SMARTS с учетными системами

Последние изменение: 24.09.2019

Что такое интеграция

Интеграция - это возможность настроить обмен данными между несколькими системами. 

Для чего нужна интеграция

Для продуктов на платформе Mobile SMARTS интеграция позволяет:

  • Выгружать из товароучетной системы (1С, Axapta , SAP и др.) справочники, таблицы и задания на выполнение;
  • Получать данные из товароучетной системы онлайн-запросами без предварительной выгрузки;
  • Загружать результаты работы на мобильном устройстве (документы) назад в товароучетную систему.

Какие есть способы интеграции

Существуют две основные разновидности интеграции платформы Mobile SMARTS и внешней системы:

  1. Обмен данными инициируется внешней системой.

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

    В зависимости от того, какая учетная система используется, применяются следующие способы интеграции:

  2. Обмен данными инициируется Mobile SMARTS с помощью коннектора к внешней системе.

    В данном случае сервер Mobile SMARTS, по возникающим событиям или по расписанию, вызывает внешнюю систему для получения из неё каких-либо данных.

    Для использования этого способа интеграции необходимо наличие специального коннектора к внешней системе.

    Для каждой внешней системы применяется собственный коннектор, например:

    Более подробно узнать о стандартных коннекторах, входящих в состав дистрибутива Mobile SMARTS, можно в статье «Список существующих стандартных коннекторов».

В частных случаях можно использовать комбинацию обоих методов: какие-то данные (например, справочник номенклатуры) выгружать из товароучетной системы, а документы и актуальные остатки товара запрашивать через коннектор онлайн.

Какие есть готовые интеграции

Mobile SMARTS - это платформа, используя которую были разработаны такие программные продукты, как «Магазин 15», «Склад 15» и др. Поэтому интеграции с товароучетными системами есть только у продуктов (в зависимости от их специфики применения), а для платформы есть способы интеграции, рассмотренные выше.

Тем не менее, о готовых интеграциях продуктов на платформе Mobile SMARTS с конкретными учетными системами вы можете почитать в следующих разделах:

Разработка собственной интеграции

В процессе работы с продуктами на платформе Mobile SMARTS можно использовать готовую интеграцию, либо создать собственную с помощью вышеперечисленных методов. 

Кроме того, можно разработать свой собственный коннектор, и применить в процессе самостоятельной интеграции. 

Справочные материалы

Описание схемы взаимодействия

 Справочник по объектам Mobile SMARTS и компоненте доступа для платформы

 Справочник по компоненте драйвера терминала сбора данных для 1С:Предприятия (AddIn.Cl.TerminalConnector)

  Работа с компонентой

Для старой версии платформы (2.7.x)

 Справочник по объектам Mobile SMARTS и компоненте доступа

 Справочник по компоненте драйвера терминала сбора данных для 1С:Предприятия (AddIn.Cl.TerminalConnector)



FILE: /var/www/clever_user/data/www/clever.invbl.ru/bitrix/modules/iblock/classes/mysql/iblockelement.php
LINE: 803
MySQL Query Error: SELECT BE.NAME as NAME,BE.ID as ID,DATE_FORMAT(BE.TIMESTAMP_X, '%d.%m.%Y %H:%i:%s') as TIMESTAMP_X,UNIX_TIMESTAMP(BE.TIMESTAMP_X) as TIMESTAMP_X_UNIX,BE.MODIFIED_BY as MODIFIED_BY,DATE_FORMAT(BE.DATE_CREATE, '%d.%m.%Y %H:%i:%s') as DATE_CREATE,UNIX_TIMESTAMP(BE.DATE_CREATE) as DATE_CREATE_UNIX,BE.CREATED_BY as CREATED_BY,BE.IBLOCK_ID as IBLOCK_ID,BE.IBLOCK_SECTION_ID as IBLOCK_SECTION_ID,BE.ACTIVE as ACTIVE,IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_FROM)>0, DATE_FORMAT(BE.ACTIVE_FROM, '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_FROM, '%d.%m.%Y')) as ACTIVE_FROM,IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_TO)>0, DATE_FORMAT(BE.ACTIVE_TO, '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_TO, '%d.%m.%Y')) as ACTIVE_TO,IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_FROM)>0, DATE_FORMAT(BE.ACTIVE_FROM, '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_FROM, '%d.%m.%Y')) as DATE_ACTIVE_FROM,IF(EXTRACT(HOUR_SECOND FROM BE.ACTIVE_TO)>0, DATE_FORMAT(BE.ACTIVE_TO, '%d.%m.%Y %H:%i:%s'), DATE_FORMAT(BE.ACTIVE_TO, '%d.%m.%Y')) as DATE_ACTIVE_TO,BE.SORT as SORT,BE.PREVIEW_PICTURE as PREVIEW_PICTURE,BE.PREVIEW_TEXT as PREVIEW_TEXT,BE.PREVIEW_TEXT_TYPE as PREVIEW_TEXT_TYPE,BE.DETAIL_PICTURE as DETAIL_PICTURE,BE.DETAIL_TEXT as DETAIL_TEXT,BE.DETAIL_TEXT_TYPE as DETAIL_TEXT_TYPE,BE.SEARCHABLE_CONTENT as SEARCHABLE_CONTENT,BE.WF_STATUS_ID as WF_STATUS_ID,BE.WF_PARENT_ELEMENT_ID as WF_PARENT_ELEMENT_ID,BE.WF_LAST_HISTORY_ID as WF_LAST_HISTORY_ID,BE.WF_NEW as WF_NEW,if (BE.WF_DATE_LOCK is null, 'green', if(DATE_ADD(BE.WF_DATE_LOCK, interval 60 MINUTE)<now(), 'green', if(BE.WF_LOCKED_BY=0, 'yellow', 'red'))) as LOCK_STATUS,BE.WF_LOCKED_BY as WF_LOCKED_BY,DATE_FORMAT(BE.WF_DATE_LOCK, '%d.%m.%Y %H:%i:%s') as WF_DATE_LOCK,BE.WF_COMMENTS as WF_COMMENTS,BE.IN_SECTIONS as IN_SECTIONS,BE.SHOW_COUNTER as SHOW_COUNTER,DATE_FORMAT(BE.SHOW_COUNTER_START, '%d.%m.%Y %H:%i:%s') as SHOW_COUNTER_START,BE.SHOW_COUNTER_START as SHOW_COUNTER_START_X,BE.CODE as CODE,BE.TAGS as TAGS,BE.XML_ID as XML_ID,BE.XML_ID as EXTERNAL_ID,BE.TMP_ID as TMP_ID,concat('(',U.LOGIN,') ',ifnull(U.NAME,''),' ',ifnull(U.LAST_NAME,'')) as USER_NAME,concat('(',UL.LOGIN,') ',ifnull(UL.NAME,''),' ',ifnull(UL.LAST_NAME,'')) as LOCKED_USER_NAME,concat('(',UC.LOGIN,') ',ifnull(UC.NAME,''),' ',ifnull(UC.LAST_NAME,'')) as CREATED_USER_NAME,L.DIR as LANG_DIR,B.LID as LID,B.IBLOCK_TYPE_ID as IBLOCK_TYPE_ID,B.CODE as IBLOCK_CODE,B.NAME as IBLOCK_NAME,B.XML_ID as IBLOCK_EXTERNAL_ID,B.DETAIL_PAGE_URL as DETAIL_PAGE_URL,B.LIST_PAGE_URL as LIST_PAGE_URL,B.CANONICAL_PAGE_URL as CANONICAL_PAGE_URL,DATE_FORMAT(BE.DATE_CREATE, '%Y.%m.%d') as CREATED_DATE,if(BE.WF_STATUS_ID = 1, 'Y', 'N') as BP_PUBLISHED FROM b_iblock B INNER JOIN b_lang L ON B.LID=L.LID INNER JOIN b_iblock_element BE ON BE.IBLOCK_ID = B.ID INNER JOIN ( SELECT DISTINCT BSE.IBLOCK_ELEMENT_ID FROM b_iblock_section_element BSE INNER JOIN b_iblock_section BS ON BSE.IBLOCK_SECTION_ID = BS.ID WHERE ((( (BS.LEFT_MARGIN >= 370 AND BS.RIGHT_MARGIN <= 395) ))) ) BES ON BES.IBLOCK_ELEMENT_ID = BE.ID LEFT JOIN b_user U ON U.ID=BE.MODIFIED_BY LEFT JOIN b_user UL ON UL.ID=BE.WF_LOCKED_BY LEFT JOIN b_user UC ON UC.ID=BE.CREATED_BY WHERE 1=1 AND ( ((((BE.IBLOCK_ID = '15')))) AND ((((BE.ACTIVE='Y')))) ) AND (((BE.WF_STATUS_ID=1 AND BE.WF_PARENT_ELEMENT_ID IS NULL))) ORDER BY BE.NAME asc [[3] Error writing file '/tmp/MYUnC1Tx' (Errcode: 28 - No space left on device)]

DB query error.
Please try later.