Перейти к основному содержимому
Версия: 3.4

Интеграция Mobile SMARTS со сторонними системами на Excel и CSV файлах

Помимо разнообразных вариантов интеграции с учётными системами, платформа Mobile SMARTS содержит в себе инструменты для интеграции на файлах CSV и Excel.

После установки платформы и развёртывания базы данных Mobile SMARTS становятся доступны следующие варианты обмена в формате CSV и Excel:

Оба варианта работают следующим образом:

  1. Создаются файлы-шаблоны, содержащие заголовки полей, по которым будут разбираться файлы, содержащие данные. Эти файлы должны иметь такой же формат, в котором предполагается обмен.

  2. В специальную папку обмена (по умолчанию «На терминал») помещаются файлы формата Excel или CSV, который содержат в себе номенклатуру, документы, таблицы и т.п. При этом структура этих файлов должна соответствовать созданным ранее шаблонам.

  3. Производится синхронизация с мобильным устройством или базой данных Mobile SMARTS (в зависимости от режима работы базы). При этом на устройство или сервер выгружается номенклатура и документы из папки «На терминал», а обратно загружаются обработанные документы.

  4. Обработанные документы при загрузке тоже разбираются по соответствующим файлам-шаблонам и конвертируются в формат Excel или CSV.

Обмен с помощью коннектора Excel/CSV​

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

При таком варианте сервер будет следить за указанной папкой с файлами, и как только там будут происходить изменения (добавляться новые файлы или изменяться старые), их конвертация будет происходить автоматически. Точно так же, как только документ будет завершаться пользователем, он будет сразу преобразован в итоговый файл Excel или CSV.

Работа такого автоматического файлового обмена осуществляется через Excel/CSV коннектор сервера.

Как настроить и включить:

  1. В расширениях создайте новое расширение «ExcelCsvConnector»:

    интеграция интеграция

    В качестве параметров коннектора используются общие настройки файлового обмена (Excel/CSV) в файле XlsCsvUtil.exe.config.

  2. В настройках самого коннектора можно только поменять пути к папкам входящих и исходящих документов.

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

    интеграция
  4. Сразу после запуска коннектор начинает слежение за папками и завершенными документами.

Сравнение утилиты и коннектора (Excel/CSV)​

И утилита, и коннектор обладают абсолютно идентичными возможностями по конвертации данных в/из Cleverence.

Основные различия в функционале утилиты и коннектора обусловлены только тем, что коннектор работает прямо внутри сервера. Благодаря этому он обеспечивает автоматическую конвертацию данных (как только данные появляются в папке и наоборот, как только завершенный документ попадает с мобильного устройства на сервер). Также коннектор работает быстрее, чем утилита, так как все файлы обрабатываются прямо сервером и их не требуется передавать туда по http, как это делает утилита.

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

Сводная таблица различий:

ФункцияУтилитаКоннектор
Конвертация всех типов данных (номенклатура, документы, таблицы, ячейки и т. д.)ДаДа
Возможность работы без сервераДаНет
Автоматический обмен сразу по появлению файлов в папкеНетДа
Скорость конвертацииМедленноБыстро

Структура файлов и папок для Excel/CSV обмена​

Все файлы и папки, необходимые для работы файлового обмена с Cleverence, расположены по пути [Папка базы]\XlsCsv.

Содержимое папки XlsCsv

Имя папки / подпапкиОписание
На терминалПо умолчанию содержит файлы Excel или CSV, предназначенные для отправки в Cleverence.
На терминал\АрхивАрхив успешно конвертированных файлов Excel и CSV. Если файл «пропал», его можно найти здесь.
На терминал\GoodАрхив успешно конвертированных файлов Excel и CSV при включенном режиме IsGoodBad.
На терминал\BadАрхив неудачно обработанных файлов Excel и CSV при включенном режиме IsGoodBad.
С терминалаПо умолчанию сюда складываются файлы с мобильного устройства после конвертации их в Excel или CSV по шаблону.
TemplatesПапка с файлами шаблонов для конвертации. Большинство готовых продуктов уже содержат какие-то шаблоны по умолчанию.
Templates\UploadСодержит шаблоны, по которым разбираются файлы, загружаемые в Cleverence.
Templates\DownloadСодержит шаблоны, по которым формируются готовые файлы из Cleverence.
XlsCsvUtil.exe.configФайл конфигурирования параметров файлового обмена с Cleverence.

