Среди всех касс, имеющих общее пространство остатков необходимо выбрать одну главную кассу – мастер кассу. Если кассы в магазине отличаются производительностью, то мастер кассой лучше назначить самую производительную кассу.
Если конвертер мастер-кассы нашёл флаг на change, то вначале конвертер загрузит таблицу PluCash так же, как и раньше (до использования он-лайн модуля «Остатки (MPI)», затем для каждого артикула таблицы SMUKM30\DATABASE\PluCash.db будет взято значение дополнительного поля AddNum1 и на основании этих значений мастер-касса сформирует в соответствующем сетевом каталоге таблицу REST.DB.
Если таблица REST.DB сформирована, то на любой кассе (в том числе и на мастер кассе) при добавлении товара в чек под активной позицией будет отображаться текущее (оставшееся) количество данного товара (из файла REST.DB). Если чек будет закрыт, то все его товары будут считаться проданы в таблице REST.DB будут уменьшены значения поля Quantity во всех соответствующих строках.
Если конвертер мастер-кассы нашёл флаг на update, то вначале конвертер
проапдейтит таблицу SMUKM30\DATABASE\PluCash.db так же, как и раньше (до испольования он-лайн модуля «Остатки (MPI»), а затем запускается процедура формирования rest.db. Эта процедура видит, что она запустилась после update и поэтому она работает НЕ ТАК как после change. А именно: процедура формирования rest.db для каждого артикула (т.е. для каждой строки) анализирует уже локальную проапдейтенную таблицу DATABASE\PluCash.db.В результате этого анализа возможны следующие варианты:
поле ModPersonIndex равно нулю => процедура формирования таблицы rest.db ничего не делает (пропускает)
поле ModPersonIndex равно 1 => процедура формирования rest.db находит в существующей сетевой таблице rest.db соответствующий артикул и прибавляет к полю Quantity то значение, которое было передано в поле AddNum1, если артикул в rest.db не будет найден, то в rest.db будет добавлена новая строка с количеством, равным AddNum1
поле ModPersonIndex равно 2 => процедура формирования rest.db находит в существующей таблице rest.db соответствующий артикул и заменяет для него значение поля количество на то, которое передано в поле AddNum1, если артикул в rest.db не будет найден, то в rest.db будет добавлена новая строка с количеством, равным AddNum1
Добавлено через 3 минуты 29 секунд
Цитата: Mtirt ➤ А если в магазине несколько касс, запрет продажи как срабатывает?
касса обращается к таблице REST.DB к полю Quantity если там "0" то на экране кассира появляется окно о запрете продажи.