[ОТВЕТИТЬ]
13.11.2015 17:26
SMak
 
MIN_PRICE_A везде = 0
в карточках разные цены
в МХ1 36,95 сравнивается 3511 >= 3510 == скидка
в МХ2 36,45 сравнивается 3463 >= 3463 == акция - почему?
16.11.2015 07:27
Mtirt
 
Резальтат округления попадает в твои пределы?
16.11.2015 13:32
vdm
 
В смысле где-то не 3463 у тебя вычисляется. Выведи куда-нибудь оба числа.
16.11.2015 14:04
SMak
 
дык вывел же
блин, с форматом выводил :(
сделал ((iNP+1) >= ... пока

а как надо правильно округлять, приводить типы и сравнивать значения?
16.11.2015 14:08
Mtirt
 
Сначала явно округлять (т.е. использовать round()), затем - сравнивать.
17.11.2015 11:46
SMak
 
Код:
      MessageBox.Show(ToString(Report.GetColumnValue("PriceCards.MIN_PRICE")));
      MessageBox.Show(ToString(ToDouble(Report.GetColumnValue("PriceCards.MIN_PRICE"))*100));
      MessageBox.Show(ToString(Ceiling(ToDouble(Report.GetColumnValue("PriceCards.MIN_PRICE"))*100)));
      MessageBox.Show(ToString(Round(ToDouble(Report.GetColumnValue("PriceCards.MIN_PRICE"))*100)));
выдаёт:
34,63
3463
3464
3463

от чего так?
17.11.2015 12:07
Mtirt
 
А зачем округлять в С# ???
Нельзя это делать в запросе?
17.11.2015 14:03
SMak
 
хм... а в запросе оно и так округляется
17.11.2015 14:06
Mtirt
 
Явно? Так и проценты тоже можно считать в запросе...


Опции темы


Часовой пояс GMT +3, время: 23:42.

 

Форум сделан на основе vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.