Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
28 сен 2024, 04:32

Срез последних на каждую дату в СКД и в запросе

Автор ktu78, 24 сен 2015, 13:31

0 Пользователей и 1 гость просматривают эту тему.

ktu78

добрый день, коллеги
хочу создать отчет, в котором отображаются приходные накладные, суммы в инвалюте. Нужно в отчете добавить колонку с курсом валют и расчитать сумму в нац.валюте
Особая сложность - курс валюты.
Для каждого документа есть дата создания. Так вот для каждого документа нужно получить актуальный на дату создания документа курс валют с периодического регистра сведений - КурсыВалют
Вот создал запрос, состоящий из 2 временных таблиц
В результате в колонке "Курсы валют" ничего нет
Помогите, пожалуйста, может что-то не то делаю
Заранее спасибо. Удачи Вам в программированию.
PS Делал путем создания двух наборов записей и их соединения - тот же эффект

ВЫБРАТЬ
   ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор КАК ПриходнаяНакладная,
   ПартииТоваровНаСкладахОстаткиИОбороты.Период КАК Дата,
   ПартииТоваровНаСкладахОстаткиИОбороты.СуммаПриход КАК СуммаUSD
ПОМЕСТИТЬ втБезКурса
ИЗ
   РегистрНакопления.ПартииТоваровНаСкладах.ОстаткиИОбороты(, , Регистратор, , ) КАК ПартииТоваровНаСкладахОстаткиИОбороты

СГРУППИРОВАТЬ ПО
   ПартииТоваровНаСкладахОстаткиИОбороты.Период,
   ПартииТоваровНаСкладахОстаткиИОбороты.Регистратор,
   ПартииТоваровНаСкладахОстаткиИОбороты.СуммаПриход

ИНДЕКСИРОВАТЬ ПО
   Дата,
   ПриходнаяНакладная,
   СуммаUSD
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   втБезКурса.ПриходнаяНакладная КАК ПриходнаяНакладная,
   втБезКурса.Дата КАК Дата,
   МАКСИМУМ(КурсыВалютСрезПоследних.Период) КАК Период,
   втБезКурса.СуммаUSD КАК СуммаUSD
ПОМЕСТИТЬ втМаксПериод
ИЗ
   втБезКурса КАК втБезКурса
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних
      ПО втБезКурса.Дата = КурсыВалютСрезПоследних.Период

СГРУППИРОВАТЬ ПО
   втБезКурса.Дата,
   втБезКурса.ПриходнаяНакладная,
   втБезКурса.СуммаUSD,
   КурсыВалютСрезПоследних.Период

ИНДЕКСИРОВАТЬ ПО
   ПриходнаяНакладная,
   Период,
   Дата,
   СуммаUSD
;

////////////////////////////////////////////////////////////////////////////////
ВЫБРАТЬ
   втМаксПериод.ПриходнаяНакладная КАК ПриходнаяНакладная,
   втМаксПериод.Дата,
   втМаксПериод.СуммаUSD,
   КурсыВалютСрезПоследних.Курс
ИЗ
   втМаксПериод КАК втМаксПериод
      ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних
      ПО втМаксПериод.Период = КурсыВалютСрезПоследних.Период

УПОРЯДОЧИТЬ ПО
   ПриходнаяНакладная


Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск