|
БП 2.0: копейки при пересчете в рубли | ☑ | ||
---|---|---|---|---|
0
листопад
05.09.11
✎
15:13
|
БП, редакция 2.0
Подскажите, почему при расчете в валюте или УЕ, при пересчете в рубли 1С неправильно кидает копейки? Есть документ "ПоступлениеТоваров", содержит две ОДИНАКОВЫЕ СТРОЧКИ по суммам, т.е.: 1) НоменклатураА количество=16 цена=92,40УЕ сумма=1478,4УЕ 1) НоменклатураБ количество=16 цена=92,40УЕ сумма=1478,4УЕ Курс 1УЕ=39,9484руб. Считаем в рублях 1478,4 * 39,9484 = 59059,714руб. 1С делает две проводки почему-то на разные суммы, хотя сумма в валюте одна и та же: 1) Дт10 - Кт60 59059,71 2) Дт10 - Кт60 59059,72 (вот здесь добавляется копейка) А должно быть: 1) Дт10 - Кт60 59059,71 2) Дт10 - Кт60 59059,71 |
|||
1
листопад
05.09.11
✎
15:17
|
+(0) Посмотрела в отладчике, после расчета суммы, зачем-то выполняется Функция РаспределитьПропорционально(Знач ИсхСумма, МассивКоэф, Знач Точность = 2) - это в ОбщемМодуле ОбщегоНазначения.
Не пойму в ней кусок кода: ... // Погрешности округления отнесем на коэффициент с максимальным весом Если Не РаспрСумма = ИсхСумма Тогда МассивСумм[ИндексМакс] = МассивСумм[ИндексМакс] + ИсхСумма - РаспрСумма; КонецЕсли; Возврат МассивСумм; .... |
|||
2
Stim213
05.09.11
✎
15:17
|
там хитрый пересчет. Что-то типа:
Считается общая сумма в руб, потом она разносится пропорционально суммам в валюте. Из-за этого происходит округление |
|||
3
листопад
05.09.11
✎
15:20
|
(2) Ну это же неправильно! Две номенклатуры с одинаковыми суммами в УЕ, при пересчете в рубли получаются разные суммы!!! Бухи просят переделать расчет. Вот я и думаю, зачем разработчики вставили это распределение, после которого копейку и начинают плясать...
|
|||
4
листопад
05.09.11
✎
15:51
|
Ап!
|
|||
5
hhhh
05.09.11
✎
15:58
|
(3) всё там правильно. Переводится в рубли общая сумма, а не по каждой строчке. Поэтому и добавляется копейка.
|
|||
6
листопад
05.09.11
✎
16:08
|
(5) А на основании чего это так реализовано?
|
|||
7
листопад
05.09.11
✎
16:46
|
Up!
|
|||
8
hhhh
05.09.11
✎
17:06
|
(6) потому что оплата идет в целом. Там нет разбивки по номенклатуре. Берется вся сумма по платежному поручению и переводится в рубли. Поэтому и в поступлении берется общая сумма и разбивается по строчкам.
|
|||
9
RayCon
05.09.11
✎
17:08
|
(6) На основании того, что при пересчёте курсов всегда возникает проблема округления общей суммы и округления составляющих её сумм. Получается что-то вроде разбивки по партиям:
в счете может быть написано: 3.33 х 3 = 10.00 а в проводках будет: 3.33 х 2 = 6.66 3.33 х 3 = 3.34 |
|||
10
Snorkler
05.09.11
✎
17:12
|
(6) На основании того, что общая сумма документа должна быть
Окр(1478,4*2*39,9484 , 2) = 118119,43 Что отличается от *(59059,71 + 59059,71) ровно на копейку. То есть, либо в каждой строчке хорошо, но целом по документу плохо, либо в целом хорошо, но в одной из строчек плохо. Так что определитесь, что важнее, и вперед… |
|||
11
shuhard
05.09.11
✎
17:13
|
(10)[но целом по документу плохо]
низяяя дебеторка уедет |
|||
12
Stim213
05.09.11
✎
17:17
|
вобщем используйте четные копейки и будем вам счастье)
|
|||
13
листопад
05.09.11
✎
17:45
|
8, 9, 10, 11, 12 Всем СПАСИБО!!! Это именно то объяснение, которое и было нужно мне!!!
|
|||
14
Stim213
05.09.11
✎
17:46
|
уря!
|
|||
15
RayCon
07.09.11
✎
12:47
|
(9)+ Пардон, опечатался:
3.33 х 3 = 3.34 -> 3.34 х 1 = 3.34 |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |