Контекст работы со справочниками
Справочники – это агрегатный тип данных, средство для работы со списками однородных элементов данных. При помощи справочников организуется ввод стандартной информации в документы, а также ее просмотр и, если необходимо, корректировка. В большинстве своем справочники являются электронными аналогами каталогов. Каждая карточка – это строка справочника, а сведения, заносимые в карточку, являются реквизитами справочника.
Например, для того, чтобы покупатель, продавец, кладовщик, директор однозначно понимали, о каком товаре идет речь, каждый должен называть его одинаково, т. е. в соответствии с однажды утвержденным справочником товаров. Обычно в торговом предприятии он имеет вид прайс-листа, а если такой справочник товаров хранится в компьютере, то в него заносят всю возможную номенклатуру товаров, с которыми работает торговая фирма.
Название и структура каждого конкретного справочника определяется при его создании в конфигураторе. У любого справочника существует два обязательных реквизита, которые создаются автоматически – "Код" и "Наименование". Другие реквизиты справочника, которые могут содержать различную дополнительную информацию помимо наименования, определяются в конфигураторе конкретно для каждого создаваемого справочника.
Реквизиты справочников могут быть периодическими или нет (это задается в конфигураторе при создании реквизита). Периодические реквизиты – это реквизиты, значения которых связаны с датой. При изменении значения периодического реквизита старое значение сохраняется, при этом новое значение действует с указанной даты, а старое – до указанной даты. Работа с периодическими реквизитами осуществляется при помощи методов Получить и ИспользоватьДату, а также при помощи специального агрегатного типа данных – Периодический.
Система 1С:Предприятие дает возможность создавать и использовать многоуровневые справочники. Количество уровней вложенности конкретного справочника устанавливается в конфигураторе. Кроме того, справочникам можно указывать их подчиненность другим справочникам, образовывая таким образом связи типа "один ко многим".
В синтаксисе языка обращение к атрибутам, а также вызов методов справочников зависит от контекста выполнения программного модуля.
Если конкретный элемент или группа справочника входит (согласно локального контекста) в набор непосредственно доступных модулю значений агрегатных типов данных (см. "Виды программных модулей"), то обращение к атрибуту, вызов метода для этого элемента или группы справочника – просто имя этого атрибута или метода с указанием необходимых параметров.
Пример:
В форме редактирования элемента справочника "Сотрудники" мы имеем непосредственный доступ к текущему элементу (сотруднику) справочника. Значит, чтобы изменить имя текущего сотрудника, просто укажем:
Наименование = "Сидоров С.С.";
Значение элемента или группы справочника может быть получено из других источников, например как реквизит какого-либо документа. Чтобы получить доступ к атрибуту, вызвать метод такой переменной со значением типа "Справочник", имя этого атрибута, метода (с указанием необходимых параметров) пишется через точку после имени реквизита.
Пример:
Если в документе значение реквизита "Сотрудники" имеет тип "Справочник", имя сотрудника можно узнать следующим образом:
ИмяСотр = Док.Сотрудники.Наименование;
В других случаях доступ к атрибутам, вызов методов конкретного элемента или группы справочника происходит при помощи переменной со ссылкой на объект типа "Справочник". Объект создается функцией СоздатьОбъект, ссылка на который присваивается переменной. Чтобы вызвать атрибут или метод объекта, имя этого атрибута, метода (с указанием необходимых параметров) пишется через точку после имени переменной.
При создании переменной со ссылкой на объект типа "Справочник" в качестве имени справочника должно выступать полное название конкретного вида справочника, как он объявлен в конфигураторе. Вид справочника записывается через точку после ключевого слова " Справочник", т. е. полное имя справочника записывается следующим образом:
Справочник.Имя_Справочника
…где <Имя_Справочника> – название справочника, определенное в конфигураторе.