Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие.doc
Скачиваний:
461
Добавлен:
19.03.2016
Размер:
3.91 Mб
Скачать

5.2. Программные объекты справочников

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

Работа со справочниками из программы производится с помощь нескольких объектов. Каждый объект имеет свое назначение, собственные свойства и методы. Ниже описываются эти объекты и взаимосвязи между ними:

СправочникиМенеджер обеспечивает доступ ко всем справочникам конфигурации. Свойства этого объекта совпадают с именами справочников и содержат объекты типа СправочникМенеджер.

СправочникМенеджер обеспечивает доступ к операциям над справочником как множеством элементов. Через методы этого объекта можно осуществлять поиск, получать выборку, создавать новые элементы или группы, обращаться к формам и макетам справочника. Например: Справочники.ФизическиеЛица.

СправочникСсылка. Данный объект однозначно идентифицирует элемент (группу) справочника и позволяет обращаться к нему в режиме «только чтение». Через свойства и методы этого объекта можно прочитать реквизиты элемента (группы), обратиться к его табличным частям. Значение этого типа хранится в реквизитах, ссылающихся на элементы данного справочника, например, в реквизите Сотрудник документа ПриемНаРаботу хранится ссылка на конкретный элемент справочника Сотрудники.

СправочникОбъект. Предоставляет доступ к элементу с возможностью записи. Данный объект содержит методы, влияющие на элемент в базе данных, например, методы Записать и Удалить.

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

СправочникСписок. Объект для управления списком элементов в табличном поле. Позволяет управлять колонками, отбором и сортировкой в списке.

Из одних объектов с помощью определенных методов или свойств можно получить другие объекты, как показано на рис. 5.1.

Рис. 5.1. Взаимосвязь объектов для работы со справочниками

На схеме показаны не все возможные взаимосвязи. Например, метод Скопировать существует не только у объекта СправочникСсылка, но и у самого объекта СправочникОбъект.

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

Пример 1

Пример 2

5.3. Подчиненные справочники

Механизм подчиненных справочников обеспечивает взаимосвязь между элементами двух справочников. При этом используется типовое отношение связанных таблиц БД «один ко многим». Один справочник является главным, один подчиненным. Одной записи главного справочника могут соответствовать одна или несколько записей подчиненного справочника. Обратное неверно.

При создании таких отношений используется специальное поле, присутствующее в таблице любого справочника. Это поле Владелец (тип данных СправочникСсылка) – ссылка на элемент справочника-владельца, который является главным по отношению к этому элементу подчиненного справочника. Таким образом, в записи подчиненного справочника хранится ссылка на запись главного справочника (рис. 5.2).

С точки зрения пользователя механизм подчиненных справочников не отличается от обычных табличных частей: при работе с формой элемента главного справочника пользователь работает с элементом управления Табличное поле в котором отображается список записей, доступных только в этом элементе.

Рис. 5.2