Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЦОО_ИСБУ_Лек1.doc
Скачиваний:
5
Добавлен:
01.07.2025
Размер:
374 Кб
Скачать
☆

Описание менеджера регистра сведений

Объект РегистрСведенийМенеджер предоставляет доступ к действиям с конкретным регистром. Этот объект позволяет открыть нужную выборку с помощью методов Выбрать и ВыбратьПоРегистратору, создать новый набор записей, создать менеджер записи и ключ записи, через него можно получить форму и макет регист­ра сведений.

Пример 1:

РегКурсы = РегистрыСведений.КурсыВалют;

Выборка = РегКурсы.Выбрать();

Пример 2.

РегистрКурсыВалют = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();

РегистрКурсыВалют.Период = ДатаКурса;

РегистрКурсыВалют.Валюта = Валюта;

РегистрКурсыВалют.Курс = 1;

РегистрКурсыВалют.Кратность = 1;

РегистрКурсыВалют.Записать();

Пример 3.

Набор = РегКурсы.СоздатъНаборЗаписей();

ФормаСписка = РегКурсы.ПолучитьФормуСписка();

ОсновнойМакет = РегКурсы.ПолучитьМакет("Основной");

Объект РегистрСведенийМенеджер позволяет обращаться к «итогам» регистра. Под «итогами» непериодического регистра сведений понимаются значения ресурсов по заданным измерениям, а для периодических регистров сведений можно получить первое и последнее значение по указанным измерениям, а также срез первых и срез последних записей.

Для обращения к «итогам» регистра сведений применяются мето­ды Получить, ПолучитьПервое и ПолучитьПоследнее, СрезПервых и СрезПоследних, а также запросы . При получении среза первых и среза последних записей, как правило, не указывается одно или несколько измерений.

Метод Получить имеет два варианта синтаксиса:

• Для непериодических регистров сведений:

Получить(<структура>)

Структура должна содержать ключи, соответствующие именам измерений регистра (в произвольном порядке). В качестве значе­ний структуры передаются значения измерений, по которым сле­дует осуществлять отбор.

• Для периодических регистров сведений:

Получиъ{<Период>, <структура>)

где Период - это дата или момент времени, на который требует­ся получить значения ресурсов.

Метод Получить возвращает структуру, ключи которой совпада­ют с именами ресурсов, например:

РегКурсы = РегистрыСведений.КурсыВалют;

Отбор = Новый Структура("Валюта",ВыбВалюта);

СтруктураРесурсы = РегКурсы.Получить(ВыбДата, Отбор);

Сообщить(СтруктураРесурсы.Курс);

Сообщить(СтруктураРесурсы.Кратность);

Если записи с такой комбинацией измерений и периода (для пе­риодических регистров) не найдено, то в элементах структуры будут пустое значения.

Следующие методы применимы только для периодического реги­стра сведений:

• ПолучитьПервое,

• ПолучитьПоследнее,

• СрезПервых,

• СрезПоследних.

Метод ПолучитьПоследнее имеет следующий синтаксис:

ПолучитьПоследнее(<Конец периода>, <структура>)

Если он не находит запись в регистре по данной комбинации из­мерений точно на заданный период, то возвращается ближайшая более ранняя запись, например:

РегКурсы = РегистрыСведений.КурсыВалют;

Отбор = Новый Структура("Валюта",ВыбВалюта);

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

Сообщить(СтруктураРесурсы.Курс);

Сообщить{СтруктураРесурсы.Кратность);

Метод ПолучитьПервое действует аналогично методу

Получить­Последнее, за исключением того, что он получает наиболее ран­ние значения ресурсов по отношению к заданной дате или момен­ту времени.

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

РегКурсы = РегистрыСведений.КурсыВалют;

тзКурсыВалютНаДату = РегКурсы.СрезПоследних(ВыбДата);

Метод СрезПоследних позволяет задать отбор по измерениям регистра с помощью второго параметра, имеющего тип Структу­ра. В переданной структуре должны содержаться те измерения, по которым должны быть отфильтрованы записи. В каждом элементе структуры задается имя и значение отбора.

Например, следующая программа получает последние актуальные цены по товарам заданного конкурента:

РегЦены = РегистрыСведений.ЦеныКонкурентов;

Отбор = Новый Структура{"Конкурент", ВыбКонкурент);

тзЦеныКонкурента = РегЦены.СрезПоследних(ВыбДата,Отбор);

Метод СрезПервых действует аналогично методу СрезПослед­них, за исключением того, что он выбирает срез наиболее ранних записей по отношению к заданной дате или моменту времени.

Для извлечения данных из регистров сведений могут также при­меняться запросы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]