18.03.2019 10:48
В завершение описания созданных на сей момент автоматов опишу

VIII. Автомат по продаже пива

Вызывается только через командную строку: автомата hle pivo.txt

В данном режиме производится списание "пива" с причиной "реализация" из торгового зала (регистра №2) на основе списка алкогольной продукции, перечисленном в файле с точным именем: pivo.txt формата: алкокод;количество, где строки разделяются символом смены каретки CRLF. [B]

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

1. Проверка существования переданного файла в каталоге программы

2. Проверка удовлетворения формально правильному формату переданных в файле значений - алкокод точно 19 знаков и количество больше нуля и меньше 999999
+ Анализ корректности ссылки на внутреннюю базу данных - наличие файла остатков
+ Если актуальность остатков более часа, то запрашиваются свежие остатки

3. Возможность открытия рабочих таблиц программы и целостность рабочих индексов

4. Контроль повтора операции продажи пива на предыдущий день с номером дд_pivo

5. Ошибка - нет товара в остатках торгового с заданным алкокодом

6. Нулевой остаток товара в справочнике остатков ТЗ с алкокодом
+ отражаю предполагаемое к списанию количество и наименование АП из справочника остатков ТЗ

7. АП не является пивом-продажа через списание запрещена КВАП не из списка 500,510,520,261,262,263
+ отражаю предполагаемое к списанию количество и наименование АП из справочника остатков ТЗ

8. Если продажа больше остатка, то продаем под остаток, но даём сообщение об ошибке
+ отражаю предполагаемое к списанию количество и наименование АП из справочника остатков ТЗ


Далее отправляется операция списания в ЕГАИС, а затем в течении получаса проверяется прохождение операции через ЕГАИС. При этом возможны ошибочные ситуации:

9. ВЫХОД по истечению времени! Не работает УТМ! Или задержки в обработке документов

10. Нет созданных операций - сбой программы, возможно по разрушению внутренних данных или по всему списку товаров была блокировка создания строк операций

11. Документ создался, но НЕ ОТПРАВЛЕН В ЕГАИС, напримеротвалился УТМ или малая пауза в настройке

12. ОТКАЗ ЕГАИС. Нужно анулировать и руками отправить операцию. Смотреть Ticket о причине запрета

Затем программа переименовывает файл pivo.txt в pivo.act, сохраняет полный анализ проведения работ по списанию пива, а так же полный реестр ошибок в файле pivo_test.txt. При указании в настройках электронного адреса отправляет письмо, содержащее атрибуты магазина и текст из pivo_test.txt

Письма отправляются, используя почтовый сервис yandex.ru от имени УСЕга <USLandEgais ....>, при этом в почтовом ящике информация о получателе не сохраняется... и на этот адрес письма писать бесполезно

Проверки, работы с остатками и комбинации автоматов программы - их можно настроить в ярлыках и вызывать посредством планировщиков Windows или вызывая двойным кликом на ярлыке и ВСЁ ЗАВИСИТ ОТ ТЕХНОЛОГИИ РАБОТЫ С ОСТАТКАМИ СКЛАДА (РЕГ1) И ТОРГОВОГО ЗАЛА (РЕГ2) и САМОЕ ВАЖНОЕ - ОСТАТКИ МОЖНО ЗАПРАШИВАТЬ НЕ ЧАШЕ РАЗА В ОДИН ЧАС.


Пример сценария:

1. Запрашиваем остатки склада и зала. Переводим ПИВО под остаток со склада в зал. Можно автоматом: hle VseVZalPivo Другие возможности: VseVZalAlco - только алкоголь, VseVZalVse - алкоголь и пиво

2. Проверям проведение через ЕГАИС данных операций - F7 на операции. Можно автоматом: hle Check

3. Выправление минусов по алкоголю, проданному по чекам. Вызов режима из сервиса или автоматом: hle Auto

4. Продажа пива через списания. Данный режим: hle pivo.txt

Программа все операции проводит предыдущей датой и с номерами: <номер дня месяца>_ и в зависимости от типа автоматической операции:

auto - выправление минусов
null - трасфер под ноль
pivo - продажи пива через списания