|
округление НДС Бухгалтерия 2.0 | ☑ | ||
---|---|---|---|---|
0
slasher
27.03.15
✎
16:08
|
Приветствую всех!
Кто-нибудь может объяснить почему сумма проводки по округлению НДС отличается по законодательству и по коду 1С Бухгалтерии? 1.по законодательству не больше 50 копеек (то сумму менее 50 копеек следует отбросить, а 50 копеек и более - округлить до целого рубля (п. 9 ст. 1, п. 3 ст. 6 Закона № 248-ФЗ). 2. По 1С Бухгалтерии Если ОстатокОкругления = 0 ИЛИ ОстатокОкругления > 0.99 ИЛИ ОстатокОкругления < -0.99 Тогда // Если остаток округления больше рубля, проводку по округлению не формируем Возврат; Иначе Проводка = мПроводки.Добавить(); то есть может быть по модулю максимум 99 копеек. |
|||
1
Кай066
27.03.15
✎
16:11
|
Остаток округления, это не то что в пункте 1
|
|||
2
Кай066
27.03.15
✎
16:15
|
(0) то есть может быть по модулю максимум 99 копеек.
верно, при этом если меньше 50(0-49), то округлит в меньшую, если больше(50-99), то в большую, если больше 99(99-...) к чёрту пошлёт |
|||
3
Кай066
27.03.15
✎
16:16
|
мне так кажца
|
|||
4
Naumov
27.03.15
✎
16:32
|
(0) Читайте код правильно. Для несообразительных даже комментарий написан
|
|||
5
slasher
27.03.15
✎
18:30
|
(не понял, а что это?)
|
|||
6
slasher
27.03.15
✎
18:32
|
(1) пардон, не понял, что это?
|
|||
7
slasher
27.03.15
✎
18:35
|
(2) по законодательству +-50 копеек
по 1С +-99 копеек почему так? |
|||
8
slasher
27.03.15
✎
18:41
|
(4) я прекрасно понимаю код,
я не понимаю почему 1С пишет, что диапазон корректировок 1,98 копеек (+-0,99), тогда как закон говорит, что чтобы округлить до целого рубля, нужно либо убать максимум 49 копеек, либо добавить максимум 50 копеек. Я не слишком путанно изложил? |
|||
9
hhhh
27.03.15
✎
18:43
|
(8) это вообще другое. Если > 0.99 округление вообще не делаем. Ферштеен?
|
|||
10
slasher
27.03.15
✎
18:51
|
(9) это я тоже ферштеен,
зачем сумму округления делать больше 50 копеек и меньше 99 копеек? |
|||
11
hhhh
27.03.15
✎
18:53
|
там нет про 50 копеек. И вообще это не округление. Округление дальше там.
|
|||
12
RomanYS
27.03.15
✎
19:19
|
(0)
Сделай как считаешь правильно, ИМХО ты - прав. Если очень интересно "зачем" - спроси у 1с. Мое мнение, изначально (в ранних релизах) такой проверки не было и разница между оборотами и суммой по декларации бабахалась в корректировку округления. Таким образом разработчики избавилсь от этого бага (когда миллионы уходили в корректировку), а 0.99 или 0.50 тупо не заморачивались. |
|||
13
hhhh
27.03.15
✎
19:23
|
(12) да в принцепе ясно. Был баг в прощлом году. Вообще выдавало сумму 17562 рубля. И содержание проводки - округление по НДС. Вот они и вставили проверку, чтобы меньше 1 рубля.
|
|||
14
Naumov
27.03.15
✎
20:38
|
(13) Там корректировка по другой причине делалась. Но в 1-х релизах была логическая ошибка и сумма не всегда получалась корректной.
Проводка с корректировкой возникает из-за разницы между округлением суммы (в декларации) и суммой округлений (в проводках документов построчно). |
|||
15
RomanYS
27.03.15
✎
21:34
|
(14) "логическая ошибка" как была, так и осталась:
Все проводки по НДС делаются с копейками. Потом в декларации формируются два десятка показателей округленных до рублей (по каждому округление может достигать 50 коп), они суммируются (отклонение может здесь достигнуть ~10 руб, если очень не повезет). Это ещё мы не учли "авторские" методики ведения учета: ручные проводки, ручные изменения декларации и т.п. Правда в такой ситуации корректировка теряет смысл и здесь как раз "<0.99" работает как защита от дурака. Наверное, для этого ее и сделали |
|||
16
slasher
28.03.15
✎
11:59
|
(11) про 50 копеек в законодательстве говорится,
а округления там дальше нету, вот конец процедуры: Если ОстатокОкругления = 0 ИЛИ ОстатокОкругления > 0.99 ИЛИ ОстатокОкругления < -0.99 Тогда // Если остаток округления больше рубля, проводку по округлению не формируем Возврат; Иначе Проводка = мПроводки.Добавить(); Проводка.Период = Дата; Проводка.Организация = СтруктураШапкиДокумента.Организация; Проводка.СчетДт = ПланыСчетов.Хозрасчетный.ПрочиеПрибылиИУбытки; Проводка.СчетКт = Выборка.Счет; Проводка.СубконтоКт.ВидыПлатежейВГосБюджет = Перечисления.ВидыПлатежейВГосБюджет.Налог; Если Не НДСКВозмещению Тогда Проводка.Сумма = - ОстатокОкругления; Иначе Проводка.Сумма = ОстатокОкругления; КонецЕсли; Проводка.Содержание = "Отклонение при округлении до рублей"; КонецЕсли; КонецЕсли; мПроводки.Записать(Ложь); КонецПроцедуры то есть теоретически может быть округление больше 50 копеек и меньше 99 копеек. Например, НДС 5,33 рубля округляется до 6 рублей, на 67 копеек, хотя должен округлятся до 5 рублей, почему так? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |