Погрешность округления и есть ли средство борьбы с ней возможностями 1С?

12.09.18

Учетные задачи - Печатные формы

Политика 1С по использованию возможностей баз данных доросла до использования объектно-ориентированного программирования в 1С Предприятие 8.Х Но от погрешностей округления увы 1С-ники так и не избавились. Предлагаю вариант печати ТОРГ-12 в валюте документа "Реализация товаров и услуг" для Бухгалтерии 2.0 и 3.0 платформа 8.3

Скачать файлы

Наименование Файл Версия Размер
: ТОРГ-12 в валюте для Бухгалтерии 2.0
.epf 18,29Kb
2
.epf 1.0 18,29Kb 2 Скачать
: : ТОРГ-12 в валюте для Бухгалтерии 3.0
.epf 20,97Kb
2
.epf 1.0 20,97Kb 2 Скачать

Погрешность округления и есть ли

средство борьбы с ней возможностями 1С?

 

 

Работая с прикладными решениями 1С начиная с времен  «1С ДОСТУПНО и ВСЕРЬЁЗ», обратил  внимание на сложности с округлением сумм при пересчете валюты в рубли.

Проблема точности возникала и остается по настоящее время, практически во всех типовых решениях 1С.

Про конфигурации Бухгалтерия 2.0 для операционной системы DOS и Бухгалтерия 6.0 для операционной системы Windows говорить не буду, поскольку проблемы там решались продвинутыми пользователями, не говоря уже о системщиках и программистах.

Начиная с платформы 1С Предприятие 7.0 сопровождение ее пользователями ограничилось лишь установкой регламентной отчетности и обновлений. Все доработки под себя перешли в руки специалистов по поддержке и доработке продуктов 1С.

Политика 1С по использованию возможностей баз данных доросла до использования объектно-ориентированного программирования в 1С Предприятие 8.Х.

Но от погрешностей округления увы 1С-ники так и не избавились.

Фирма работает в 1С Бухгалтерия 2.0 версия 2.0.66.38 файловый вариант 5 пользователей, Платформа 1С Предприятие 8.3 релиз 8.3.11.2867.

В октябре 17 года мне пришлось по возится с сложной отгрузкой на 245 позиций.

Договор с клиентом в у.е. с оплатой в рублях по курсу на дату оплаты, при этом запуск в производство только после предоплаты 50% и окончательная предоплата при подтверждении готовности товара к отгрузке. Цены в у.е. НДС сверху. Отсюда и вся свистопляска с округлением рублевых сумм, и расхождения в ТОРГ-12 и счете-фактуре.

Отгрузка как всегда проходила в режиме «ВСЕ УЖЕ ОТПРАВИЛИ ВЧЕРА». Естественно сверять досконально все позиции в ТОРГ-12 и счете-фактуре менеджер не стал. Как результат пришлось переделывать документы не один раз. При этом при печати в очередной раз по строкам товаров получались разные суммы хотя итоговые были одинаковые.

Эта ситуация очень заинтересовала меня, тем более работая в Комплексной 7.7 я установил запрет повторного пересчета рублевых движений по документам в у.е. То есть пересчет производился в документе, а глобальные процедуры пересчета не запускались.

Прошел почти год и снова те же грабли. Хотя уже и 1С ушла далеко в перед.

Не однократные потуги перевести работу на Бухгалтерию 3.0 даже после удачных с моей точки зрения обновления базы с Бухгалтерии 2.0 на Бухгалтерию 3.0 Главный бухгалтер не спешит и продолжаем работать в Бухгалтерии 2.0

Поскольку применение унифицированной формы ТОРГ-12 не является обязательным

(«С 1 января 2013 года формы первичных учетных документов, содержащиеся в альбомах унифицированных форм первичной учетной документации, не являются обязательными к применению.»- Информация Минфина России N ПЗ-10/2012.), я решил найти форму печати ТОРГ-12 для Бухгалтерии 2.0 в валюте документа.    

 

