Регистры сведений

В пакете Общие::КурсыВалют определен периодический регистр сведений КурсыВалют (подробнее).

Совет: Чтобы открыть этот файл нажмите Открыть в текстовом редакторе в контекстном меню регистра сведений Общие::КурсыВалют::КурсыВалют.

Использование во встроенном языке

В общем модуле Общие::КурсыВалют::КурсыВалютСервер демонстрируется:
  • Добавление записей в регистр сведений — метод ЗагрузитьКурсыВалюты();
    /**
      Описание:
        Загружает курсы валют из справочника Валюты за заданный период
      Параметры:
        НачалоПериода - дата начала периода загрузки
        КонецПериода - дата конца периода загрузки
     */
    @проект
    метод ЗагрузитьКурсыВалют(НачалоПериода: Дата, КонецПериода: Дата)
        знч МассивВалют = Валюты.ПолучитьВсе()
        для Валюта из МассивВалют
            попытка
                ЗагрузитьКурсыВалюты(Валюта, НачалоПериода, КонецПериода)
            поймать Искл: ОшибкаЗагрузкиКурсовВалют
                знч Событие = новый ОписаниеСобытия(Искл)
                Событие.УстановитьСвойство("Описание", "Не удалось загрузить курсы для валюты ${Валюта}")
                ЖурналСобытий.Зарегистрировать(Событие)
            ;
        ;
    ;
  • Запрос к виртуальной таблице среза последних (подробнее) — метод ПолучитьКурсВалюты().
    /**
      Описание:
        Получение курса валюты на дату
      Параметры:
        Валюта - валюта, курс которой требуется получить
        ДатаКурса - дата, на которую требуется получить курс
      Возвращает:
        Структура КурсВалюты или Неопределено, если курс не установлен  
     */
    @проект
    метод ПолучитьКурсВалюты(Валюта: Валюты.Ссылка, ДатаКурса: Дата): КурсВалюты?
        знч Запрос = Запрос{
            ВЫБРАТЬ
                КурсыВалютСрезПоследних.Валюта КАК Валюта,
                КурсыВалютСрезПоследних.Период КАК Период,
                КурсыВалютСрезПоследних.Курс КАК Курс,
                КурсыВалютСрезПоследних.Кратность КАК Кратность
            ИЗ 
                КурсыВалют.СрезПоследних(%ДатаКурса) КАК КурсыВалютСрезПоследних
            ГДЕ
                КурсыВалютСрезПоследних.Валюта == %Валюта}
        
        для СтрокаРезультата из Запрос.Выполнить()
            знч Курс = новый КурсВалюты()
            Курс.Валюта = СтрокаРезультата.Валюта
            Курс.Период = СтрокаРезультата.Период
            Курс.Курс = СтрокаРезультата.Курс 
            Курс.Кратность = СтрокаРезультата.Кратность
        
            возврат Курс
        ;
        
        возврат Неопределено
    ;

Совет: Чтобы открыть этот файл нажмите на модуль Общие::КурсыВалют::КурсыВалютСервер.

Форма

Для регистра установлена форма объекта, относящаяся к записи регистра, и форма списка — КурсыВалютФормаОбъекта и КурсыВалютФормаСписка, соответственно.

Основная и присоединенные таблицы списков

Таблицы регистра сведений могут быть использованы в динамическом списке в качестве основных или присоединенных таблиц. Например, в форме Общие::КурсыВалют::КурсыВалютФормаСписка в динамическом списке выводятся данные основной таблицы регистра.

Совет: Чтобы открыть этот файл нажмите Открыть в текстовом редакторе в контекстном меню компонента интерфейса Общие::КурсыВалют::КурсыВалютФормаСписка.

В то же время в форме Общие::КурсыВалют::ВалютыФормаСписка к основной таблице динамического списка присоединяется виртуальная таблица КурсыВалют.СрезПоследних.

Совет: Чтобы открыть этот файл нажмите Открыть в текстовом редакторе в контекстном меню компонента интерфейса Общие::КурсыВалют::ВалютыФормаСписка.