Имя: Пароль:
1C
1C 7.7
v7: Округление в запросе
0 Маркусс
 
03.06.14
08:16
Добрый день

Чёто туплю. Запрос возвращает округлённую до целого сумму. Как получить сумму с копейками?
Вызов в запросе:
|Функция ТекЦена = Сумма(ПолучитьТекЦену(Запрос.Владелец,Запрос.ТипЦен,Запрос.СпрЦена));

Сама функция
Функция ПолучитьТекЦену(Владелец,ТипЦен,ТекСпрЦена)
    ТекСпрЦена.ИспользоватьДату(ТекущаяДата());
    Возврат    ГлПолучитьЦену(Владелец, ТипЦен, РабочаяДата(), ТекСпрЦена.Единица , ГлРубли, 1, 1);    
КонецФункции

Спасибо.
1 Wobland
 
03.06.14
08:17
> 1, 1);
это о чём?
2 Banned
 
03.06.14
08:22
Эта фича....
Точнее - документированная бага
3 Маркусс
 
03.06.14
08:29
(1) курс кратность
4 Маркусс
 
03.06.14
08:32
(1) убрал - ничего не изменилось
5 Salimbek
 
03.06.14
08:37
А у меня в конфе нет "ГлПолучитьЦену", что мне делать?
6 Маркусс
 
03.06.14
08:41
(5) вне запроса ГлПолучитьЦену возвращает цену с копейками. чё за фигня?
7 ЧеловекДуши
 
03.06.14
08:44
(6) Сомневаюсь, отладчиком посмотри :)
8 Salimbek
 
03.06.14
08:45
(6) Все может быть... база SQL-ная?
9 Маркусс
 
03.06.14
08:45
(7)вот в нём родимом и смотрю
10 Маркусс
 
03.06.14
08:46
(8) да. база скуль
11 Duke1C
 
03.06.14
08:47
(6) Делай так:
  Возврат    ГлПолучитьЦену(Владелец, ТипЦен, РабочаяДата(), ТекСпрЦена.Единица , ГлРубли, 1, 1)*100;

При получении результатов разделишь на 100. Где-то Ёпрст разжевывал уже эту ситуёвину, искать лень
12 Маркусс
 
03.06.14
08:54
(11)
Спасибо. работает
13 dk
 
03.06.14
09:08
докопаюсь
а почему сумма по цене?
что в реале это дает?
14 Ёпрст
 
03.06.14
09:38
(0) делай так:


|РеквизитСНужнойТочностью = .....;
|Функция ТекЦена = Сумма(РеквизитСНужнойТочностью -РеквизитСНужнойТочностью +ПолучитьТекЦену(Запрос.Владелец,Запрос.ТипЦен,Запрос.СпрЦена));
15 Ёпрст
 
03.06.14
09:39
где РеквизитСНужнойТочностью , ну например, переменная, описывающая колонку документа. Точность функции ТекЦена будет такой же, как и точность этой переменной.
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.