получить актуальный курс по дате в СКД.

1. nadyusha22 31.03.23 09:50 Сейчас в теме
Здравствуйте, скажите пожалуйста, как связать курсы валют к дате.
делаю запрос:
Код
ВЫБРАТЬ
   ВалютаКурс.Период КАК Период,
   ВалютаКурс.Валюта КАК Валюта1,
   ВалютаКурс.Курс КАК Курс
ИЗ
   РегистрСведений.ВалютаКурс КАК ВалютаКурс
Показать полностью

c этим запросом получаю только первый курс по периоду.
То есть например скажем в феврале курс менялся 3 раза:
Код
01.02.2023 курс  =15 руб
15.02.2023 курс  =25 руб
28.02.2023 курс  =35 руб
Показать полностью

если в отчете выбрать период 01-28.02.2023 г., показывает только 15 руб до конце периода.
Мне надо чтобы: например от 01 до 14 курс показывал 15, от 15 до 27 показывал курс 25, от 28 до 03 марта показывал курс 35 и так далее.

подскажите пожалуйста, как этого добится.
Спасибо всем.
По теме из базы знаний
Найденные решения
3. YozZzhik 31.03.23 15:06 Сейчас в теме
ВЫБРАТЬ
	КурсыВалют.Период КАК Период,
	КурсыВалют.Валюта КАК Валюта,
	КурсыВалют.Курс КАК Курс
ПОМЕСТИТЬ ВТ_Курсы
ИЗ
	РегистрСведений.КурсыВалют КАК КурсыВалют
;
////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Курсы.Период КАК Период,
	МАКСИМУМ(ВТ_Курсы1.Период) КАК Период1,
	ВТ_Курсы.Валюта КАК Валюта,
	ВТ_Курсы1.Валюта КАК Валюта1
ПОМЕСТИТЬ ВТ_Даты
ИЗ
	ВТ_Курсы КАК ВТ_Курсы
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Курсы КАК ВТ_Курсы1
		ПО ВТ_Курсы.Период > ВТ_Курсы1.Период
			И ВТ_Курсы.Валюта = ВТ_Курсы1.Валюта
СГРУППИРОВАТЬ ПО
	ВТ_Курсы.Период,
	ВТ_Курсы.Валюта,
	ВТ_Курсы1.Валюта
;
////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Даты.Период1 КАК СДаты,
	ВТ_Даты.Период КАК ПоДату,
	ВТ_Даты.Валюта КАК Валюта,
	ВТ_Курсы.Курс КАК Курс	
ИЗ
	ВТ_Даты КАК ВТ_Даты
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Курсы КАК ВТ_Курсы
		ПО (ВТ_Даты.Период = ВТ_Курсы.Период)
			И (ВТ_Даты.Валюта = ВТ_Курсы.Валюта)
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Курсы КАК ВТ_Курсы1
		ПО (ВТ_Даты.Период1 = ВТ_Курсы1.Период)
			И (ВТ_Даты.Валюта1 = ВТ_Курсы1.Валюта)
УПОРЯДОЧИТЬ ПО
	Валюта
Показать
nadyusha22; +1 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. DesertPunk 31.03.23 10:17 Сейчас в теме
(1)Гугли срез последних на каждую дату
karamazoff; +1 Ответить
4. Sashares 34 31.03.23 15:31 Сейчас в теме
(1)В настройке СДК дополнение периода для группировки Период с видом День, будет то что требуется.
И не надо никакого среза на каждую дату.
Прикрепленные файлы:
nadyusha22; +1 Ответить
3. YozZzhik 31.03.23 15:06 Сейчас в теме
ВЫБРАТЬ
	КурсыВалют.Период КАК Период,
	КурсыВалют.Валюта КАК Валюта,
	КурсыВалют.Курс КАК Курс
ПОМЕСТИТЬ ВТ_Курсы
ИЗ
	РегистрСведений.КурсыВалют КАК КурсыВалют
;
////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Курсы.Период КАК Период,
	МАКСИМУМ(ВТ_Курсы1.Период) КАК Период1,
	ВТ_Курсы.Валюта КАК Валюта,
	ВТ_Курсы1.Валюта КАК Валюта1
ПОМЕСТИТЬ ВТ_Даты
ИЗ
	ВТ_Курсы КАК ВТ_Курсы
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Курсы КАК ВТ_Курсы1
		ПО ВТ_Курсы.Период > ВТ_Курсы1.Период
			И ВТ_Курсы.Валюта = ВТ_Курсы1.Валюта
СГРУППИРОВАТЬ ПО
	ВТ_Курсы.Период,
	ВТ_Курсы.Валюта,
	ВТ_Курсы1.Валюта
;
////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ_Даты.Период1 КАК СДаты,
	ВТ_Даты.Период КАК ПоДату,
	ВТ_Даты.Валюта КАК Валюта,
	ВТ_Курсы.Курс КАК Курс	
ИЗ
	ВТ_Даты КАК ВТ_Даты
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Курсы КАК ВТ_Курсы
		ПО (ВТ_Даты.Период = ВТ_Курсы.Период)
			И (ВТ_Даты.Валюта = ВТ_Курсы.Валюта)
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Курсы КАК ВТ_Курсы1
		ПО (ВТ_Даты.Период1 = ВТ_Курсы1.Период)
			И (ВТ_Даты.Валюта1 = ВТ_Курсы1.Валюта)
УПОРЯДОЧИТЬ ПО
	Валюта
Показать
nadyusha22; +1 Ответить
5. user1880116 31.03.23 18:16 Сейчас в теме
(3)
ВТ_Курсы
Это зачем?
nadyusha22; +1 Ответить
6. YozZzhik 01.04.23 10:28 Сейчас в теме
(5) Очевидно же, для улучшения производительности и читаемости запроса. В следующей временной и последней основной таблицах используются данные из этой временной таблицы. Или вы хотите каждый раз использовать запрос к регистру сведений?
7. user1880116 01.04.23 18:53 Сейчас в теме
(6)
для улучшения производительности
Серьезно? Скопировать весь регистр в таблицу без индексов это теперь означает "улучшить производительность"?
8. YozZzhik 01.04.23 18:58 Сейчас в теме
(7) Добавь индексы самостоятельно. Надеюсь, ты справишься... точнее я верю в тебя
9. user1880116 01.04.23 18:59 Сейчас в теме
(8)
я верю в тебя
Требую жертвоприношения.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот