При работе в 1С:Управление торговлей (УТ) версии 11.4 или 11.5, особенно когда мы имеем дело с дробными количествами товаров (например, весовым или метражным товаром) и ценами с ограниченной точностью (обычно до двух знаков после запятой), может возникнуть ситуация, когда произведение количества на цену не дает желаемой "ровной" итоговой суммы по строке. Это особенно актуально для организаций, участвующих в тендерах, где требуется строго определенная круглая сумма. Возникает вопрос: как обеспечить такую точность в учетной системе и как это повлияет на электронный документооборот (ЭДО) и приемку товаров у покупателя?
Давайте подробно разберем, как мы можем решить эту проблему, используя стандартный функционал 1С и учитывая особенности ЭДО.
Представим типовую ситуацию: клиент заказывает 503.1 единицы товара. Если цена за единицу составляет 44.72, итоговая сумма будет 22498,632. Если цена 44.73, сумма будет 22503,663. Однако нам нужна строго ровная сумма, например, 22500.00. Казалось бы, невозможно достичь такой суммы, если мы привязаны к двум знакам после запятой в цене. Основное заблуждение, которое часто встречается, заключается в предположении, что система 1С всегда строго соблюдает правило Количество * Цена = Сумма с округлением цены до двух знаков после запятой, не позволяя вручную корректировать итоговую сумму.
На самом деле, это не так. 1С предоставляет гибкие механизмы для управления итоговой суммой в документе, и мы можем использовать их для решения нашей задачи.
Это самый прямой и часто недооцениваемый способ добиться желаемой ровной суммы. В большинстве документов реализации в 1С:Управление торговлей, а также в 1С:Бухгалтерии, мы можем вручную изменить итоговую сумму в строке, даже если количество уже указано. Система 1С не препятствует этому, а наоборот, автоматически пересчитывает цену, чтобы она соответствовала введенной сумме и количеству.
Количество. Мы можем просто перейти в поле Сумма для этой строки и вручную ввести желаемое значение, например, 22500.00.Цена для этой строки. В нашем примере, если Количество = 503.1 и мы ввели Сумма = 22500.00, то поле Цена будет рассчитано как 22500.00 / 503.1 ≈ 44.72271914132379.Почему это работает? Система 1С спроектирована таким образом, чтобы дать пользователю возможность управлять ключевыми показателями. Если мы вручную указываем итоговую сумму, 1С считает это нашим приоритетом и корректирует другие зависимые поля (в данном случае, цену) для достижения этой суммы. Правило Количество * Цена = Сумма становится вторичным по отношению к явно заданной сумме.
Один из основных вопросов, волнующих пользователей, – это как такая "неровная" цена повлияет на покупателя и на формирование Универсального передаточного документа (УПД). Давайте разберемся:
ЦенаТов N(26.11)). Это означает, что если ваша система передаст рассчитанную цену, например, 44.7227191413, то покупатель в своем ЭДО получит именно это значение, и проверка Количество * Цена = Сумма будет пройдена с максимальной точностью.Количество и Сумму (22500.00). Его система 1С автоматически рассчитает цену (например, 44.72) и проведет документ. Для бухгалтера важна именно итоговая сумма и соответствие ее с вашим документом, а не строгая арифметическая точность умножения в каждой строке вплоть до копейки, если расхождения вызваны округлением дробных значений.Вывод по ручному изменению суммы: Этот метод является простым и эффективным. Он позволяет напрямую установить нужную ровную сумму и при этом не вызывает проблем у контрагентов, особенно при использовании ЭДО с поддержкой высокой точности цен.
Если по какой-то причине прямое изменение суммы кажется нам нежелательным или мы хотим явно показать корректировку, мы можем использовать механизм ручных скидок. В 1С:Управление торговлей реализована мощная подсистема скидок, которая позволяет применять их как процентом, так и фиксированной суммой.
Сумма по строке станет желаемой ровной величиной, а Цена будет пересчитана с учетом скидки и количества.Пример: Если у нас была сумма 22498,632, а мы хотим получить 22500.00, то система рассчитает наценку в размере 1.368. Эта наценка будет применена к строке, и итоговая сумма станет 22500.00. При этом, как и в первом случае, поле Цена будет скорректировано (внутренне с высокой точностью), чтобы Количество * ПересчитаннаяЦена = 22500.00.
Особенности УПД и скидок: Как мы уже упоминали, УПД не имеет отдельного поля для скидки. Когда скидка применяется, она уменьшает (или увеличивает, в случае наценки) итоговую сумму по строке. В УПД попадет уже финальная сумма и цена, рассчитанная от этой финальной суммы. Таким образом, для контрагента разницы не будет, использована ли скидка или сумма была изменена напрямую – он увидит только конечные значения.
Этот подход является наиболее фундаментальным и полностью устраняет проблемы округления при передаче данных через ЭДО, обеспечивая полную арифметическую корректность. Он основан на понимании того, что современные требования к форматам обмена (например, для госзакупок по 44-ФЗ или в Приказах ФНС по форматам счетов-фактур) позволяют использовать цену с гораздо большей точностью, чем привычные два знака после запятой.
ЦенаТов (цена за единицу измерения) определен формат N(26.11), что означает число до 26 знаков, из которых до 11 могут быть после запятой.Это говорит нам о том, что сама по себе идея "цена всегда два знака" – это устаревшее ограничение, связанное, скорее, с привычками бумажного документооборота и отображением на экране, нежели с техническими возможностями систем или юридическими требованиями.
Точность для реквизитов, которые хранят цену (например, Цена в табличных частях документов, или в регистрах цен) до 5, 7 или даже 11 знаков после запятой.Количества и Суммы, поле Цена будет автоматически рассчитано с этой повышенной точностью. Например, для наших 503.1 единиц и суммы 22500.00 цена станет 44.7227191413... и будет сохранена именно с такой точностью.Количество * Цена = Сумма будет строго соблюдено без каких-либо округлений.Преимущества этого подхода:
Недостатки: Требует внесения изменений в конфигурацию 1С, что связано с работой программиста и необходимостью поддержки этих изменений при обновлении типовых конфигураций (хотя это можно решить с помощью расширений).
Важно понимать, что УПД – это не просто печатная форма, а юридически значимый документ, который может быть передан как на бумаге, так и в электронном виде. Электронный УПД (формат которого утвержден ФНС) является основным способом обмена данными между контрагентами в рамках ЭДО.
Как уже отмечалось, в структуре УПД нет отдельных полей для детализации скидок или "костылей" для выравнивания суммы. В нем присутствуют итоговые значения: Наименование, Количество, Цена и Сумма. Любые скидки или корректировки, которые мы применяем в своей системе, должны быть учтены до формирования итоговых показателей для УПД.
Операторы ЭДО и учетные системы покупателей обычно выполняют форматно-логический контроль (ФЛК) входящих документов. Одним из таких контролей является проверка арифметического соотношения Количество * Цена = Сумма. Если цена в электронном УПД передана с недостаточной точностью (например, до двух знаков), и это приводит к небольшому расхождению в сумме (например, 99.99 вместо 100.00), некоторые системы могут сигнализировать об ошибке.
Поэтому наиболее надежным подходом является передача цены с высокой точностью через ЭДО. Если это невозможно (например, из-за ограничений системы покупателя, хотя это маловероятно для современных систем 1С и ЭДО), то обычно небольшие расхождения, вызванные округлением, игнорируются или обрабатываются покупателем путем ручной корректировки суммы (что, как мы выяснили, возможно в 1С).
В случае, если возникают вопросы у покупателя по поводу расхождений в копейках, важно провести разъяснительную работу. Мы можем объяснить, что итоговая сумма является приоритетной и верной, а небольшие отклонения при пересчете цены связаны с округлением дробных количеств. Рекомендуется, чтобы покупатель в своей системе 1С вводил документ не путем умножения округленной цены на количество, а путем ввода Количества и Итоговой суммы, позволяя своей системе автоматически пересчитать цену.
Итак, проблема достижения ровной итоговой суммы в строке документа при дробных количествах в 1С:УТ 11.4/11.5 имеет несколько эффективных решений:
Сумма строки документа. 1С автоматически пересчитает цену, и эта скорректированная цена (возможно, с высокой внутренней точностью) будет использоваться для формирования УПД.Важно помнить:
Количество * Цена = Сумма не является абсолютным и может быть "нарушено" в пользу явно заданной суммы или скидки.Выбирайте тот подход, который наилучшим образом соответствует вашим внутренним процессам, требованиям тендеров и возможностям вашей команды по настройке и доработке 1С. Во многих случаях простое ручное указание суммы оказывается достаточным и эффективным решением.