Настройка параметров Excel/Csv обмена​

Основные настройки параметров обмена, такие как пути к папкам, формат, кодировка файлов и т. д., хранятся в файле по пути [Папка базы]\XlsCsv\XlsCsvUtil.exe.config.

интеграция

Часть этих настроек можно также редактировать через окно в утилите обмена.

интеграция

Полный список доступных настроек:

Указывает, содержит ли файл с пользователями весь справочник пользователей или дополняет уже выгруженный ранее.

  • true — справочник полный
  • false — дополняет текущий

Настройки параметров:

ИмяЗначенияОписание
exchangeformatcsv, csvcomma, xls, xlsx, xmlИспользуемый формат файлов
output_exchangeformatcsv, csvcomma, xls, xlsx, xml (можно указать несколько через ``)
encodingutf-8, windows-1251Кодировка, в которой сохранены данные и шаблоны конвертации.
Параметр актуален только для форматов csv и xml.
cultureInfoИмя локализации (список)Определяет локализацию данных, влияющую на числовые и текстовые форматы.
Пример: ru-RU, en-EN.
uploadFolderПуть к папкеПапка с данными для загрузки в Cleverence.
downloadFolderПуть к папкеПапка для итоговых файлов после работы на мобильном устройстве.
notDeleteCompletedDocumentstrue или falseУдалять ли документ после успешной конвертации.
true — файл не удаляется,
false — файл удаляется.
notReadFirstStringtrue или falseОпределяет, является ли первая строка заголовком.
true — первая строка заголовок,
false — данные начинаются сразу.
IsGoodBadtrue или falseОпределяет, перемещается ли исходный файл в папку Good или Bad после конвертации.
overwriteProductstrue или falseПолностью заменяет или дополняет справочник товаров.
overwriteCellstrue или falseПолностью заменяет или дополняет справочник ячеек.
overwriteUserstrue или falseПолностью заменяет или дополняет справочник пользователей.
createProductsNameLookuptrue или falseСоздавать ли индекс для поиска товаров по названию.
writeOutputSectionHeaderstrue или false (только для csv)Выводить ли в файлы имена секций данных.
writeOutputSectionFieldNamestrue или false (только для csv)Выводить ли в файлы заголовки колонок с данными.
productsFileNameМаска имени файлаОпределяет имя исходного файла с номенклатурой.
По умолчанию: Номенклатура.*, Products.*
ИмяТаблицыFileNameМаска имени файлаОпределяет имя исходного файла с таблицей данных.
По умолчанию: ИмяТаблицы.*
documentsFileNameМаска имени файлаОбщая маска файлов документов для конвертации в Cleverence.
По умолчанию: ИмяТипаДокумента*.*
DocAlias_ИмяТипаМаска имени файлаОпределяет различные маски файлов для разных типов документов.

Пример файла настроек:

<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="overwriteUsers" value="True" />
<add key="notReadFirstString" value="True" />
<add key="exchangeformat" value="csv" />
<add key="IsGoodBad" value="True" />
<add key="encoding" value="utf-8" />
<add key="notDeleteCompletedDocuments" value="True" />
</appSettings>
</configuration>

Настройка именования файлов​

Ниже приведена таблица имен файлов по умолчанию для загрузки в Mobile SMARTS:

