ФФД 1.2 - Ошибка программирования реквизита 1212

1. 38 13.10.21 15:11 Сейчас в теме
Здравствуйте.
Ссылка на форум Атола http://forum.atol.ru/index.php?showtopic=42238
Продублирую вопрос здесь, может быть, ответ найдется

Драйвер 10.9.0.8, ПО на базе 1С, то есть работа с драйвером ведется через подключаемую компоненту 1с, которая включена в поставку драйвера.
ФФД 1.2, торгуем табачной продукцией.
Клиент оплачиваем товар в два этапа: сперва часть суммы, затем доносит остаток.
В момент первой оплаты пробиваем чек с указанием ППР = 31 (Подакцизная продукция с кодом маркировки), ПСР = 5 (Частичная оплата и кредит) - чек пробивается нормально.
Затем, когда клиент доносит остаток денег, пробивается второй чек. В нем ППР = 10 (Платеж), ПСР = 7 (Оплата кредита). И вот именно на этом этапе получаем ошибку "Объекту 0x3A8F0580 присвоен код ошибки 148 [Ошибка программирования реквизита 1212]".
Обычно по сообщению об ошибке можно так и ли иначе понять, что не так формируется, но здесь тег 1212 - это "Признак предмета расчета". Тот самый, который обязательный и числовой. В нем нельзя ошибиться, его нельзя не передать, его нельзя не заполнить.
Кто-нибудь сталкивался?

<?xml version="1.0" encoding="UTF-8"?>
<CheckPackage>
    <Parameters CashierName="<Кассир>" CashierINN="<ИННКассира>" OperationType="1" TaxationSystem="0" SaleAddress="<Адрес>" SaleLocation="<МестоПроведенияРасчетов>" CustomerEmail="" CustomerPhone="">
        <AgentData/>
        <VendorData/>
        <CustomerDetail Info="<Клиент>" INN="<ИННКлиента>"/>
        <OperationalAttribute/>
        <IndustryAttribute/>
    </Parameters>
    <Positions>
        <FiscalString Name=""Паркер/Симпсон  Дуо Ред  МТсиг" / "МРЦ 115"" Quantity="1" PriceWithDiscount="1106.2" AmountWithDiscount="1106.2" DiscountAmount="" Department="1" VATRate="20" VATAmount="184.37" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Филип Моррис Голд сиг МТ" / "МРЦ 125"" Quantity="1" PriceWithDiscount="1197.9" AmountWithDiscount="1197.9" DiscountAmount="" Department="1" VATRate="20" VATAmount="199.65" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Честерфилд Селекшн Компакт сиг МТ" / "МРЦ 125"" Quantity="1" PriceWithDiscount="1197.9" AmountWithDiscount="1197.9" DiscountAmount="" Department="1" VATRate="20" VATAmount="199.65" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Плэй Sunrise МТ  сиг" / "МРЦ 126"" Quantity="1" PriceWithDiscount="1219.9" AmountWithDiscount="1219.9" DiscountAmount="" Department="1" VATRate="20" VATAmount="203.32" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Донской табак темный МТ сиг" / "МРЦ 126"" Quantity="1" PriceWithDiscount="1221.5" AmountWithDiscount="1221.5" DiscountAmount="" Department="1" VATRate="20" VATAmount="203.58" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Максим Серый сиг МТ" / "МРЦ 130"" Quantity="1" PriceWithDiscount="1257.3" AmountWithDiscount="1257.3" DiscountAmount="" Department="1" VATRate="20" VATAmount="209.55" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Кэмел КОМПАКТ БЛЮ сиг  MT" / "МРЦ 125"" Quantity="1" PriceWithDiscount="1207.6" AmountWithDiscount="1207.6" DiscountAmount="" Department="1" VATRate="20" VATAmount="201.27" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""ЛД Автограф Клаб КОМПАКТ Лаундж МТсиг" / "МРЦ 138"" Quantity="1" PriceWithDiscount="1334.4" AmountWithDiscount="1334.4" DiscountAmount="" Department="1" VATRate="20" VATAmount="222.4" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Винстон XS Блю МТсиг" / "МРЦ 178"" Quantity="1" PriceWithDiscount="1721" AmountWithDiscount="1721" DiscountAmount="" Department="1" VATRate="20" VATAmount="286.83" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Максим Красный МТсиг" / "МРЦ 126"" Quantity="1" PriceWithDiscount="1218.8" AmountWithDiscount="1218.8" DiscountAmount="" Department="1" VATRate="20" VATAmount="203.13" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Винстон XSтайл Блю МТсиг" / "МРЦ 168"" Quantity="1" PriceWithDiscount="1615.3" AmountWithDiscount="1615.3" DiscountAmount="" Department="1" VATRate="20" VATAmount="269.22" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""ЛД Автограф Импульс КОМПАКТ 100s BREEZY МТсиг" / "МРЦ 125"" Quantity="1" PriceWithDiscount="1205.3" AmountWithDiscount="1205.3" DiscountAmount="" Department="1" VATRate="20" VATAmount="200.88" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
        <FiscalString Name=""Кэмел КОМПАКТ  Yellow CRUSH сиг MT" / "МРЦ 125"" Quantity="1" PriceWithDiscount="1207.6" AmountWithDiscount="1207.6" DiscountAmount="" Department="1" VATRate="20" VATAmount="201.27" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>
    </Positions>
    <Payments Cash="14124.7" ElectronicPayment="0" PrePayment="2586" PostPayment="0" Barter="0"/>
