Ошибка округления

1. bil3xz 27.05.26 17:08 Сейчас в теме
Добрый день.
Документ Этап производства, ТЧ Выходные изделия.
Не могу понять, что не так со значением в поле Количество (в единицах хранения) в первой строке.
Само значение математический правильно: 24,555 * 10,69002 = 262,4934411 (Тип реквизита Число(15, 3)), округляется верно. Но если получать это значение через запрос, то в результат выводится 262,494.
Из-за разницы в 0,001 код выполняется некорректно. В чем может быть причина?
Прикрепленные файлы:
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. spacecraft 27.05.26 19:43 Сейчас в теме
(1)
10,69002

А это значение хранится или вычисляется?
Может оно так же округленное. А в запросе вычисляется полностью без округления и только результат округляется.
5. user_2194807 27.05.26 19:45 Сейчас в теме
(4) я вообще других вариантов не вижу. Явно на экране число не в том виде, в котором оно хранится.
9. bil3xz 28.05.26 10:45 Сейчас в теме
(4) Значение хранится в Справочнике УпаковкиЕдиницыИзмерения в реквизите Числитель
Но даже так, выбранное значение Количество из ТЧ Документа, после соединения с самим документом, начинает отличаться от хранящегося в базе значения
10. spacecraft 28.05.26 10:52 Сейчас в теме
(9) добавте в запросе вывод:
Таблица.Упаковка.Числитель
Что там?
11. bil3xz 28.05.26 11:27 Сейчас в теме
13. SlavaKron 28.05.26 12:09 Сейчас в теме
(11) В типой ERP точность числителя = 3. Для решения проблем нехватки точности как раз и ввели перевод через числитель и знаменатель.
Прикрепленные файлы:
6. SlavaKron 27.05.26 20:57 Сейчас в теме
(1)
Но если получать это значение через запрос, то в результат выводится 262,494
Как вы получаете его через запрос?
Смоделировал ситуацию у себя: в запросе количество корректное.
Прикрепленные файлы:
8. bil3xz 28.05.26 10:33 Сейчас в теме
(6) Запрос находится в Модуле менеджера документа ПроизводственнаяОперация2_2, функция ДанныеВыполненныхОпераций(Этап), первая Временная таблица.
Попробовал выбирать данные напрямую из Таблицы документа - выводит правильное значение, но если через типовой запрос, то значение почему-то больше. И проблема только с этой строкой таблицы
Прикрепленные файлы:
12. spacecraft 28.05.26 11:32 Сейчас в теме
(8) Так количество не расчитывается в этом запросе и берется уже сохраненное. Нужно смотреть алгоритм, котрым сохраняется это значение.
14. bil3xz 28.05.26 12:32 Сейчас в теме
(12) В базе записано значение 262,493 - это видно, если сделать запрос только к Табличной части.
Не понятно, почему это значение меняется, если делать запрос как в (8) - через соединение с документом
16. bil3xz 28.05.26 12:44 Сейчас в теме
(12)
Прикрепленные файлы:
19. bil3xz 28.05.26 12:51 Сейчас в теме
(16) Не замет, это же Табличные части разных документов. Да, похоже они заполняются по разным алгоритмам, что и приводит к отличию значений
2. yispepotri 27.05.26 17:14 Сейчас в теме
Количество в этапе, точность 3 (знака после запятой), поэтому и округляется значение
3. bil3xz 27.05.26 17:49 Сейчас в теме
(2) То что на форме округляется до 262,493 понятно - соответственно в реквизите такое же значение. Не понятно почему записывается значение на 0,001 больше. Если смотреть в событии ПриЧтенииНаСервере, то там так же 262,493, в выборке запроса 262,494
7. binx 176 27.05.26 22:47 Сейчас в теме
В запросе делайте желаемое округление слагаемых при расчете.
15. Said-We 28.05.26 12:34 Сейчас в теме
(1) Всё время идёт речь про какой-то запрос. А текст запроса где?
17. bil3xz 28.05.26 12:46 Сейчас в теме
(15) Текст запроса в прикрепленных файлах
18. Said-We 28.05.26 12:50 Сейчас в теме
(17) У вас два разных документа, которые что-то (количество) внутри хранят. И хранят разные значения. При чём тут запрос? У вас данные разные в разных местах.
20. bil3xz 28.05.26 12:51 Сейчас в теме
(18) Да, тоже сейчас заметил. Спасибо
21. Said-We 28.05.26 12:53 Сейчас в теме
Не за что.
Глаза "замыливаются" - бывает со всеми. :-)
Для отправки сообщения требуется регистрация/авторизация

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот