Столкнулся с непонятной ситуацией.
Через "ВнешнийИсточникДанных" подключаюсь к базе Oracle 11.
Обычным 1С запросом из View получаю значение "91 211,203125"
Если посмотреть это значение в самой View из Developer'а, то оно хранится в базе как "91 211,2"
Позволяет, я посмотрел откуда берет данные вьюха, но и там число хранится уже обрезанным.
Что интересно хвост .003125 присутствует в очень многих "не округленных" значениях.
Вот что пишут умные люди:
Причина описанного явления в том, что в OLE Automation нет типа данных с фиксированной точкой. Дробные числа 1С:Предприятия при передаче через COM преобразуются к типу с плавающей точкой (double), в котором не все десятичные дроби, даже с малой разрядностью, могут быть представлены точно. Для решения проблемы можно:
1) При получении дробных значений 1С:Предприятием выполнять округление до нужной разрядности дробной части (Окр).
2) Передавать через COM строковые представления чисел, для чего использовать функцию преобразования числа в XML-строку.
3) Передавать все данные через COM в виде единой XML-строки.
Это особенность числовых типов данных в модели COM. В ней нет точного соответствия числовым типам 1С, поэтому они так и передаются.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.