При оформлении документов реализации пользователи и бухгалтеры нередко сталкиваются с ситуацией, когда цена номенклатуры в экранной табличной части документа отличается от цены, выводимой в печатных формах ТОРГ-12, Универсального передаточного документа (УПД) или счета-фактуры. Например, в документе указана цена 68 644,07 руб. и количество 0,070 т, сумма без НДС составляет 4 805,08 руб., а при выводе на печать цена за единицу неожиданно превращается в 68 644,00 руб. (пропадают 7 копеек). Разберем подробно, почему типовые конфигурации 1С ведут себя именно так, по какой формуле рассчитывается цена и как корректно решить эту задачу.
Проанализируем базовый принцип формирования печатных форм первичных учетных документов и счетов-фактур. В бухгалтерском и складском учете первичными являются реквизиты Количество и Сумма проводки, тогда как цена выступает расчетной величиной. Более того, форма счета-фактуры и УПД строго регламентирована законодательством (Постановление Правительства РФ № 1137). Согласно установленным правилам, в печатной форме должно выполняться жесткое математическое равенство:
Стоимость товаров без налога (графа 5) = Количество (графа 3) × Цена за единицу (графа 4).
Посмотрим на арифметику исходного примера:
0,070, цена = 68 644,07 руб.0,070 × 68 644,07 = 4 805,0849 руб.4 805,08 руб.4 805,08 / 0,070 = 68 644,00 руб.Если бы программа вывела в графу «Цена» исходные 68 644,07 руб., то любой проверяющий или автоматизированный контроль ФНС при перемножении графы 3 (0,070) на графу 4 (68 644,07) получил бы нестыковку с итоговой стоимостью в графе 5. Чтобы документ оставался арифметически непротиворечивым, цена рассчитывается по формуле:
ЦенаВПечатнойФорме = Окр(СуммаБезНДС / Количество, 2)
Выясним, в каких модулях конфигурации заложена данная логика. В типовых решениях на базе «Библиотеки стандартных подсистем» (Управление торговлей, ERP, Комплексная автоматизация) алгоритмы печати вынесены в модули менеджеров документов и общие модули печати учетных документов (например, УчетНДСКлиентСервер, ПечатьЭлектронныхДокументов или модуль менеджера документа РеализацияТоваровУслуг).
При подготовке выборки данных для табличного документа в запросе или в постобработке строк используется выражение следующего вида:
Выбор
Когда ТаблицаПечати.Количество <> 0 Тогда
Окр(ТаблицаПечати.СуммаБезНДС / ТаблицаПечати.Количество, 2)
Иначе
ТаблицаПечати.Цена
Конец
Таким образом, алгоритм специально переопределяет выводимую цену, исходя из зафиксированной суммы без НДС и количества.
Разберем самое простое и методически верное решение, не требующее вмешательства программиста. Проблема округления возникает из-за сочетания малого дробного количества и крупной единицы измерения (тонны). Если перевести отгрузку в более мелкие единицы (килограммы), искажение исчезает:
0,070 т указываем 70 кг.68,64 руб. (или 68,644 руб. при соответствующей настройке).70 × 68,644 = 4 805,08 руб.При целочисленном или близком к целому количестве деление стоимости на количество перестает вызывать сдвиг целых копеек при округлении до двух знаков.
Минфин и ФНС России в своих разъяснениях допускают указание цены в графе 4 счета-фактуры и УПД с точностью более двух знаков после запятой, если это необходимо для соблюдения точности расчетов. Рассмотрим, как реализовать этот подход:
ЧДЦ=4 (четыре знака для дробной части) вместо стандартного ЧДЦ=2.68 644,0000 или исходные доли копеек будут сохранены в полном объеме, а контрольное умножение на количество сойдется с итоговой суммой строки.Если контрагент требует строгого соответствия цены договору (до копейки) и отказывается принимать расчетную цену, создадим внешнюю печатную форму:
Цена из табличной части документа реализации.ДополнительныеОтчетыИОбработки.Важно: При использовании третьего способа необходимо предупредить бухгалтерию о рисках: если налоговая инспекция при встречной камеральной проверке выявит, что произведение количества на цену дает расхождение с графой «Стоимость без налога», ведомство может выставить требование о предоставлении пояснений.