Тип данныхВозможные имена файлов
Справочник номенклатурыНоменклатура.xxx
Товары.xxx
Products.xxx
Справочник мест храненияМеста хранения.xxx
Ячейки.xxx
Cells.xxx
Справочник палетКонтейнеры.xxx
Паллеты.xxx
Палеты.xxx
Pallets.xxx
Справочник пользователейПользователи.xxx
Users.xxx
Дополнительные таблицыИмяТаблицы.xxx
Примеры:
Цены.csv
Остатки.xlsx
ДокументыИмяТипа*.xxx
Примеры:
Приемка №3658543.xlsx
Инвентаризация от 23.06.2017.csv

Если необходимо задать нестандартные имена, это можно сделать с помощью файла настройки параметров.

Пример | 1

Задача:

Файл товаров имеет нетиповое и нефиксированное имя, содержащее дату, например, products 10.04.2018.gox. Как настроить файловый обмен на работу с таким файлом?

Решение:

Задаем в XlsCsvUtil.exe.config параметр нестандартного имени файла номенклатуры.

<add key="productsFileName" value="products*.gox" />

Пример | 2

Задача:

Мы пользуемся обменом csv файлами, но исходные файлы документов имеют расширение “ofp”, вместо “csv”

Решение:

Зададим в XlsCsvUtil.exe.config параметр нестандартного имени файлов для всех файлов документов:

<add key="documentsFileName" value="*.ofp" />

Пример | 3

Задача:

Файлы документов приемки вместо “Приемка*.csv” называются у нас “income*.csv”.

Решение:

Зададим в XlsCsvUtil.exe.config параметр нестандартного имени файлов для документов приемки:

<add key="docAlias_Приемка" value="income*.csv" />

Правила распределения документов пользователям​

Если при выгрузке документа в Cleverence у него оказывается незаполненным поле Appointment, то применяются описанные ниже стандартные правила.

База с прямым обменом

Документ выгружается первому пользователю с правами «Мобильный пользователь» или «Администратор». Выставляется поле UserId.

База на сервере

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

  1. Если документ не распределяется автоматически (AutoAppointed == false) или он коллективный (ServerHosted == true), то документ не изменяется и выгружается на сервер в исходном виде.

  2. Если пользователь с правами «Мобильный пользователь» или «Администратор» всего один, то документ назначается ему напрямую (Appointment = user.Id).

  3. Если у документа заполнено поле штрихкода и у типа документа указано, что документы можно выбирать по штрихкоду и по штрихкоду с сервера, то документ переводится в режим не выдаваемых автоматически (AutoAppointed = false). В списке документов на мобильном устройстве он не отображается, но пользователь сможет выбрать его, отсканировав штрихкод документа.

  4. Если у типа документа разрешено показывать в списке документы с сервера, то документ переводится в режим не выдаваемых автоматически (AutoAppointed = false). Пользователь сможет выбрать его из списка.

  5. Если ни одно из указанных правил не сработало, то никаких изменений не производится. Документ будет распределяться по общим правилам платформы.

Как выгрузить свое поле из файла в строку документа и загрузить обратно​

Как подготовить документы для обмена​

Вариант 1. Подготовить документы и загружать/выгружать не меняя «коробочных решений». Данное решение предполагает заполнение в документах только актуальных полей, не внося изменения в неиспользуемые. Документы содержат множество полей, некоторые из них возможно не будут использоваться при работе.

Вариант 2. Через удаление ненужных полей в (за)выгружаемом документе. Второй вариант предполагает изменение шаблонов документов, используемых платформой Mobile SMARTS. В данном случае возможно получить формы документов, удобные вам — убрать неиспользуемые колонки, поменять их местами, подстроить шаблоны файлов под учетную систему.

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

При установке многих продуктов, с обменом через Excel/Csv, копируются «Демо-файлы», во всех форматах (xls, xlsx, csv). В данной статье будем использовать файлы *.xlsx. Получить доступ к папке можно используя входящую в состав платформы Mobile SMARTS утилиту «Excel/Csv обмен».

Обмен с сполощью утилиты Excel/Csv​

Запустите утилиту Excel/Csv обмена на вашем ПК.

