Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
RaFaeL писал(а): ↑07 Сентябрь 2023, 21:13
класс Игорь мне предоставил
Вот откройте atol.clw и наберите пжалуйста в поиске "Loc:xVerFFD_KT" - Игорь там всё подробно на человеческом языке расписал.
Основные изменения - это сведения о покупателе юр. лице / ИП и тег 2108 (мера кол-ва предмета расчёта). Всё.
Это иное. Просто на сумму - это чек на вносимый аванс.
В чеке на предоплату показаны все оплачиваемы позиции со всеми тегами и собственно вносимой суммой предоплаты за каждую позицию.
Я в финансовых терминах не очень, пусть будет аванс. Я просто не вижу, чтобы в зависимости от типа чека в классе пропускалась обработка тега, видимо туда нужно что-то все равно передать. Или нет?
Но смешанное чувство. С одной стороны в драйвере АТОЛ есть настройка:
LIBFPTR_SETTING_AUTO_MEASUREMENT_UNIT - автоматически подавать реквизит "Мера количества" (2108) на позицию, если реквизит 2003 != 2, 4.
С другой мы ей не пользуемся и для аванса на сумму действительно всегда подаём в чек QSpisok.OKEI = 796 (т.е. Штуки) и далее это уже пишется в тег 2108.
Поднял архив и вспомнил. Настройку LIBFPTR_SETTING_AUTO_MEASUREMENT_UNIT добавили когда поднялся мат
при переходе с ФФД 1.05 на 1.2. Т.е. по сути это системый костыль для тех кому вилы вносить изменения в код.
А во всех остальных случаях нужно формировать для любой позиции чека тег 2108. Что собственно Игорь и сделал.
Игорь Столяров писал(а): ↑08 Сентябрь 2023, 14:03
С другой мы ей не пользуемся и для аванса на сумму действительно всегда подаём в чек QSpisok.OKEI = 796 (т.е. Штуки) и далее это уже пишется в тег 2108.
А не проще в классе если ничего не передано (пустые значения) в QSpisok.OKEI и QSpisok.Unit просто 0 передавать в 2108? )
RaFaeL писал(а): ↑08 Сентябрь 2023, 15:01
А не проще в классе если ничего не передано
Конечно нет. Ведь значение может отсутствовать из-за неправильной инициализации строки чека.
И получится трудно устранимая ошибка (хз почему всегда печатается значение по умолчанию).
Поэтому в любом непонятном случае ЯВНО передаём QSpisok.OKEI = 796 подтверждая адекватность.
RaFaeL писал(а): ↑09 Сентябрь 2023, 18:44
сама касса по дампу маркировки
Есть разные способы формирования тегов кода марки.
Я пользуюсь самым тупым: строка с маркой записывается в параметр LIBFPTR_PARAM_MARKING_CODE и всё.
Напрасно справку игнорите, там всё это есть: https://integration.atol.ru/api/#razbor-koda-markirovki