</CheckPackage>
Показать
Вознаграждение за ответ
Показать полностью
Найденные решения
13. demon_infernal 38 19.10.21 13:45 Сейчас в теме +5 $m
Проблему удалось решить.
Дело было в том, что я передавал сумму акциза ExciseAmount="0" (тег 1229).

<FiscalString Name=""Плэй Sunrise МТ  сиг" / "МРЦ 126"" Quantity="1" PriceWithDiscount="1219.9" AmountWithDiscount="1219.9" DiscountAmount="" Department="1" VATRate="20" VATAmount="203.32" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>

К ошибке приводит именно наличие в чеке одновременно ППР=10 и этого тега. Убрал тег - все заработало.
Всем спасибо.
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
4. user856012 13 14.10.21 02:14 Сейчас в теме
(1)
когда клиент доносит остаток денег, пробивается второй чек. В нем ППР = 10 (Платеж), ПСР = 7 (Оплата кредита). И вот именно на этом этапе получаем ошибку "Объекту 0x3A8F0580 присвоен код ошибки 148 [Ошибка программирования реквизита 1212]"
ИМХО, закономерно ошибка возникает: оплачивается кредит, а в чеке перечисляется номенклатура, да еще и маркированная.

Тут, как говорится, или крестик снимать, или трусы надевать - то есть, либо товары из второго чека убирать, либо ППР и в нем должен быть 31.

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

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

В-общем, подумайте над сказанным и переделывайте процедуру формирования второго чека, благо конфа у вас самописная.
5. demon_infernal 38 14.10.21 14:51 Сейчас в теме
(4) во втором чеке нет никакого указания на то, что товар маркированный. Там просто его наименование.
Указывать наименование товара в чеке обязательно, даже если передача товара произошла раньше.
Посмотрите, например, здесь
вы когда через тест драйвера чек пробиваете, там тоже продукцию перечисляете?

Да, перечисляю, это не сложно.
Ну и конечный аргумент - на ФФД 1.05 эта же схема пробития чеков работала без нареканий (в том числе со стороны ФНС)
2. d.batovskiy 13.10.21 17:23 Сейчас в теме
Какая версия программы, и сама какая конфа?
3. demon_infernal 38 13.10.21 23:17 Сейчас в теме
Конфа самописная, используется БПО 2.1.6.18 (последняя на данный момент)
6. neos_11 15.10.21 15:42 Сейчас в теме
Касса случайно не в автономном режиме?
7. demon_infernal 38 15.10.21 22:43 Сейчас в теме
8. neos_11 15.10.21 22:58 Сейчас в теме
А почему ППР = 10? Это все та же подакцизная продукция, и по логе вещей должна быть ППР = 31 (Подакцизная продукция с кодом маркировки)
Плюс две оплаты.

Тут что не так...

1) Или вы в первый раз пробиваете чек с передачей товара с двумя видами оплата: нал\безнал + в кредит;
2) Вы пробиваете просто оплату, без табличной части оплата кредита

Если товар не передается, то пробиваете просто аванс без списка товара, а при доплате уже с передачей продукции.

Чек №1 формируется при передаче товара без оплаты
Признак способа расчета: Передача в кредит
Признак предмета расчета: Товар
Цена: 1000 руб. настоящая цена товара
Наличными: 0 руб.
Безналичными: 0 руб.
В кредит: 1000 руб.

Чек №2 и Чек №3 формируются при получении оплаты в счет погашения кредита
Признак способа расчета: Оплата кредита
Признак предмета расчета: Платеж
Цена: 500 руб. размер платежа
Наличными: 0 руб.
Безналичными: 500 руб.

И еще: https://its.1c.ru/db/kkt/content/125/hdoc
https://ask-prof.ru/articles/priznak-sposoba-rascheta-v-kassovom-cheke
9. demon_infernal 38 16.10.21 14:51 Сейчас в теме
(8)
Или вы в первый раз пробиваете чек с передачей товара с двумя видами оплата: нал\безнал + в кредит;
Да, так и есть. В первом чеке в секции Оплата две строки: Наличные - сумма первого платежа, Постоплата - остаток суммы

