искажение числа при СОМ-соединении #681311


#0 by atlantika
Подскажите встречался ли кто нибудь с такой ситуацией? И если можно ее как то исправить, то как лучше это сделать? При получении некоторого значения типа Число, два знака после запятой, через СОМ-соединение в результате получается число с 11 знаками после запятой. Не для всех получаемых значений. При повторном запросе искажения сохраняются в точности. В базе источнике тот же запрос дает корректные значения, все реквизиты проверены - два знака после запятой. Например имеем число 9 200,03  , а получаем 9 200,03000000001
#1 by atlantika
Причина:"..Это особенность числовых типов данных в модели COM. В ней нет точного соответствия числовым типам 1С, поэтому они так и передаются. Если вы точно знаете, какая должна быть разрядность результата, то спокойно округляйте его на вызывающей стороне." найденный способ решения - описывать тип поля в таблице значений куда будут выгружаться результаты запроса в цикле: ТаблицаИзБухгалтерии.Колонки.Добавить("СуммаДокумента",    Новый ОписаниеТипов("Число",Новый КвалификаторыЧисла(15, 2)));
#2 by wowik
нормально это. использую Окр.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С