Содержание:
1. Методы менеджера регистра сведений.
При использовании технологии хранения информации в базе данных, иногда требуется не только знать актуальную информацию на данный момент, но и то какое значение было актуальным в определенное время. Поэтому в данной статье мы поговорим о периодических регистрах сведений, которые обеспечивают именно эту возможность.
Для более предметного рассмотрения на примерах будет использоваться регистр “ЦеныНоменклатуры”, но это же применимо и к другим периодическим регистрам сведений. Прежде всего, необходимо понимать, что такое измерения, и что такое ресурсы.
Измерения – это то, в разрезе чего хранится информация. То есть в данном случае мы смотрим цены в разрезе номенклатуры и типов цен. Соответственно, номенклатура и тип цен являются измерениями.
Ресурсы непосредственно хранят интересующую нас информацию. Мы хотим знать цену для определенной номенклатуры. Следовательно, цена – это ресурс.
Помимо этого, надо понимать, что такое периодичность. Именно эта возможность регистра сведений позволяет хранить не только фактическую информацию на данный момент, но и узнавать интересующие нас значения в разрезе времени.
Получить срез последних на дату из регистра сведений можно двумя способами: с помощью метода менеджера регистра сведений и с помощью запроса регистра сведений.
1. Методы менеджера регистра сведений
Результат = РегистрыСведений.ИмяРегистраСведений.СрезПоследних (<Конец периода>, <Отбор>);
Конец периода – Дата среза.
Отбор – отбор по измерениям регистра сведений (Структура).
Результат – Итог (Таблица значений)
Подобным образом работает метод:
Результат = РегистрыСведений.ИмяРегистраСведений.ПолучитьПоследнее (<Конец периода>, <Отбор>).
2. Запрос регистра сведений
Так как мы работаем с периодическим регистром сведений, у нас появляется возможность работать с двумя виртуальными таблицами: “СрезПервых” и “СрезПоследних”.
Таблицы СрезПервых и СрезПоследних
Соответственно, работая с ними, можно получить необходимую Вам информацию. Нас интересует “СрезПоследних”. При выведении данной виртуальной таблицы регистра с помощью запроса в результате будет последнее значение ресурса, принадлежащее измерению. Но, к примеру, нам необходимо узнать, какая цена была в конкретный день. В случае получения среза на дату необходимо указать в запросе дату. Дату в запросе указываем в параметрах виртуальной таблицы.
Как указать дату в запросе?
Таким образом меняя этот параметр можно выводить срез на разные даты. В дальнейшем можно вносить дополнительные настройки для конкретизации выводимых данных, но это уже другая история.
Зная вышеперечисленные способы, можно подобрать именно тот, который подходит именно под Вашу задачу или Ваш конкретный случай.
Специалист компании «Кодерлайн»
Романенков Марк