Имя: Пароль:
1C
1С v8
v8: Запрос, СрезПоследних, регистр сведений с периодичностью секунда.
0 dborovsky
 
06.06.13
18:11
необходимо получить курс на конкретную дату. написал следующий запросик:

//КУРС ИЗ РЕГИСТРА СВЕДЕНИЙ КУРСЫ ВАЛЮТ
       Запрос = Новый Запрос;
       Запрос.Текст =  "ВЫБРАТЬ
                       |    КурсыВалютСрезПоследних.КурсВалюты КАК Курс
                       |ИЗ
                       |    РегистрСведений.КурсыВалют.СрезПоследних(&Дата, Валюта = &Валюта)
                       |                                            КАК КурсыВалютСрезПоследних";
                       
                       
       Запрос.УстановитьПараметр("Дата", Дата);
       Запрос.УстановитьПараметр("Валюта", Валюта);

       результат =  Запрос.Выполнить().Выгрузить();

В Регистре  периодичность секунда. И есть три записи с одной датой 06.06.2013 ...(часы и минуты) и дата на 05.06.2013. В запросе в качестве параметра передаю дату 06.06.2013 12:18:22. Результат запроса возвращает почему то курс за 05 число. Что ни так?
1 Alterife
 
06.06.13
18:13
*facepalm*

...Как думаешь, почему "Дата" даже тут красным выделилось?
2 dborovsky
 
06.06.13
18:15
почему?
3 salvator
 
06.06.13
18:18
1. Не использовать в качестве имен переменных зарезервированные слова
2. Проверить в отладчике что в параметре Дата
3. Проверить в регистре наличие:
СрезПоследних(&Дата, Валюта = &Валюта)
4 dborovsky
 
06.06.13
18:19
нашел ошибку - дата стояла на 12 часов дня, а в регистре последняя на 17 00. на счет зарещирвированных слов - каюсь, будем исправляться.
5 acsent
 
06.06.13
18:21
(3) бред пишешь
6 salvator
 
06.06.13
18:23
(5) Бред - это присваивать переменным имена "Дата", "Строка", "Число" и т.д.