Как пересчетать сумму взависимости от курса

1. Airat116 12.10.21 14:18 Сейчас в теме
Здравствуйте, подскажите пожалуйста как правильно пересчитать сумму зависимости от курса
Например у меня в документе 1400 ЕВРО
Как пересчитать в рубли?

Сделал такой запрос
А далее не совсем понимаю как пересчёт сделать

ВЫБРАТЬ
Тест.Ссылка,
Тест.ВалютаДокумента,
Тест.Сумма,
КурсыВалютСрезПоследних.Валюта
ИЗ
Документ.Тест КАК Тест
ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КурсыВалют.СрезПоследних(&ТекущийПериод, ) КАК КурсыВалютСрезПоследних
ПО Тест.ВалютаДокумента = КурсыВалютСрезПоследних.Валюта
Найденные решения
2. parker_j 12.10.21 14:25 Сейчас в теме
(1) Вам нужна не валюта, а курс в запросе. Обрабатывайте далее результат запроса и умножайте
4. rintik 19 12.10.21 14:29 Сейчас в теме
В типовых конфигурациях лучше поискать уже существующие процедуры в общих модулях,
и использовать не ТекущийПериод, а дату документа.
		СтруктураКурсаВалютаДокумента = МодульВалютногоУчета.ПолучитьКурсВалюты(ВалютаДокумента,ДатаРасхода);
		
		КурсДокумента        = СтруктураКурсаВалютаДокумента.Курс;
		КратностьДокумента   = СтруктураКурсаВалютаДокумента.Кратность;


СуммаПлатежа=МодульВалютногоУчета.ПересчитатьИзВалютыВВалюту(СуммаВзаиморасчетов, ВалютаВзаиморасчетов,
			ВалютаДокумента,
			КурсВзаиморасчетов,КурсДокумента,
			КратностьВзаиморасчетов,КратностьДокумента)
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. parker_j 12.10.21 14:25 Сейчас в теме
(1) Вам нужна не валюта, а курс в запросе. Обрабатывайте далее результат запроса и умножайте
5. Airat116 12.10.21 14:31 Сейчас в теме
(2) получается нужно: 1 пакет получить "КурсыВалют"
2 пакет соединить с документом и умножить сумму с курсом?
3. FatPanzer 12.10.21 14:25 Сейчас в теме
А ты как в обменнике считаешь? Так и тут - надо Ссылку умножить на ВалютаДокумента
4. rintik 19 12.10.21 14:29 Сейчас в теме
В типовых конфигурациях лучше поискать уже существующие процедуры в общих модулях,
и использовать не ТекущийПериод, а дату документа.
		СтруктураКурсаВалютаДокумента = МодульВалютногоУчета.ПолучитьКурсВалюты(ВалютаДокумента,ДатаРасхода);
		
		КурсДокумента        = СтруктураКурсаВалютаДокумента.Курс;
		КратностьДокумента   = СтруктураКурсаВалютаДокумента.Кратность;


СуммаПлатежа=МодульВалютногоУчета.ПересчитатьИзВалютыВВалюту(СуммаВзаиморасчетов, ВалютаВзаиморасчетов,
			ВалютаДокумента,
			КурсВзаиморасчетов,КурсДокумента,
			КратностьВзаиморасчетов,КратностьДокумента)
Показать
6. Airat116 12.10.21 14:34 Сейчас в теме
(4) Понял, сейчас посмотрю
7. parker_j 12.10.21 14:35 Сейчас в теме
(5) Предложение из (4) лучший вариант (искать готовые процедуры).
А в целом да, вам нужно запросом получить курс и умножить на цену.
8. parker_j 12.10.21 14:38 Сейчас в теме
(5)

Доллары = Справочники.Валюты.НайтиПоНаименованию("USD");
Отбор = Новый Структура;
Отбор.Вставить("Валюта", Доллары);
Курсы = РегистрыСведений.КурсыВалют;
ТекКурс = Курсы.ПолучитьПоследнее(ТекущаяДата(), Отбор);
Сообщить("Текущий курс доллара: " + ТекКурс.Курс + " руб.");
9. Airat116 12.10.21 14:40 Сейчас в теме
Мне для отчёта это нужно, а там запросы не такие большие, не хотелось бы весь отчёт переделывать, постараться максимально меньше доработок внести
10. Airat116 12.10.21 14:43 Сейчас в теме
Вроде бы разобрался, спасибо всем большое=)
Оставьте свое сообщение

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