Имя: Пароль:
1C
1С v8
Сообщить посл курс
0 kap-v-kstu
 
26.08.12
22:49
Процедура КнопкаВыполнитьНажатие(Кнопка)
   
   
   
Запрос = Новый Запрос;
Запрос.Текст = "
|ВЫБРАТЬ
|    КурсыВалютСрезПоследних.Курс,
|    КурсыВалютСрезПоследних.Кратность
|ИЗ
|   РегистрСведений.КурсыВалют.СрезПоследних(Валюта = &Валюта) КАК КурсыВалютСрезПоследних";

//Запрос.УстановитьПараметры("Период", ТекущаяДата());
Запрос.УстановитьПараметры("Валюта", Справочники.Валюты.НайтиПоНаименованию("USD"));
Результат = Запрос.Выполнить();
Выборка = Результат.Выбрать();

a = Выборка.Курс;
Сообщить(a);

//Сообщить();
КонецПроцедуры




в чем ошибка??
1 PR
 
26.08.12
22:50
(0) посл курс? В голове.
А вообще СП хоть почитай что ли.
2 Кокос
 
26.08.12
22:52
а там Следующий() не надо? ну или выполнить.выгрузить
3 Лефмихалыч
 
26.08.12
22:53
(0) в том, что мануал не прочитан
4 Кокос
 
26.08.12
22:54
(3) да там точку если нажать должны вывалиться методы из СП :)
5 andrewks
 
26.08.12
23:09
а за
Запрос.УстановитьПараметры("Валюта", Справочники.Валюты.НайтиПоНаименованию("USD"));

в приличной конторе могут и накидать
6 andrewks
 
26.08.12
23:19
ладно, закидали шапками.
(0)
1. открой в конфигураторе справку, "Поиск по справке", набери СрезПоследних , читай, много думай.
2. там же набери РезультатЗапроса , тоже читай, тоже много думай (там есть цельный пример)
7 sanja26
 
27.08.12
00:01
(5) а что не так?
Запрос.УстановитьПараметры("Валюта", Справочники.Валюты.НайтиПоНаименованию("USD"));
8 Aleksey
 
27.08.12
00:44
(7) Ничего, просто у местных "умников" начинается злостный батхер при виде такого кода. В самом коде ничего страшного и 1С часто его применяет, простоу некоторых аллергия чтоли на такой код и при виде его они начинают сыпать дежурные фразы наподобии (5)
9 Aleksey
 
27.08.12
00:51
(5) Те у кого свербить в попе от желания накидать пусть откроют СП от 1С и поищут там ПолучитьПоследнее

РегистрСведенийМенеджер.<Имя регистра сведений>.ПолучитьПоследнее (InformationRegisterManager.<Имя регистра сведений>.GetLast)
Синтаксис:

...


Пример:
Доллары = Справочники.Валюты.НайтиПоНаименованию("USD");
Отбор = Новый Структура;
Отбор.Вставить("Валюта", Доллары);
Курсы   = РегистрыСведений.КурсыВалют;
ТекКурс = Курсы.ПолучитьПоследнее(ТекущаяДата(), Отбор);
Сообщить("Текущий курс доллара: " + ТекКурс.Курс + " руб.");


Толи фирма 1С уже не приличное общество, толи кому то меньше эрогировать надо
10 Aleksey
 
27.08.12
00:53
Кстати автору тоже стоит почитать про ПолучитьПоследнее и не городить огород с запросом

Описание:
Получает значения ресурсов наиболее поздней записи регистра, соответствующей указанным периоду и значениям измерений регистра.
11 105946
 
27.08.12
02:10
гм. а почему никто просто не сказал "Выборка.Следующий(); а=выборка.Курс" ?
12 Aleksey
 
27.08.12
02:50
(11) А в (2) разве не об этом?
13 105946
 
27.08.12
03:26
упс. ослеп(
14 andrewks
 
27.08.12
08:13
(9) а я своего мнения по поводу 1С, и СП, в особенности, и не скрывал. там есть даже вообще нерабочие примеры и ошибки, предлагаешь всё равно писать так, как они предлагают?

не надо забывать, что СП - это всего лишь шпаргалка по свойствам и методам, а не учебное пособие
15 Кокос
 
27.08.12
11:11
(10) запрос и менеджер это две разные альтернативы. по мне имхо запросы красивее.
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой