В начало

Договоры с валютой взаиморасчетов

 

            Есть справочник «Договоры», необходимо выводить в нем валюту взаиморасчетов и ее курс на текущий день из регистра сведений «КурсыВалют».

            Переходим в дереве объектов конфигуратора в раздел «Реквизиты» справочника «Договоры» и добавляем новый реквизит «ВалютаВзаиморасчетов». Далее переходим на форму справочника «Договоры» и создаем реквизит формы «Курс» с типом «Число» и точностью 10:4. Перетаскиваем их на форму и помещаем в группу для удобства.

Рис. 1. Форма справочника «Договоры»

Рис. 1. Форма справочника «Договоры»

 

            После этого переходим в модуль формы и немного кодим, а именно создаем 1 функцию и  2 процедурки. Функция нужна для получения собственно самого курса, а процедуры – это события, которые будем отслеживать:

ПриСозданииНаСервере для формы (срабатывает при открытии формы);

ПриИзменении для валюты взаиморасчетов (срабатывает при выборе типа валюты).

 

Листинг 1. Модуль формы

&НаСервереБезКонтекста

Функция ПолучитьКурс(Валюта)

      Отбор = Новый Структура;

      Отбор.Вставить("Валюта", Валюта);

     

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

      Возврат Данные.Курс;

КонецФункции

 

&НаКлиенте

Процедура ВалютаВзаиморасчетовПриИзменении(Элемент)

      Курс = ПолучитьКурс(Объект.ВалютаВзаиморасчетов);

КонецПроцедуры

 

&НаСервере

Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)

      Курс = ПолучитьКурс(Объект.ВалютаВзаиморасчетов);

КонецПроцедуры

           

Теперь можно запуститься в режиме «1С:Предприятие» и посмотреть результат. При выборе валюты взаиморасчета будет выведен ее курс из регистра сведений «КурсыВалют» на текущую дату.

Рис. 2. Справочник «Договоры» в режиме «1С:Предприятие»

Рис. 2. Справочник «Договоры» в режиме «1С:Предприятие»

 

ПРИМЕЧАНИЕ: данный код проверен на платформе «1С:Предприятие 8.3».