Реализовать обработку печати кодов маркировки

https://1clancer.ru/task/75243

Обработка это таблица с колонками: Товар (спр Номенклатура), Характеристика (спр Характеристики), Короткий код (Строка), Полный код (Строка)

Варианты заполнения: 1. Добавить из документа. Можно выбрать Расходный ордер, Приходный ордер, Реализацию. После выбора документа заполняются колонки Товар, Характеристика, Короткий код. 2. Сканирование в обработку кода маркировки. Заполняются Товар, Характеристика, Короткий код (не обязательно!), Полный код 3. Добавить марки из файла. Либо выбираем файл эксель и загружаем марки (ищем в пуле и добавляем), либо открываем окно куда из буфера вставляем и после этого добавляем.

Логика работы: Жмем кнопку Обработать. Проходим по всем строкам.

Изначально ОБЯЗАТЕЛЬНО должна быть заполнена либо колонка Короткий код либо Полный под. Если не заполнено то в этой строке сразу ОШИБКА - записываем в Полный код.

Если в строке все колонки заполнены то ничего не делаем. Если хоть одна колонка пустая то заполняем ее. Товар и Характеристику ищем по ШК либо в Пуле кодов маркировки. Полный код ищем по короткому в Пуле кодов маркировки. Все строки в которых ОШИБКА не могут быть напечатаны. Подсветить их красным.

Выбор шаблона этикетки ЧЗ. Поле выбора. Кнопка Печать.

Печатает этикетки по выбранному шаблону. При печати в пуле кодов маркировки ставим Дату печати, Если она была пустая. Если дата печати уже была установлена - не трогаем ее.