Все больше и больше товаров относят к "маркируемым". Саму УТ10.3 компания 1С до этих нововведений подтягивает (пусть и с задержками, тематические релизы выходят впритык), но вот обновления интеграции с ККМ-оффлайн остановились годы назад.
* Обновлено 27.08.22 (у обновленных обработок выставлена версия 10.3.72.3)
Добавлена передача признака молочной продукции!
Проверено на УТ 10.3.72.3
*** Не передает данные под ЕГАИС - для этого необходимо заполнение еще ряда полей
Реализация
1. Включаем специальную константу (которые сейчас есть для табака, обуви) - этим мы отображаем реквизит (логический) в карточке номенклатуры.
2. Расставляем флаги в номенклатуре, вручную, или обработкой.
3. Передаем данные этого флага в поле 55(формат Атол). Согласно документации Атола требования к полю 55 такие -
//Признак предмета расчёта:
// 0 – товар;
// 1 – алкогольная продукция;
// 2 – изделия из меха;
// 3 – лекарственные препараты;
// 4 – табачная продукция;
// 5 – обувь;
// 6 - лотерея;
// 7 – иная маркированная продукция;
// 8 – фототовары;
// 9 – парфюмерная продукция;
// 10 – шины;
// 11 – товары легкой промышленности;
// 12 – альтернативная табачная продукция;
// 13 — молочная продукция;
// 14 — ювелирные изделия;
// 101 - Табачная продукция (Казахстан).
Кстати, ноль для обычного товара передавать необязательно - можно просто не заполнять это поле.
Возьмем обработку из каталога шаблонов конфигурации(ATOLCashierECROffline), добавим проверку Товара на принадлежность к маркируемой группе, и, в случае таковой - передадим соответствующий признак в Frontol.
Для Каждого Товар Из Товары Цикл
ПризнакПредметаРасчета = "1";
ВидМарки = ТипМаркировки(Товар.Номенклатура.ВидПродукцииИС);
если ВидМарки="4" тогда //это табак
ПризнакПредметаРасчета ="2"; //подакциз
конецесли;
/////////////////////////////////////////////////////////////////////////
// ... прочий код
/////////////////////////////////////////////////////////////////////////
+ "" + мРазделитель // 54 емкость тары
+ ВидМарки; // 55 вид маркированной продукции
/////////////////////////////////////////////////////////////////////////
// ... прочий код
/////////////////////////////////////////////////////////////////////////
функция ТипМаркировки(ВидПродукцииИС)
результат = "";
если ВидПродукцииИС = Перечисления.ВидыПродукцииИС.Обувь тогда
результат = "5";
иначеесли ВидПродукцииИС = Перечисления.ВидыПродукцииИС.Табак тогда
результат = "4";
иначеесли ВидПродукцииИС = Перечисления.ВидыПродукцииИС.ЛегкаяПромышленность тогда
результат = "11";
иначеесли ВидПродукцииИС = Перечисления.ВидыПродукцииИС.Алкогольная тогда
результат = "1";
иначеесли ВидПродукцииИС = Перечисления.ВидыПродукцииИС.МолочнаяПродукцияБезВЕТИС тогда
результат = "13";
иначеесли ВидПродукцииИС = Перечисления.ВидыПродукцииИС.МолочнаяПродукцияПодконтрольнаяВЕТИС тогда
результат = "13";
конецесли;
возврат результат
КонецФункции
Extra
Дополнительно - в поле 13 (признак предмета расчета) в обработке подставляется "1" (для обычного товара) и "2" для табака.
Вместо послесловия
У нас обработка была сделана своевременно, и даже до выпуска обновления в 1С. Мы сами добавили логическое поле "Обувь", причем в январе, и уже могли выгружать данные. Я к чему это говорю - видимо, в ут 10.3 1С так и будет делать "логические" поля под каждый вид маркируемой продукции, так что можно добавлять их самостоятельно, и править обработку, согласно требованиям формата Атол.