Механизм заполнения табличных частей документа в Mobile SMARTS очень сложный и сводится к выполнению встроенного обобщенного алгоритма. Задача этого алгоритма в том, чтобы правильно занести некие разрозненные данные, которые были собраны на ТСД (введены пользователем, выделены из штрихкодов, вынуты из учетной системы и т.п.) сразу в обе табличные части документа (и декларативную, и фактическую).Делается это для того, чтобы всегда иметь на ТСД непротиворечивый документ, содержимое табличных частей которого было бы удобно как для просмотра хода выполнения задания, так и для загрузки результатов в учетную систему.
В требованиях к реальным складским операциям всегда можно встретить следующие вещи: «если такой товар уже сканировался – прибавить введенное количество к существующей строке документа», «пересчитать количество из коробок в штуки», «найти строку задания с такой же ячейкой и таким же товаром и занести туда реально отсканированное количество» и т.п. Механизм заполнения табличных частей документа в Mobile SMARTS позволяет решить все подобные задачи без написания специального алгоритма, путем простой настройки свойств действия «Занесение в документ».
Занесение в табличные части
В простой ситуации, например, необходимо набрать «Мыло душистое» 4 коробки, без учета дополнительных колонок (ячейки, партии и т.д.). В зависимости от выполненных настроек и варианте сканирования (по одной коробке или введя сразу все) заполнение будет происходить по разному. В фактической части может быть заполнена одна строка (слито в одну строку) или несколько отдельных.
Если в настройках указано Нет у параметра «Сливать одинаковые строки» и происходит сканирование по 1 коробке 4 раза, то в фактической части будет 4 строки с плановым количеством 0 (ноль), с фактическим количеством 1 и упаковкой коробка. При каждом сканировании будет добавляться новая строка.
Фактическая часть | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Товар 1 | кор | 0 | 1 |
Товар 1 | кор | 0 | 1 |
Товар 1 | кор | 0 | 1 |
Товар 1 | кор | 0 | 1 |
При заполнении заявленной части, количество может быть суммировано (в зависимости от настроек), в одну строку будут добавляться количество(факт).
Заявленная часть | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Товар 1 | кор | 4 | 4 |
Если в настройках фактической части указано Да у параметра «Сливать одинаковые строки» и в списке колонок по слиянию, например, указан код товара, то при сканирование одинакового товара по 1 коробке 4 раза строки будут сливаться и будет 1 строка с фактическим количеством 4 и упаковкой коробка.
Фактическая часть | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Товар 1 | кор | 4 | 4 |
Возможен набор товара с введением вручную сразу нужного количества, тогда будет 1 строка с фактическим и заявленным количеством 4 и упаковкой коробка.
Еще вариант когда отсканирован ящик (4 коробки), будет 1 строка с количеством 1 и упаковкой ящик.
Фактическая часть | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Товар 1 | ящ | 0 | 1 |
При заполнении заявленной части ящик будет пересчитан в коробки.
Заявленная часть | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Товар 1 | кор | 4 | 4 |
При более сложных вариантах (с учетом дополнительных колонок ячеек, партий и т.д.), алгоритм заполнения строк учитывает их.
В случае, если у номенклатуры указана характеристика, то при занесении в фактическую часть документа для номенклатуры с характеристикой будет создана новая строка с плановым количеством 0 (ноль).
Фактическая часть | ||||
---|---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) | Цвет |
Товар 1 | шт | 3 | 2 |
|
Товар 1 | шт | 0 | 1 | Зеленый |
При занесении в таблицу заявленной части, если в списке колонок по сличению указан только код товара, то эти строки будут слиты в одну строку, т.к. все другие параметры для сличения не учитываются, а код у номенклатуры один и тот же. В существующую строку в колонку количество(факт) будет занесено 3.
Заявленная часть | ||||
---|---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) | Цвет |
Товар 1 | шт | 3 | 3 |
В случае если в списке колонок по сличению выбрана характеристика товара (descr) для сличения, то в заявленной части будет создана новая строка с количество(план) 0 (ноль) и количество(факт) 1, т.к. характеристики у номенклатуры отличаются.
Заявленная часть | ||||
---|---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) | Цвет |
Товар 1 | шт | 3 | 2 |
|
Товар 1 | шт | 0 | 1 | Зеленый |
Слияние
Если в настройках указать, что надо сливать одинаковые строки (CurrentItems), тогда процесс занесения будет искать строки с таким товаром уже существующие в документе, и увеличивать количество в существующей записи, а не добавлять новую строку.
Строки могут суммироваться по заданным параметрам (товару, упаковкам, Ячм, партии). Причем для отбора может использоваться не один, а несколько параметров. Параметры отбора настраиваются в «Списке колонок для слияния Current (Факт) части».
Например, отбор для слияния строк происходит по наименованию товара и месту хранения. Будут суммироваться только те строки у которых будет одинаковое наименование и Яч, для остальных будут заводиться новые строки.
В фактической части у товара с одинаковым наименованием, но взятого из разных ячеек будут разные строки.
Фактическая часть | ||||
---|---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) | Ячейка |
Товар 1 | шт | 0 | 3 | 2376 |
Товар 1 | шт | 0 | 7 | 3289 |
При внесении в заявленную часть это количество товара будет суммировано, при указании в списке колонок для поиска соответствующей плановой строки, что поиск ведется по наименованию (при необходимости пересчитано в заявленную упаковку) и занесено в одну строку и колонку фактического количества.
Заявленная часть | ||||
---|---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) | Ячейка |
Товар 1 | шт | 1 0 | 10 |
Занесение товара не указанного в заявленной части
Если товара нет в плане и настройками разрешено заносить товар, который не указан в заявленной части, то в этом случае в фактической части появится новая строка (строки) при сканировании товара.
В заявленной табличной части будет добавлена новая строка с плановым количеством 0 (ноль).
Например, принять зубной порошок 15 коробок, которого нет в заявленной табличной части (нет в заказе).
После сканирования такого товара и введения количества в фактической части появится новая строка с именем «Зубной порошок», упаковкой «кор.» и количеством(факт) 15. При поиске соответствующей плановой строки в заявленной части ничего найдено не будет и создастся новая строка с именем «Зубной порошок», упаковкой «кор.», количеством(план) 0 (ноль) и количеством(факт) 15.
Если у товара несколько упаковок существуют варианты занесения в табличную часть.
Политика ввода количества «Для каждого типа упаковки отдельно» отключена (флаг не проставлен).
Политика ввода количества «Для каждого типа упаковки отдельно» включена (флаг проставлен). В табличную часть заносится количество в одну строку с пересчетом в базовую упаковку.
На терминале будет указано отсканированное количество в базовой упаковке (при необходимости пересчитано), независимо в какой упаковке было выбрано и заносится в табличную часть.
Если документ был выгружен из учетной системы и сканируемый товар отсутствует в заявленной части при этом запрещено заносить товар, которого нет в заявке, то на экран ТСД будет выведено сообщение, что товар отсутствует в заявке.
Никакие новые строки по этому товару не будут добавлены ни в заявленную часть ни в фактическую.
Например, в заявке указано что нужно принять 4 стула, но кроме стульев на склад привезли еще и стол. Отсканировав стулья, данные будут занесены в табличные части. Если мы попытаемся принять еще и стол, то у нас это не получится, на экран ТСД будет выведено сообщение, что стол отсутствует в заявке. В табличные части эта информация не заносится и никаких строк с новым товаром не создается.
Контроль количества
Этот параметр используется для создания процессов, когда надо контролировать соответствие товара заявке, выгруженной из учетной системы. В настройках «Проверять на наличие товара и переполнение количества по плану» нужно выставить Да и выбрать действие (сообщение), которое будет выполнено, если товара больше, чем в плане.
Например, дана заявка набрать 4 стула.
Заявленная часть до заполнения | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Стулья | шт | 4 | 0 |
Сначала мы взяли и отсканировали 3 стула.
Заявленная часть в момент заполнения | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Стулья | шт | 4 | 3 |
Потом попытались взять еще 2. При заполнении текущего количества в заявленной части проверяется переполнение товара по плану и если товара больше, чем в колонке Количество(план), то выбрать лишнее количество не удастся. На экран ТСД выводится сообщение, что пытаемся взять больше.
В заявленной части в колонку количество(факт) может быть занесено не больше, чем указано в колонке количество(план).
При переполнении не обязательно появится сообщение. Все зависит от того, какое действие мы указали при переполнении товара. В нашем примере, мы указали, чтобы выводилось сообщение.
Если в настройках «Проверять на наличие товара и переполнение количества по плану» выбрать Нет, то проверки на переполнение не будет. В этом случае можно будет выбирать количество товара больше, чем указано в колонке количество(план). Тогда в заявленную часть в колонку количество(факт) будет занесено отсканированное количество, даже если оно оказалось больше заявленного количества(план). Например, вместо 4 стульев мы отсканировали 5, в колонке количество(факт) будет 5.
Заявленная часть | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Стулья | шт | 4 | 5 |
Удаление строк и корректировка количества в строках
В любой момент можно удалить ненужные строки документа, при этом будут автоматически выполнены все корректировки количеств.
Строки можно удалить в панели управления. Выбрав нужный документ, выберите в нем строку, которую необходимо удалить и нажмите «Удалить строку задания».
При просмотре строк (если предусмотрено конфигурацией) прямо с терминала. Выберите строку, которую необходимо удалить и нажмите del или back.
Путем отрицательного ввода количества можно скорректировать количество(факт).
Заявленная часть до корректировки | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Стулья | шт | 4 | 5 |
Если при выборе количества ввести отрицательное число, то в строке произойдет корректировка количества.
Заявленная часть после корректировки | |||
---|---|---|---|
Товар | Упаковка | Количество(план) | Количество(факт) |
Стулья | шт | 4 | 4 |