Если товар не передается, то пробиваете просто аванс без списка товара
нет, и по ссылке на ИТС, приведенной вами, об этом написано.
Наименование товара в чеке указывается в любом случае, когда оно известно. В случае постоплаты мы знаем, за какой товар клиент платит.
Когда пробивается первый чек и непосредственно передается товар - ППР 31, в чеке есть коды маркировки. Когда пробивается второй чек - ППР 10, кодов маркировки в чеке нет. Все в соответствии с ИТС.
10. user856012 13 16.10.21 15:36 Сейчас в теме
(5)
Да, перечисляю, это не сложно.
Ну так посмотрите в логах драйвера - как именно формируется чек, что при этом передается в ККМ. А что - не передается, об этом - ниже.
Ну и конечный аргумент - на ФФД 1.05 эта же схема пробития чеков работала без нареканий
А, по-вашему, форматы ФФД ничем не должны отличаться друг от друга? Странная логика, примерно как: "Вот я вчера катался на лыжах, а сегодня они у меня не едут, что случилось?"

Вот вам для размышлений цитата с ИТС:
Напомним, что признак предмета расчета (Тег 1212) может не включаться в печатный чек (БСО) независимо от версии ФФД. В электронном чеке в ФФД 1.05 он рекомендуется, а для ФФД 1.1 обязателен.


(9)
Наименование товара в чеке указывается в любом случае, когда оно известно.
А в оригинале описания ФФД говорится, что сведения "о реализуемом товаре, за исключением подакцизного товара и товара, подлежащего маркировке средствами идентификации (наименование и иные сведения, описывающие товар)" соответствуют ППР=1, а если используется ППР=10, то поле "наименование предмета расчета» (тег 1030)" содержит сведения "об авансе, задатке, предоплате, кредите".

Впрочем, хватит с меня уговоров, решайте сами. Только учтите: вчерашний снег кончился, сегодня - асфальт. :)
11. neos_11 16.10.21 16:55 Сейчас в теме
Я как понимаю, идея была сначала пробить часть денег с указанием товара, потом дополучить деньги с указанием товара, верно? Чтобы второй чек был "закрывающим"?
12. demon_infernal 38 18.10.21 19:06 Сейчас в теме
(10) Столько слов, чтобы доказать очевидное - форматы со временем меняются. Тот факт, что у ФФД есть версия, уже об этом говорит.
Изучайте:
Какие ППР и ПСР пишутся при оплатах - ИТС
Зачем вы ставите под сомнение, что у меня правильно заполнены ППР и ПСР - я не понимаю. От версии ФФД это вообще никак не зависит. Ну ок, в 1.2 вместо ППР 1 для сигарет нужно писать ППР 31, но даже если я напишу ППР 1 (то есть вообще не буду ничего менять в своей УС) - чек все равно пробьется и ошибки это не вызовет. Более того, большинство различных форматов, которые изменяются, изменяются так, чтобы их новые версии можно было использовать без изменений в учетных системах. Это называется "обратная совместимость".
Тег 1030 (наименование) обязательный для всех с одним исключением Полный оригинальный ФФД - nalog.ru.

(11) Да, верно. Строго говоря, второй чек может быть и не последним, но какой то из последующих после первого чека точно будет "закрывающим".
13. demon_infernal 38 19.10.21 13:45 Сейчас в теме +5 $m
Проблему удалось решить.
Дело было в том, что я передавал сумму акциза ExciseAmount="0" (тег 1229).

<FiscalString Name=""Плэй Sunrise МТ  сиг" / "МРЦ 126"" Quantity="1" PriceWithDiscount="1219.9" AmountWithDiscount="1219.9" DiscountAmount="" Department="1" VATRate="20" VATAmount="203.32" PaymentMethod="7" CalculationSubject="10" ExciseAmount="0">
            <AgentData/>
            <VendorData/>
            <IndustryAttribute/>
        </FiscalString>

К ошибке приводит именно наличие в чеке одновременно ППР=10 и этого тега. Убрал тег - все заработало.
Всем спасибо.
Оставьте свое сообщение
Вопросы с вознаграждением
Вакансии
Программист 1С
Москва
зарплата от 150 000 руб. до 200 000 руб.
Полный день

Ведущий разработчик 1С
Москва
зарплата от 250 000 руб.
Полный день

Руководитель проектов 1С
Москва
зарплата от 200 000 руб.
Полный день

Консультант-аналитик 1С
Нижний Новгород
зарплата от 55 000 руб. до 100 000 руб.
Полный день

Аналитик 1С ERP
Санкт-Петербург
зарплата до 200 000 руб.
Полный день