Decimal и три знака после запятой
От: INsideR Латвия  
Дата: 01.07.03 10:34
Оценка:
У меня следующая проблема, из SQL сервера получаю результат запроса, в котором есть поле типа Decimal, его значение 0.123, получаю я так:


vtData = Fields->GetItem((_bstr_t)"Data")->GetValue();
if(vtData.vt == VT_DECIMAL)
{
  VarR8FromDec(&vtData.decVal, &data);
  VarR8Round(data, 3, &normData);
}



После этих манипуляций normData содежит 0.12, даже если не округлять, то всё равно, в чём может быть проблема?
Мудр тот, кто знает не многое, а нужное
Re: Decimal и три знака после запятой
От: Vi2 Удмуртия http://www.adem.ru
Дата: 01.07.03 10:39
Оценка:
Здравствуйте, INsideR, Вы писали:

INR>У меня следующая проблема, из SQL сервера получаю результат запроса, в котором есть поле типа Decimal, его значение 0.123, получаю я так:

INR>vtData = Fields->GetItem((_bstr_t)"Data")->GetValue();
INR>if(vtData.vt == VT_DECIMAL)
INR>{
INR>  VarR8FromDec(&vtData.decVal, &data);
INR>  VarR8Round(data, 3, &normData);
INR>}

INR>После этих манипуляций normData содежит 0.12, даже если не округлять, то всё равно, в чём может быть проблема?

Может в Региональных установках (aka Языки и Стандарты)? Там есть такой параметр — Число дробных знаков. Добавь больше и посмотри на результат.
Vita
Выше головы не прыгнешь, ниже земли не упадешь, дальше границы не убежишь! © КВН НГУ
Re[2]: Decimal и три знака после запятой
От: INsideR Латвия  
Дата: 01.07.03 10:44
Оценка:
Но в query analysere всё нормально
Мудр тот, кто знает не многое, а нужное
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.