Основным инструментом доработки «Склада 15» является панель управления.
Для того чтобы открыть панель управления для внесения правок в конфигурацию базы «Склада 15», необходимо выбрать нужную базу в менеджере баз, вызвать выпадающее меню возле кнопки «Открыть» и нажать «Править конфигурацию».
Панель управления предоставляет разработчику доступ к следующим возможностям:
- создание новых и редактирование существующих типов документов и соответствующих им схем обработки;
- контроль выполнения операций с помощью встроенного отладчика;
- описание конфигурации складов и зон хранения и ячеек на них;
- заведение пользователей и их групп, распределение полномочий;
- конфигурация подключения к внешним учетным системам или Sql серверам, отладка вызовов внешних функций;
- настройка дополнительного оборудования: подключенных стационарных принтеров для печати этикеток и кассовых аппаратов.
Одной из основных задач разработки является конфигурирование клиента для мобильного устройства. Вся конфигурация и сопутствующие метаданные хранятся в дереве конфигурации.
В нем отражается информация о составе списка типов документов «Склада 15» и соответствующих им схемам обработки. Также в нем представлены данные о шаблонах ячеек и паллет, зарегистрированных принтерах этикеток и некоторая другая полезная информация.
Процесс разработки системы на базе платформы сводится к двум вещам:
- Созданию конфигурации «Склада 15» для мобильных устройств сбора данных, поддерживающей автоматизируемые процессы.
- Разработке кода обмена данными справочников и документов между учетной системой и сервером.
Методология разработки в платформе такова, что функционал приложения изначально неотделим от пользовательского интерфейса.
Каждое визуальное действие, с которым связана экранная формочка на ТСД, имеет свои индивидуальные настройки, но что общее для всех форм - так это замечательная возможность применения шаблонов текстов и математических выражений.
Вместо статического текста мы можем использовать текст с «шаблонами» - вставками в текст, которые будут заменены на конкретные значения выражений. Такой путь может быть простым, состоящим просто из имени объекта, либо составным, ссылающимся на данные внутри объекта. Практически все тексты в окнах, любой расчет значений и обработчик шаблонов этикеток используют специальный синтаксис вычислимых выражений для вставки данных.
Шаблоны текстов - это возможность указать практически в любом месте вместо статического текста кусок псевдо-HTML, который вычисляется динамически и позволяет оформить/раскрасить по своему усмотрению любой элемент формы. Возможность указать в шаблоне элементы изображений позволяет максимально просто задавать иконки, картинки товаров, фотографии сотрудников и т.п. вещи.
На текущий момент список возможных форм ТСД следующий:
- Жесткие формы, составная часть основного приложения
Несмотря на то, что формы называются «жесткими», в последних версиях андроид-клиента «Склада 15» присутствует возможность регулировать цвет, форму кнопок, содержимое «шторки» и еще некоторые параметры. - Формы действий, из которых можно строить алгоритмы обработки Порядок, количество, частично внешний вид и особенно поведение - настраиваемы в среде разработки платформы.
Каждый алгоритм – это заданный набор действий, которые последовательно (или не совсем) выполняет клиент на терминале. Алгоритм определяет логику обработки документов определенного типа, для которого он задан, либо логику работы отдельной операции, которая может вызываться из других алгоритмов.
Алгоритм в любом типе документа может содержать произвольное количество экземпляров одного и того же действия, каждый из которых может отличаться от другого значениями свойств. Значения свойствам проставляет разработчик операции.
Структура справочника номенклатуры
Для хранения информации о товарах и их количественных характеристиках в системе используются справочник номенклатуры.
Каждая позиция номенклатуры (Cleverence.Warehouse.Product) в «Складе 15» содержит информацию о наименовании, артикуле, базовом штрихкоде, а также типах упаковки товара.
Для каждого товара в системе может быть задано несколько типов упаковки товара (Cleverence.Warehouse.Packing), например пачка, блок и коробка.
Упаковка имеет собственный штрихкод, который может отличаться от штрихкода самого товара. Этот штрихкод также идентифицирует товар, однако работа системы с ними несколько отличается.
При сканировании в клиентском приложении базового штрихкода товара, пользователю будет предложено выбрать тип упаковки (если их несколько), либо вычисления будут производиться на основе основного типа упаковки, указанного в свойстве Product.BasePackingId.
При сканировании штрихкода упаковки, выбор именно этой упаковки будет сделан системой автоматически; останется только ввести количество. Также следует учитывать что как базовый штрихкод, так и штрихкоды упаковок могут быть пустыми.
Приоритетным для системы является базовый штрихкод. Поэтому, если штрихкод у упаковки тот же, что и базовый штрихкод товара, при сканировании будет считаться, что выбран базовый штрихкод, а упаковку будет предложено выбрать из списка.
Для корректной работы системы, каждая позиция номенклатуры должна иметь хотя бы одну упаковку. В случае если учетная система не предусматривает наличие упаковок, либо их аналогов, следует для каждого товара добавлять фиктивную упаковку. Также необходимо в обязательном порядке проставить идентификатор базовой упаковки для товара.
Кроме основных полей, номенклатура может содержать дополнительные поля. Описание дополнительных полей номенклатуры хранится в узле дерева конфигурации «Структура номенклатуры»:
Структура документов «Склада 15»
Документ — встроенный тип данных Это объект, которым оперирует сервер и клиент «Склада 15». Документы используются как для хранения и передачи задания на мобильное устройство, так и для получения результатов работы и загрузки их в учётную систему, например 1С.
Каждый документ имеет собственный тип, который определяет правила загрузки и обработки документа на мобильном устройстве.
Каждый документ состоит из шести частей:
Шапка документа
Содержит общую информацию о документе, такую как его тип, имя, текстовое описание документа, кому назначен, штрихкод, дата создания документа, кто выполнял и т. д.
Декларативная табличная часть документа {Document.DeclaredItems}
Содержит строки с информацией о товаре, его количестве, ячейке размещения и т.д. По сути, описывает задание для выполнения. Эта коллекция строк обычно заполняется в учетной системе при выгрузке документа.
Реальная табличная часть документа {Document.CurrentItems}
Фактическая табличная часть документа. В нее заносятся реально отсканированные данные.
При заполнении фактической части система производит сверку и сопоставление данных со строками в декларативной (плановой) части документа. Подробнее об этом см. механизм заполнения строк.
При выгрузке документа из учетной системы CurrentItems в большинстве случаев остается незаполненной.
Дополнительные табличные части
Кроме общих дополнительных таблиц существуют локальные таблицы документов. Такие таблицы встроены прямо в документ и доступны только ему. Возможности работы с такими таблицами точно такие же, как и с общими.
Коллекция ошибок
Коллекция логических ошибок работы самого процесса.
Коллекция привязок признаков{Document.ClassificatorUsings}
Флажки, проставленные различным объектам в процессе работы пользователя с документом. В качестве таких объектов могут выступать ячейки, палеты, товары и сам документ. Эти флажки будут содержаться в документе и не имеют отношения к полям самих объектов, т.е. простановка этих флажков не влияет на объекты, которым они проставлены. В качестве флажков могут выступать «тип брака», «занято» и т.д. Указанные в документе флажки используются кодом загрузки документа в учетную систему для исполнения той или иной складской логики, связанной с ними.
Операции «Склада 15»
Операция – это заданный набор действий, которые последовательно (или не совсем) выполняет клиент на терминале, и создание операции подобно программированию. Действия существуют совершенно различные, от простых (присваивание, условие, вывод сообщения) до гораздо более сложных (действие сканирования и поиска номенклатуры, действия просмотра данных, занесение данных в документ). Каждое действие имеет множество различных настроек, которые управляют его поведением и отображением, если действие подразумевает какое-то визуальное отображение на экране.
В платформе есть возможность вызова серверных операций из конфигурации «Склада 15». Серверная операция — это операция, выполняемая на сервере «Склада 15», в отличие от обычной операции, которая выполняется на самом ТСД.
Серверные операции могут использоваться в следующих случаях:
- в случае работы с коллективным документом — позволяет ускорить работу за счет замены множества одиночных вызовов на сервер одним, при котором целый кусок алгоритма отрабатывает на сервере. Дополнительно, используя блокировки, это позволяет решить проблемы несогласованного изменения данных в сложных случаях;
- для явного вызова операции на сервере, даже если документ не коллективный, что дает возможность строить более гибкую логику работы;
- в качестве обработчиков серверных событий (производить какие-то операции с данными при выгрузке или завершении документа).
Необходимо учитывать, что такие операции имеют ограничения на используемые действия. Никакие визуальные действия использоваться в серверных операциях не могут.
«Вызов серверных операций» всегда присутствует в конфигурации «Склада 15» в случае использования серверной базы в папке «Расширения».
Интеграция с 1С
Программный продукт «Склад 15» уже интегрирован со многими конфигурациями «1С: Предприятия», но также предусматривает возможность интеграции с любой другой конфигурацией 1С.
Для удобства работы со «Складом» 15 в «1С: Предприятие» уже разработано специальное решение — обработка 1С, гибкая и универсальная для всех конфигураций 1С.
Специальная обработка 1С является двухкомпонентной, т. е. включает в себя основную и интеграционную обработку. С помощью основной обработки реализуется обмен данными между базой 1С и подключенной к ней базой «Склада 15», с помощью интеграционной — непосредственно работа конфигурации.
Интеграционная обработка — обработка, в которой преобразуются метаданные подключенной конфигурации 1С в метаданные для обработки КлеверенсТСД. Также в ней содержатся обработчики, выполняемые при выгрузке и/ или загрузке документов, и СКД для выгрузки справочников и дополнительных таблиц в конфигурацию «Склада 15».
Обработка КлеверенсТСД — обработка, в которой заложен используемый функционал и написаны методы обмена с базой «Склада 15», чтобы их не нужно было изучать программистам 1С. Частные переменные и значения из конфигурации настраиваются в интеграционной обработке.
Если с вашей конфигурацией 1С еще нет интеграции, то интеграцию можно выполнить самостоятельно.