В меню «Файл --> Параметры обмена» нужно выбрать формат обмена xls/xlsx/csv, здесь также можно настроить пути к папкам обмена.

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

Для загрузки документа в базу данных Mobile SMARTS и далее в ТСД файл «Приход» необходимо поместить в папку «На терминал»: «C:\ProgramData\Cleverence\Базы Mobile SMARTS\Имя Базы\XlsCsv\На терминал».

Попасть в эту папку можно непосредственно из утилиты выбрав пункт меню «Папки->На терминал». В этой папке находятся все документы предназначенные к загрузке в систему и на ТСД.

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

Файл из папки «На терминал» переносится в папку «Архив», файл номенклатуры и файлы таблиц остаются в текущей папке.

Выгрузка документов из Mobile SMARTS как и модификация шаблонов практически не отличается от загрузки.

Шаблон выгрузки «Документ» находится по пути «C:\ProgramData\Cleverence\Базы Mobile SMARTS\Имя Базы\XlsCsv\Templates\Download».

Запуск утилиты обмена через конфигуратор​

Выберите нужную базу данных из списка, с которой будет работать утилита обмена, затем справа от кнопки «Открыть» нажмите на раскрывающийся список, выберите «Открыть ExcelCsv обмен».

Нажмите в меню утилиты на кнопку «Папки», далее выберите соответствующий вариант загрузки: «На мобильное устройство» или «С мобильного устройства».

В выбранной базе автоматически создается папка «XlsCsv» с подпапками «На терминал» и «С терминала» (согласно способам загрузки «На мобильное устройство» и «С мобильного устройства»).

После нажатия кнопки «На сервер» (где документы выгружаются/передаются в базу данных Mobile SMARTS, на ТСД документы загружаются при обмене сервера с терминалом) большая часть загружается в систему в папку «Архив» с добавлением даты и времени документа.

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

Откройте файл «Номенклатура.xlsx», первое, что бросается в глаза — поля заполненных числами типа

«253a91e0-269e-4ff1-bb36-b33e878c69ab».

Это GUID (Globally Unique Identifier), который формируется в учетной системе или генерируется производителем.

Добавьте свою строку с товаром. Заполните только те поля, которые известны. Пример «Лапти****»

При заполнении важно заполнить поля «А» и «Н» (ProductId и PackingId), значение может быть любым, сформировано вручную или вашей учетной системой.

Далее сохраните файл и закройте программу в которой он был создан. Откройте утилиту обмена и нажмите кнопку «На сервер», утилита проверяет правильность файла и в случае успеха, загружает его в платформу Mobile SMARTS.

Проверить загрузилось или нет можно в панели управления платформой вкладка «Данные-Номенклатура», либо запустив «Клиент для ПК» выбрав меню «Просмотр справочников».

Несмотря на то, что в файле «Номенклатура» более 150 строк, приложение сообщает, что товаров 79. Это происходит из-за того, что один и тот же товар идет в разной упаковке, например молоко 5 пакетов и одна коробка с 6-ю пакетами. Строк в номенклатуре 2, а позиция одна.

Нажмите на кнопку «Товары» — появляется список товаров. Поиск можно осуществить по «Артикулу», «Наименованию», «Штрихкоду», обратите внимание, что вводить необходимо не менее 3-х символов. В случае совпадения поискового запроса на экран выводятся все позиции имеющие совпадение, далее можете выбрать необходимую.

Рассмотрим на примере базы данных «Склад 15: Расширенный с Кировкой» операцию «Оприходование товара на складе».

Для этого учетная система должна сформировать файл «Приход на склад *******», здесь вместо ***** — впишите текст, номер накладной, поставщика или все вместе.

Можно создать его самостоятельно на основе демонстрационного файла «Приход на склад демо» согласно полного пути к папке: «C:\ProgramData\Cleverence\Базы Mobile SMARTS\Имя Базы\XlsCsv\Templates\Download».