Облазив все доступные ресурсы, нашел на сайте ИНФОСТАРТ обработку, но брать не стал жаба задушила платить 1000 руб. (//infostart.ru/public/329124/).

Поэтому решил разобраться, а можно ли решить проблему самому. Почему если Счет-фактура выписывается на основании Расходной и в нем только ссылка на Расходную, то в чем причина расхождения сумм в рублях для документов в валюте.

Вот корректировки суммы ТОРГ-12 при наличии авансов в модуле с сокращениями :

//***********
   Если СсылкаНаОбъект.Проведен И (Шапка.РасчетыВУсловныхЕдиницах
             ИЛИ (Шапка.ВалютаДокумента <> мВалютаРегламентированногоУчета И СсылкаНаОбъект.Дата >= '20090101000000')) Тогда
             Запрос = Новый Запрос;
             Запрос.УстановитьПараметр("Ссылка", СсылкаНаОбъект);
             Запрос.УстановитьПараметр("СчетУчетаРасчетовСКонтрагентом", СсылкаНаОбъект.СчетУчетаРасчетовСКонтрагентом);
             Текст =
             "ВЫБРАТЬ
             |         СУММА(Хозрасчетный.Сумма) КАК Сумма
             |ИЗ
             |         РегистрБухгалтерии.Хозрасчетный КАК Хозрасчетный
             |ГДЕ
             |         Хозрасчетный.Регистратор = &Ссылка
             |         И Хозрасчетный.СчетДт = &СчетУчетаРасчетовСКонтрагентом
             |         И Хозрасчетный.СчетКт В
             |                             (ВЫБРАТЬ РАЗЛИЧНЫЕ
             |                                       РеализацияТоваровУслугТовары.СчетДоходов
             |                             ИЗ
             |                                       Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары
             |                             ГДЕ
             |                                       РеализацияТоваровУслугТовары.Ссылка = &Ссылка";
            Запрос.Текст = Текст;
             СуммаВзаиморасчетов = Запрос.Выполнить().Выгрузить()[0].Сумма;
             РасчетСуммыНДСПоСтавке =  УчетНДС.РасчетНДСвРубляхПоСтавкеДокумента(Шапка.ДатаДокумента);

   // далее текст не внесен         
                      МассивРаспределения = Новый Массив;
  //*****************                   
                                СуммаСНДС = СтрокаТовар.Сумма + ?(Шапка.СуммаВключаетНДС, 0, СтрокаТовар.СуммаНДС);
                                СуммаБезНДС = СуммаСНДС - СтрокаТовар.СуммаНДС;
                               МассивРаспределения.Добавить(СуммаСНДС);
                      ЗапросТовары.Колонки.Добавить("СуммаРублевая");
                       УчетНДС.РаспределитьСуммуПоСтолбцу(МассивРаспределения, СуммаВзаиморасчетов, ЗапросТовары, "СуммаРублевая");
         МассивРаспределенныхСумм = ОбщегоНазначения.РаспределитьПропорционально(СтрокаТовар.СуммаРублевая, МассивРаспределения);
// Далее не интересно
//**********

   При формировании данных для печати счета-фактуры распределение сумм авансов происходит повторно командой -

МассивРаспределенныхСумм = ОбщегоНазначения.РаспределитьПропорционально(СтрокаТовар.СуммаРублевая, МассивРаспределения);

и в результате ошибки округления распределяются по строкам не так как в ТОРГ-12. 

     Однако прежде чем я это нашел пришлось помучится. Так на своем ноутбуке пришлось переустанавливать платформу 1С.

 

В платформе 8.2.19.130 с поиском все нормально, но

 

В платформе 8.3.10.2667 поиска не оказалось хотя переходы на Бухгалтерию 3.0 ЗУП 3.0 на ней проводил без проблем с зависанием в процессе конвертации баз, что характерно для релизов 8.3.9.ХХХХ и 8.3.11.ХХХХ.

 

Пришлось установить платформу 8.3.12.1529 и работать в ней

 

 

      Но с поиском «ищи то не знаю что» я честно запарился. Разобраться с огромным количеством процедур и функций, которые имеют статус глобальных и найти их (т.е. отследить где и какой процесс ее использует) мне с моими познаниями архитектуры и встроенного языка, используя глобальный поиск не удалось.

То есть я так не смог найти в Бухгалтерии 2.0 способ или метод распределения рублевых сумм по строкам в ТОРГ-12 и в Счет-фактуре, так чтобы они были равны.

В результате сравнения всех данных выявилось следующее:

Основная причина это, округление особенно если в валютной сумме НДС сверху.

Вот пример из той злополучной отгрузки в $:

Кол-во 6 Цена без НДС 5677,70 Сумма без НДС 34066,20 

НДС 6131,92 Сумма с НДС 40198,12

После учета авансов итог в рублях:

Кол-во 6 Цена без НДС 325902,57 Сумма без НДС 1955415,39

НДС 351974,77 Сумма с НДС 2307390,16

 

Если исходить из требований налоговых органов и законодательства, то распределение сумм по позициям товаров в отгрузке их мало волнует, если ставка НДС для всех одинаковая. Их интересует итоговая сумма отгрузки и сумма НДС (эту сумму надо перечислить в бюджет.

Поэтому расхождения при пересчете валюты в рубли особенно не напрягают 1С-ников. Они пересчитывают в соответствии с требованиями законодательства, а то что не все цифры идентичны в накладной и счет-фактуре так это погрешности округления.

В нашем случае, если высчитать курс, то получим 57,40044957326363 по сумме или 57,40045617063247 по цене. Можете пересчитать в обратную сторону после округления и получите совершенно другие суммы и цены.

Вот СкринШоты по разбору полетов

 

ТОРГ-12 печать в Бухгалтерии 2.0 (встроенная печать) начало накладной

 

Обратите внимание на курс по строкам очень не одинаковый!

 

Счет-фактура печать в Бухгалтерии 2.0 (встроенная печать) начало накладной

 

Обратите внимание на курс по строкам очень одинаковый! И с ТОРГ-12 не пляшет, суммы тоже не все одинаковые.

А вот суммы проводок

 

Сравните подчеркнутые красным суммы везде разные. Вопрос к 1С как они туда попадают,

 

А это последний лист накладной и счета фактуры. Расхождение в копейку, мелочь!

 Из всего этого самый простой выход – Отправлять отгрузочные документы Универсальным Передаточным Документом, поскольку от идентичен Счету-фактуре и принимается налоговыми органами основанием для расчета уплаты НДС.

Но в моем случае Покупатель отказывается получать УПД, ему нужен счет-фактура и накладная типа ТОРГ-12 (т.е. со всеми реквизитами Поставщика и Покупателя).

Вот и решил ваять свою печатную форму ТОРГ-12 которых на ИНФОСТАРТЕ пруд пруди, но такой за StartMoney я не нашел поэтому решил выложить на ваш суд свой труд

 

Печатная форма ТОРГ-12 (в валюте) для Бухгалтерии 2.0 сделана на основе обработки скачанной в 2012 году для печати с комплектами номенклатуры ссылку на неё не нашел близкая к ней //infostart.ru/public/163284/.

 

 

В результате получил в ТОРГ-12 строку Товара в валюте, а итоги по странице и всего в валюте и рублях. Данные Товара в рублях не вывожу, чтобы меньше работы по ручной корректировке. И Покупатель сам решит по какой сумме приходовать товар.

Регистрация обработки стандартная Меню -> "Сервис" -> "Дополнительные отчеты и обработки" -> "Дополнительные внешние печатные формы" в меню -> "Добавить"  и выбрать файл обработки. В окне -> "Принадлежность печатной формы"  выбрать Реализацию товаров и услуг.

Если реализация в рублях, то печатается обычная форма ТОРГ-12

 

 

 

Печатная форма ТОРГ-12 (в валюте) для Бухгалтерии 3.0 сделана на основе обработки   //infostart.ru/public/712880/

 

 

В принципе для тройки проблемы с расхождением рублевых сумм в ТОРГ-12 и счете-фактуры нет, поэтому эта форма на любителя. 1С-ники решили эту проблему вводом Регистра сведений «РублевыеСуммыДокументовВВалюте». И все документы берут их из этого регистра. Так что если документ проведен, то все окей.

В обработке можно в макете добавить и рублевые суммы по товару они есть только не выводятся.

А вот проводки по злополучной отгрузке в 3.0

 

Все ясно рассказано и объяснено. Естественно курс пляшет.

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

 

Отработки тестировались на платформах:

1С Предприятие 8.3.10.2667, 8.3.11.2867, 8.3.12.1529

Конфигурации: Бухгалтерия 2.0 (2.0.66.60), Бухгалтерия 3.0 (3.0.64.54).

Код открыт так что кому надо можете доработать под себя.

 

Для сведения в тройке обработка подключается

через Раздел "Администрирование" -> "Печатные формы, отчеты и обработки" -> ставим галочку напротив "Дополнительные отчеты и обработки" -> "Дополнительные отчеты и обработки" -> кнопка "Создать" и указываем скачанный файл. Жмем "ОК" и радуемся!

 

 

Обработка ТОРГ-12 Бухгалтерия 2.0

См. также

SALE! 15%

Автоматический заказ поставщику в 1С: загрузка прайсов и анализ цен поставщиков для УТ 10.3, УТ 11, КА2, УНФ, УПП, ERP, Розница 2

Бюджетирование и планирование Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Анализ продаж Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Система управления запасами для 1С помогает работать с запасами правильно: автоматически рассчитывает потребность и делает заказ поставщику, загружает прайсы, перемещает товары по филиалам, анализирует продажи и позволяет управлять ассортиментом.

33529 28500 руб.

21.04.2017    89865    105    39    

188

ЕГАИС++. Опт, производство, импорт

Оптовая торговля Розничная торговля Обмен с ГосИС Платформа 1С v8.3 1С:Управление торговлей 10 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Рестораны, кафе и фаст-фуд Россия Бухгалтерский учет Управленческий учет Акцизы Платные (руб)

Полнофункциональное расширение (ранее известное как Модуль 1С-ЕГАИС) для взаимодействия типовых конфигураций 1С и ЕГАИС, предоставляющее максимум возможностей по работе с УТМ. Получение и отправка ТТН, отправка акта о постановке на баланс и акта о списании. Получение остатков. Загрузка и сопоставление номенклатуры и контрагентов. Оправка в ЕГАИС отчетов о производстве и импорте.

8970 руб.

15.12.2015    165795    673    361    

385

Infostart PrintWizard

Пакетная печать Печатные формы Инструментарий разработчика Платформа 1С v8.3 Запросы 1С:Зарплата и кадры бюджетного учреждения 1С:Конвертация данных 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 Платные (руб)

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

18000 руб.

06.10.2023    7013    20    6    

37

SALE! 10%

Перенос данных из УТ 10.3 в УТ 11 / КА 2 / ERP 2. Переносятся документы, справочники и остатки

Обмен между базами 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Предлагаем качественное и проверенное временем решение для перехода с УТ 10.3 на УТ 11 / КА 2 / ERP 2. Перенос данных находится в продаже с 2015 года, постоянно развивается, им воспользовались уже более 240 компаний. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам. При выходе новых релизов конфигураций 1C оперативно выпускаем обновление переноса данных.

50722 45650 руб.

24.04.2015    190292    268    238    

268

Обмен с системой ЦРПТ (Универсальная конфигурация ХамелеонЦРПТ + маркировка табака, обуви, одежды, лекарств, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин)

Оптовая торговля Розничная торговля Обмен с ГосИС Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Розничная и сетевая торговля (FMCG) Оптовая торговля, дистрибуция, логистика Россия Бухгалтерский учет Управленческий учет Платные (руб)

Данная публикация создана для помощи разработчикам, интеграторам и другим заинтересованным лицам по настройке системы маркировки обуви, одежды, лекарств, табака, фото, молока, духов(парфюма), питьевой воды, велосипедов и шин. Смело задавайте нам вопросы по работе с ЦРПТ, GS1, ЭДО, Национальным каталогом, мы накопили достаточно большую базу знаний по данным темам и готовы ответить на все Ваши вопросы.

104000 руб.

18.03.2019    110209    33    114    

177
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. user1035416 15.11.20 21:55 Сейчас в теме
Вопрос некурящего:
Что делать с накапливающимися копеечными ошибками округления при расчете НДС в расчетных документах и накладных НДС. При этом бухгалтерский и налоговый учет НДС постепенно разъезжаются? Например: несколько одинаковых сумм авансов в периоде дают накопление ошибки НДС за счет однообразного округления и т.д. Поскольку таких и массы других ошибок не избежать, то возникает вопрос - как периодически корректировать эти ошибки?
Оставьте свое сообщение